User Tools

Site Tools

Trace:

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
bare_metal [2015/11/29 18:57]
Traumflug [What is 'Bare Metal'?]
bare_metal [2018/05/27 16:10] (current)
Line 23: Line 23:
  
 ======Strategies====== ======Strategies======
 +
 +People typically create a bare-metal application on a PC with a cross-compiler such as a [[compiler for arm]], and then transfer the executable to the target hardware using a bootloader such as the [[LPC1114 Bootloader]].
  
 Compilers usually support building for bare metal, but need additional parameters, like ''​--no-std-inc''​ and/or ''​--no-std-lib''​. Compilers usually support building for bare metal, but need additional parameters, like ''​--no-std-inc''​ and/or ''​--no-std-lib''​.
Line 29: Line 31:
  
 Precompiler-optimisations. It's a good idea to let the precompiler do one-time calculations as much as possible. Then only the result is stored in the binary, saving the calculation effort at runtime. [[Teacup Firmware]] uses this strategy a lot, making it about double as fast and half as big as compareable printing firmwares. Precompiler-optimisations. It's a good idea to let the precompiler do one-time calculations as much as possible. Then only the result is stored in the binary, saving the calculation effort at runtime. [[Teacup Firmware]] uses this strategy a lot, making it about double as fast and half as big as compareable printing firmwares.
 +
bare_metal.1448819844.txt.gz ยท Last modified: 2018/05/27 16:10 (external edit)