Changes between Version 59 and Version 60 of boot_procedure
- Timestamp:
- Mar 5, 2019, 6:25:09 PM (6 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
boot_procedure
v59 v60 218 218 === D10) Process init creation === 219 219 220 The core[0] in cluster[0] creates (i.e. allocates memory, and initializes) the process descriptor for the first user process. This includes the VMM initialization (both the user GPT and VSL inherits relevant informations from the kernel GPT and VSL).220 The core[0] in cluster[0] creates (i.e. allocates memory, and initializes) the process descriptor for the first user process. This includes the VMM initialization : the user process GPT and VSL inherits relevant informations from the kernel process GPT and VSL. 221 221 222 222 The core[0] in cluster[0] displays the ALMOS-MK banner. 223 223 224 A last synchronization barrier is used before jumping to idle_thread function 225 226 === D11) Enter idle_thread === 227 228 Finally, each core enables its private timer IRQ to activate its private scheduler, and jump to the idle_thread code, 229 that contains an infinite loop waiting for an useful thread to be scheduled. 224 A last synchronization barrier is used before jumping to the idle_thread() function. 225 226 === D11) Scheduler activation === 227 228 Finally, all cores make the three following actions: 229 * initialise the registers, defining the kernel entry point(s) in case of interrupt, exception or system call. 230 * set the TICK timer, and unmask interrupts to activate the scheduler. 231 * jump to the idle_thread() function, and wait for an useful thread to be scheduled.