Difference between revisions of "EBC Listings for Embedded Linux Primer"
m (Added 2-2 and 2-3) |
(Added 2-4) |
||
Line 43: | Line 43: | ||
| Linux Final Boot Messages | | Linux Final Boot Messages | ||
| <pre> | | <pre> | ||
+ | </pre> | ||
+ | |- | ||
+ | | 2-4 | ||
+ | | | ||
+ | | Hello World, Embedded Style | ||
+ | | <pre> | ||
+ | #include <stdio.h> | ||
+ | |||
+ | int bss_var; /* Uninitialized global variable */ | ||
+ | |||
+ | int data_var = 1; /* Initialized global variable */ | ||
+ | |||
+ | int main(int argc, char **argv) | ||
+ | { | ||
+ | void *stack_var; /* Local variable on the stack */ | ||
+ | |||
+ | stack_var = (void *)main; /* Don't let the compiler */ | ||
+ | /* optimize it out */ | ||
+ | |||
+ | printf("Hello, World! Main is executing at %p\n", stack_var); | ||
+ | printf("This address (%p) is in our stack frame\n", &stack_var); | ||
+ | |||
+ | /* bss section contains uninitialized data */ | ||
+ | printf("This address (%p) is in our bss section\n", &bss_var); | ||
+ | |||
+ | /* data section contains initializated data */ | ||
+ | printf("This address (%p) is in our data section\n", &data_var); | ||
+ | |||
+ | return 0; | ||
+ | } | ||
</pre> | </pre> | ||
|} | |} |
Revision as of 11:01, 3 March 2010
Here are the listing from the Embedded Linux Primer as done on the Beagle.
Chapter 2
Number | Page | Caption | Listing |
---|---|---|---|
2-1 | Initial Bootloader Serial Output | Texas Instruments X-Loader 1.4.2 (Feb 19 2009 - 12:01:24) Reading boot sector Loading u-boot.bin from mmc U-Boot 2009.11-rc1 (Jan 08 2010 - 21:19:52) OMAP3530-GP ES3.1, CPU-OPP2 L3-165MHz OMAP3 Beagle board + LPDDR/NAND I2C: ready DRAM: 256 MB NAND: 256 MiB In: serial Out: serial Err: serial Board revision C4 Die ID #5444000400000000040365fa1400e007 Hit any key to stop autoboot: 0 OMAP3 beagleboard.org # | |
2-2 | Loading the Linux Kernel | ||
2-3 | Linux Final Boot Messages | ||
2-4 | Hello World, Embedded Style | #include <stdio.h> int bss_var; /* Uninitialized global variable */ int data_var = 1; /* Initialized global variable */ int main(int argc, char **argv) { void *stack_var; /* Local variable on the stack */ stack_var = (void *)main; /* Don't let the compiler */ /* optimize it out */ printf("Hello, World! Main is executing at %p\n", stack_var); printf("This address (%p) is in our stack frame\n", &stack_var); /* bss section contains uninitialized data */ printf("This address (%p) is in our bss section\n", &bss_var); /* data section contains initializated data */ printf("This address (%p) is in our data section\n", &data_var); return 0; } |