Quello che avviene è una procedura derivata da sistemi System IV; tale procedura si articola in più parti, andiamo ad analizzarle. Premuto il tasto di accensione sul case, parte il BIOS (Basic Input Output System) che è un programma scritto in maniera permanente sulla EPROM che è una memoria di sola lettura riprogrammabile. Questo programma come prima operazione effettua delle operazioni di diagnostica sull'hardware presente nel sistema, poi lo "setta" in alcune modalità standard suportante da qualunque dispositivo. Fatto ciò il suo lavoro sarebbe terminato, deve solo trovare un valido dispositivo che contenga la routine di caricamento del sistema operativo; questa ricerca avviene in modo sequenziale secondo una priorità che è possibile impostare all'interno del bios (A,C,SCSI oppure C,A,CDROM ecc...). Vediamo però cosa cerca di preciso, ovvero quelle "routine" a cui facevo riferimento prima.
Il BIOS controlla la "traccia zero" o MBR (Master Boot Record) dei dispositivi di "memoria" ,(generalmente floppy, hd, cdrom, oggi anche usbdriver ma quì non è la traccia zero ad essere controllata ma la locica è la stessa), che in 512 byte contiene la tabella delle partizioni del disco (FAT, File Allocation Table) e le istruzioni necessarie per caricare il [/B]Boot Loader[/B], ovvero quel programma che si occupa di caricare le "parti fondamentali" del sistema operativo nella memoria RAM. Una volta trovata un MBR valido il BIOS esegue le istruzioni che dovranno caricare in memoria il boot Loader e da questo momento in poi esce di scena e termina la cosidetta fase di Bootstrap (comune a tutti i sistemi).
Vi sono diversi Boot Loader i più "famosi" per i sistemi Unix-like sono sicuramente GRUB (che è anche il più recente) e LILO (Linux Loader è quello "storico"). La prima operazione che fa questo programma è il verificare se vi sono più di un sistema operativo installato sulla macchina, in questo caso dovrà permettere la scelta di avviare uno di essi; ora se decidiamo di aviare linux il Boot Loader dovrà cercare nella directory di /boot (precedentemente montata) l'immagine del kernel e caricarlo in memoria. Oltre all'immagine del kernel, viene caricata in memoria anche l'immagine RAM disk chiamata initrd ed utilizzata dal kernel per caricare in memoria tutti i moduli non compilati all'interno dello stesso e in genere tutto ciò che è necessario per avviare il sistema.
Da questo momento il Boot Loader lascia il controllo della macchina al Kernel (praticamente al Sistema Operativo). Una delle prime cose che fa il kernel è quella di "portare" il processore da un "comportamento" in modalità reale ad uno in modalità protetta. In modalità protetta non è possibile accedere direttamente alla memoria e all'hardware del PC ma è necessario utilizzare delle chiamate del sistema operativo; questo per evitare che gli applicativi utente vadano a scrivere in zone di memoria riservate al sistema operativo stesso.
Dopo questa importante operazione, il kernel configura tutto l'hardware del sistema, crea delle tabelle per la gestione della modalita' protetta, del multitasking, degli interrupt e della memoria virtuale, decomprime l'immagine initrd e la monta e procede con il caricare tutti i driver necessari.Dopo ciò procede con il smontare l'immagine dell'initrd, monta la partizione di root in sola lettura e libera la memoria. Durante questa fase di verifiche e di configurazioni, il kernel controlla quanti e quali "parti" o dispositivi sono presenti. Tutte queste informazioni vengono visualizzate sul video.
Ora occorre configurare l'ambiente utente e per fare ciò il kernel carca in memoria ed esegue un ulteriore programma, init che si occupa di inizializzare il lato software della machina, esso è il primo processo attivato, avrà dunque PID (Process IDentifier, numero progressivo assegnato ad ogni processo) pari ad 1. Init come prima cosa utilizzerà inittab per "avviare" i runLevel terminerà lasciando la macchina nel runlevel di dafault.