Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
bare_metal [2015/11/29 18:57] – [What is 'Bare Metal'?] Traumflug | bare_metal [2018/05/27 16:10] (current) – external edit (unknown user) | ||
---|---|---|---|
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 '' | Compilers usually support building for bare metal, but need additional parameters, like '' | ||
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)