Changes between Version 29 and Version 30 of boot_loader
- Timestamp:
- Feb 17, 2016, 5:59:14 PM (9 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
boot_loader
v29 v30 11 11 12 12 After hard reset, all processors execute the same ''reset'' code (also called ''preloader'' code) stored in the external ROM. The work done depends on the processor global index: 13 * Processor P(0,0,0) loads the GIET_VM boot-loader code from the external block device, to the physical memory bank in cluster(0,0). It load the two segments seg_boot_code and seg_boot_data from the ''boot.elf'' file. This ''boot.elf'' file must be stored at (lba = 2) on the external block device. The two first BPPs (Big Physical Page) in cluster (0,0) are reserved for the four segments used by the boot-loader: ''seg_boot_mapping'', ''seg_boot_code'', ''seg_boot_stack'', and ''seg_boot_data'', and the base addresses ans sizes defined in the mapping must fit in these reserved 4 Mbytes.13 * Processor P(0,0,0) loads the GIET_VM boot-loader code from the external block device, to the physical memory bank in cluster(0,0). It load the two segments seg_boot_code and seg_boot_data from the ''boot.elf'' file. This ''boot.elf'' file must be stored at (lba = 2) on the external block device. The first 4 Mbytes in cluster (0,0) are reserved for the four segments used by the boot-loader (''seg_boot_mapping'', ''seg_boot_code'', ''seg_boot_stack'', and ''seg_boot_data''), and the base addresses ans sizes defined in the mapping must fit in these reserved 4 Mbytes. 14 14 * All other processors initialize their private interrupt controller, to be able to receive an inter-processor interrupt (WTI), and enter the ''wait_state'', in low-power mode. 15 15 This ''reset'' code is generic, and can be used to boot any operating system. … … 33 33 In each cluster(x,y), processor P(x,y,0) makes the physical memory allocator initialisation (function '''boot_pmem_init()''' ). The GIET VM uses two types of pages: BPP (Big Physical Page, 2 Mbytes), and SPP (Small Physical Page, 4 Kbytes). 34 34 There is one SPP and one BPP allocator per cluster containing a physical memory bank. 35 All the physical memory allocation must bedone by the boot-loader in the boot phase, and these memory allocators35 All the physical memory allocation is done by the boot-loader in the boot phase, and these memory allocators 36 36 should not be used by the kernel in the execution phase. 37 37