bare metal

( n.)

   1.  [common]  New  computer  hardware, unadorned with such snares and
   delusions  as  an  {operating  system},  an {HLL}, or even assembler.
   Commonly  used  in  the  phrase  programming on the bare metal, which
   refers  to  the  arduous work of {bit bashing} needed to create these
   basic  tools  for a new machine. Real bare-metal programming involves
   things  like  building  boot proms and BIOS chips, implementing basic
   monitors used to test device drivers, and writing the assemblers that
   will  be  used to write the compiler back ends that will give the new
   machine a real development environment.

   2.  "Programming  on the bare metal" is also used to describe a style
   of  {hand-hacking}  that  relies  on  bit-level  peculiarities  of  a
   particular   hardware   design,  esp.  tricks  for  speed  and  space
   optimization  that  rely  on  crocks such as overlapping instructions
   (or,  as  in  the  famous  case  described  in  The Story of Mel' (in
   Appendix  A),  interleaving of opcodes on a magnetic drum to minimize
   fetch  delays  due  to the device's rotational latency). This sort of
   thing  has  become rare as the relative costs of programming time and
   machine  resources  have  changed,  but  is  still  found  in heavily
   constrained  environments  such  as  industrial embedded systems. See
   {Real Programmer}.

[glossary]
[Reference(s) to this entry by made by: {ill-behaved}{nude}{Real Programmer}]