Changes between Version 58 and Version 59 of WikiStart
- Timestamp:
- Nov 5, 2014, 3:02:50 PM (10 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
WikiStart
v58 v59 11 11 == __A) [wiki:mapping_info Mapping]__ == 12 12 13 Both the target hardware architecture and the mapping directives (placement of software tasks on the physical processors / placement of the software objects on the physical memory banks) must be described in a python script. This section describes the Python constructs used to describe the mapping. This python script generates the ''map.bin'' C binary file, that is used by the boot loader to iniialise the system.13 Both the target hardware architecture and the mapping directives (placement of software tasks on the physical processors / placement of the software objects on the physical memory banks) must be described in a python script. This section describes the Python constructs used to describe the mapping. This python script generates the ''map.bin'' C binary file, that is used by the boot-loader to initialise the system. 14 14 15 15 == __B) [wiki:boot_loader Boot-loader]__ == 16 16 17 The GIET_VM bootloader load the ''map.bin'' file, build the page tables as specified in the mapping (one page table per virtual space), activates the MMU for all processors, initializes the distributed schedulers (one scheduler per processor), initializes the external (non replicated) peripherals, and load the kernel code, as well as the user application(s) code. 17 The boot-loader code is loaded in the physical memory bank of cluster(0,0) by the generic ''reset'' code (hard-coded in the external ROM). 18 The boot-loader load the ''map.bin'' file, build the page tables as specified in the mapping (one page table per virtual space), activates the MMU for all processors, initializes the distributed schedulers (one scheduler per processor), initializes the external (non replicated) peripherals, and load the kernel code, as well as the user application(s) code. 19 When this is done, each processor jumps to the GIET_VM ''kernel_init()'' function that completes the kernel initialisation. 18 20 19 21 == __C) [wiki:kernel_init Kernel Initialisation]__ ==