1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
1.2 +++ b/docs/wiki/Library--payload Tue Jun 11 16:49:23 2019 +0200
1.3 @@ -0,0 +1,14 @@
1.4 += Payload Initialisation =
1.5 +
1.6 +The `lib/payload.c` file contains routines for completing the basic
1.7 +initialisation of a payload before any application main program can be
1.8 +invoked. These routines are called by the [[../start|start-up]] routine but
1.9 +are implemented in C for convenience.
1.10 +
1.11 + `init_bss` :: Initialises the `.bss` section of the payload so that
1.12 + uninitialised global and static variables have a well-defined
1.13 + initial value of zero.
1.14 +
1.15 + `relocate_data` :: Copies the contents of the payload's `.data` section to
1.16 + writable memory so that mutable data structures can be
1.17 + modified.