Raspberry Pi Bare Bones: Difference between revisions
[unchecked revision] | [unchecked revision] |
Content deleted Content added
m →Freestanding and Hosted Environments: Removed reference to VGA driver, which is not relative to this platform. |
|||
Line 214:
=== Freestanding and Hosted Environments ===
If you have done C or C++ programming in user-space, you have used a so-called Hosted Environment. Hosted means that there is a C standard library and other useful runtime features. Alternatively, there is the Freestanding version, which is what we are using here. Freestanding means that there is no C standard library, only what we provide ourselves. However, some header files are actually not part of the C standard library, but rather the compiler. These remain available even in freestanding C source code. In this case we use <stddef.h> to get size_t & NULL and <stdint.h> to get the intx_t and uintx_t datatypes which are invaluable for operating systems development, where you need to make sure that the variable is of an exact size (if we used a short instead of uint16_t and the size of short changed, our
=== Writing a kernel in C ===
|