Procesul de startup Linux
Linux startup process este procesul prin care sistemul de operare Linux se inițializează. Este în mare parte similar cu procesul de startup pentru BSD sau alte moduri de boot Unix, din care este și derivat.
Rezumatul procesului
modificareÎn Linux, fluxul de control este de la BIOS, spre boot-loader și apoi spre kernel. Apoi kernelul porneste "task scheduler" (pentru a permite programe multi tasking) si rulează prima data scriptul de Init pentru logarea userilor. In acest moment kernelul intra in asteptare pana cand este apelat.
Detaliat:
- BIOS-ul execută sarcinile de startup specifice platformei hardware
- Odata ce platforma hardware este recunoscuta si a pornit corect, BIOS-ul incarca si executa codul de boot al partitiei din dispozitivul alocat pentru boot, care contine faza 1 a boot-loader-ului Linux. Faza 1 incarca faza 2 (partea principala a codului de boot). Unele boot-load-ere mai utilizeaza si o faza intermediară pentru a realiza boot-area (cunoscuta ca faza 1.5) îintrucât dicurile moderne de dimensiuni mari nu pot functiona la randament maxim fara niște cod in plus.
- Adeseori boot-loader-ul prezintă userului un meniu cu opțiuni de boot. Apoi incarca sistemul de operare, care incarca in memorie sistemul de operare, și setează funțiile sistemului ca de exemplu modulele hardware esentiale si maparea memoriei, înainte să apeleze
start_kernel()
. - Apoi
strat_kernel()
încarcă majoritatea setarilor sistemului (intreruperi, restul managementului memoriei, inițializarea device-urilor, driverele, etc) dupa care porneste separat, procesul de asteptare si de programare a evenimentelor, si (care este executat in spatiul userului)
Vezi și
modificareNote
modificare
Referințe
modificare- Greg O'Keefe - From Power Up To Bash Prompt Arhivat în , la Wayback Machine.
- IBM description of Linux boot process a developerWorks article by M. Tim Jones