Processo di boot Linux su un PC x86 : il Bootstrap. http://www.imolug.org/wiki/index.php/bootstrap

Documenti analoghi
Avvio di UNIX. Lettura GRUB (Grand Unified Boot loader) in genere risiede nel MBR (stage1) e legge le informazioni nel file /boot/grub.

Corso base GNU/Linux Latina Linux Group. Sito web: Mailing list:

Il Software. Il software del PC. Il BIOS

Software di base. Corso di Fondamenti di Informatica

FoLUG Forlì Linux User Group. Partizionamento

Sistema Operativo di un Router (IOS Software)

Partizionamento del disco

Installazione LINUX 10.0

Organizzazione della memoria

Il Software e Il Sistema Operativo. Prof. Francesco Accarino IIS Altiero Spinelli A.S. 09/10

Acronis Universal Restore

11/02/2015 MANUALE DI INSTALLAZIONE DELL APPLICAZIONE DESKTOP TELEMATICO VERSIONE 1.0

Definizione Parte del software che gestisce I programmi applicativi L interfaccia tra il calcolatore e i programmi applicativi Le funzionalità di base

Software relazione. Software di base Software applicativo. Hardware. Bios. Sistema operativo. Programmi applicativi

Il Sistema Operativo (1)

Sistemi embedded un dispositivo incapsulato progettato per una determinata applicazione

I componenti di un Sistema di elaborazione. Memoria centrale. È costituita da una serie di CHIP disposti su una scheda elettronica

Architettura del Personal Computer AUGUSTO GROSSI

MANUALE D USO MA-PMX-U-SFW

In un modello a strati il SO si pone come un guscio (shell) tra la macchina reale (HW) e le applicazioni 1 :

PARTE 4 La Macchina Software

FPf per Windows 3.1. Guida all uso

STRUTTURE DEI SISTEMI DI CALCOLO

Laboratorio di Informatica

INSTALLAZIONE DMS - DENTAL MANAGEMENT SYSTEM... 2 INSTALLAZIONE AGGIORNAMENTO... 4 CAMBIO COMPUTER SERVER... 6

Come installare Ubuntu Linux

Architettura dei computer

Capitolo 1 Installazione del programma

Guida all installazione degli Hard Disk SATA ed alla configurazione del RAID

Il File System di Linux

Il SOFTWARE DI BASE (o SOFTWARE DI SISTEMA)

Il Personal Computer

Linux Terminal Server Project (LTSP)

Introduzione alle tecnologie informatiche. Strumenti mentali per il futuro

1. opzione 1, ubuntu accanto a windows

Sistemi Operativi GESTIONE DELLA MEMORIA SECONDARIA. D. Talia - UNICAL. Sistemi Operativi 11.1

Sistemi Operativi. Memoria Secondaria GESTIONE DELLA MEMORIA SECONDARIA. Struttura del disco. Scheduling del disco. Gestione del disco

Nozioni di Informatica di base. dott. Andrea Mazzini

Corso di Informatica

Procedure di ripristino del sistema.

Sistemi Operativi. Interfaccia del File System FILE SYSTEM : INTERFACCIA. Concetto di File. Metodi di Accesso. Struttura delle Directory

Materiali per il modulo 1 ECDL. Autore: M. Lanino

INTRODUZIONE AI SISTEMI OPERATIVI

Conoscere i diversi tipi di memoria centrale presenti nel computer, quali: RAM (randomaccess memory), ROM (read-only memory)

Parte V. Sistemi Operativi & Reti. Sistemi Operativi. Sistemi Operativi

Gestione della memoria centrale

Puppy Linux (Precise) Live da CD o da USB (Si può usare su PC con 256 MB di RAM)

SETUP DEL BIOS E CARATTERISTICHE DI SICUREZZA

Risolvere i problemi di avvio di Windows XP

HARDWARE. Relazione di Informatica

Modulo 4: Gestore del File System (Memoria secondaria) Componenti

Il computer: primi elementi

Capitolo Silberschatz

Architettura di un sistema di calcolo

Modulo T Manuale della procedura di Ripristino

Drivers. Introduzione Tipologie Struttura Interazione con il kernel

MANUALE MOODLE STUDENTI. Accesso al Materiale Didattico

1.1 Installazione di ARCHLine.XP

login: so_2 password: idefix Sistemi operativi 1.2

Procedure di ripristino del sistema.

IL SOFTWARE. Giada Agostinacchio Classe 2^ Beat ISIS G.Meroni Lissone Anno Scolastico 2007/2008

Creare e ripristinare immagine di sistema con Windows 8

Appendice A. A.1 Reti basate su Linux e Windows NT. A.2 Procedura di gestione delle richieste web ed

Guida ripristino TokenUSB

GUIDA UTENTE MONEY TRANSFER MANAGER

5-1 FILE: CREAZIONE NUOVO DOCUMENTO

Memoria secondaria. Struttura del disco. Scheduling del disco. Gestione dell unità a disco. Affidabilità dei dischi: RAID

Struttura del Micro Filesystem (µfs)

IBM SPSS Statistics per Linux - Istruzioni di installazione (Licenza per sito)

Guida all installazione degli Hard Disk SATA ed alla configurazione del RAID

C. P. U. MEMORIA CENTRALE

Sequenza di avvio di Linux:

Il sistema di elaborazione

Laboratorio di Informatica di Base Archivi e Basi di Dati

Fattura Facile. In questo menù sono raggruppati, per tipologia, tutti i comandi che permettono di gestire la manutenzione degli archivi.

Approccio stratificato

Procedura di creazione di un set di dischi di ripristino del sistema.

Istruzioni di installazione di IBM SPSS Modeler Text Analytics (licenza per sito)

SISTEMI DI ELABORAZIONE DELLE INFORMAZIONI

e/fiscali - Rel e/fiscali Installazione

All interno del computer si possono individuare 5 componenti principali: SCHEDA MADRE. MICROPROCESSORE che contiene la CPU MEMORIA RAM MEMORIA ROM

Concetti base del computer

Kernel Linux (per sysadm)

Le Infrastrutture Software ed il Sistema Operativo

Istruzioni per l'aggiornamento del firmware degli SSD client Crucial

Modulo 3: Gestione delle Periferiche (Dispositivi di input/output)

Dispensa di Informatica I.1

Image&Partition Creator V3.3

Portable Ubuntu for Windows mini howto (diavoleria argentina)

Nastro magnetico. Gestione della memoria di massa. Disco magnetico. Disco magnetico. Usato in passato come dispositivo di memorizzazione secondaria

Il software: Istruzioni per il computer. I tre tipi di software di sistema. Compiti del sistema operativo

Sistemi Operativi STRUTTURA DEI SISTEMI OPERATIVI 3.1. Sistemi Operativi. D. Talia - UNICAL

Edizione 1 IT. Nokia e Nokia Connecting People sono marchi registrati di Nokia Corporation

NOZIONI ELEMENTARI DI HARDWARE E SOFTWARE

Corso: Informatica+ Andrea Cremonini. Lezione del 20/10/2014

FOXWave Gestione gare ARDF IZ1FAL Secco Marco Sezione ARI BIELLA

COMPETENZE INFORMATICHE DI BASE PER ADULTI

Il sistema operativo: interazione con l utente

jt - joetex - percorsi didattici

Lez. 5 Memorie Secondarie

Transcript:

Processo di boot Linux su un PC x86 : il Bootstrap http://www.imolug.org/wiki/index.php/bootstrap

Bootstrap Durante il processo di avvio i normali strumenti del sistema operativo non sono disponibili, quindi il computer deve riuscire a farcela da solo tirandosi su con le cinghie dei propri stivali.

Bootstrap

System Startup La fase di boot di Linux dipende dall'hardware su cui viene avviato; in alcune piattaforme viene utilizzato un'ambiente di bootstrap specifico, alcuni esempi : U-Boot : sta per Universal Bootloader, disponibile per diverse architetture tra cui PPC,ARM, X86 ecc...; è un software free rilasciato sotto licenza GPL. RedBoot : applicazione open source che permette il download e l'esecuzione di applicazioni embedded via serial o ethernet. Boot Monitor : è un piccolo programma interattivo che permette ad un utente di caricare un sistema operativo; risiede in ROM o in una locazione ben conosciuta su un disco; permette all'utente di ispezionare e fare il setup dell'hardware; tra i più famosi troviamo il BIOS, ma ci sono anche Open Firmware e Micromonitor

System Startup - BIOS Esistono BIOS, oltre che per il PC, anche per : Schede video Controller RAID Schede SCSI Schede di rete Con una combinazione di tasti è possibile intervenire manualmente accedendo ad una interfaccia di configurazione; l'utilizzo tipico è modificare la sequenza dei dispositivi di boot del PC.

System Startup - BIOS

System Startup - BIOS L'avvio di Linux inizia nel BIOS, il quale si avvia dall'indirizzo di memoria 0xFFFF0. BIOS esegue due operazioni : Power On Self Test Enumerazione e inizializzazione hardware

System Startup - BIOS Ricerca di un dispositivo da cui eseguire il boot (active and bootable) Devices possibili : floppy, cdrom, HD partition, USB flash memory, network device.

From System Startup to Stage 1 Boot Loader - MBR Il Master Boot Record consiste in 512 byte posizionati nel primo settore dell'hard disk identificato per il boot : SECTOR 1 of CYLINDER 0, HEAD 0 Dopo che il caricamento dell'mbr è avvenuto in RAM, il BIOS gli lascia il controllo

Stage 1 Boot Loader - MBR Magic Number 0xAA55

Stage 1 Boot Loader - MBR Interessanti sono i 64 bytes del MBR che contengono le info inerenti alla tabella delle partizioni : max 4 partizioni per cui 16 bytes ciascuna, i quali contengono le seguenti informazioni : 0 : indicatore di boot (valore 80 Hex se attivo) 1 : testina, settore e cilindro del primo blocco della partizione 4 : identificazione del filesystem contenuto nella partizione 5-7 : testina, settore e cilindro dell'ultimo blocco della partizione 8-11 : numero di blocchi prima della partizione 12-15 : numero di blocchi che costituiscono la partizione

Stage 1 Boot Loader - HD

Stage 1 Boot Loader - HD Piatto : un disco rigido si compone di uno o più dischi paralleli, di cui ogni superficie, detta "piatto" e identificata da un numero univoco, è destinata alla memorizzazione dei dati. Traccia : ogni piatto si compone di numerosi anelli concentrici numerati, detti tracce ciascuna identificata da un numero univoco. Cilindro : l'insieme di tracce alla stessa distanza dal centro presenti su tutti i dischi è detto cilindro. Corrisponde a tutte le tracce aventi il medesimo numero, ma diverso piatto. Settore : ogni piatto è suddiviso in "spicchi" radiali uguali ciascuno identificato da un numero univoco. Blocco : L'insieme di settori posti nella stessa posizione in tutti i piatti. Testina : Su ogni piatto è presente una testina per accedere in scrittura o in lettura ai dati memorizzati sul piatto; la posizione di tale testina è solidale con tutte le altre sugli altri piatti. In altre parole, se una testina è posizionata sopra una traccia, tutte le testine saranno posizionate nel cilindro a cui la traccia appartiene.

Stage 1 Boot Loader - MBR E' possibile eseguire il backup del MBR tramite il comando come root : dd if=/dev/hda of=mbr.bin bs=512 count=1 Il comando legge i primi 512 bytes da hda e li scrive nel file mbr.bin Il restore si ottiene con il seguente comando sempre da eseguire come root: dd if=mbr.bin of=/dev/hda bs=512 count=1

From Stage 1 Boot Loader to Stage 2 - GRUB Obiettivo principale dello Stage 2 è caricare il kernel Linux. La combinazione dello Stage 1 e 2 prende il nome di LILO (LInux LOader) oppure GRUB (GRand Unified Bootloader).

Stage 2 - GRUB

Stage 2 - GRUB GRUB ha la particolarità di conoscere i file system Linux grazie ad uno stadio intermedio definito Stage 1.5 Quando lo Stage 1.5 è caricato e attivo allora è possibile caricare lo Stage 2 il quale visualizza l'elenco dei kernel disponibili. Grub si appoggia a due file di configurazione : grub.conf e menu.lst

Stage 2 - GRUB default 0 timeout 10 title Hardy Heron Ubuntu 8.04, kernel 2.6.24-16-generic root (hd0,2) kernel /boot/vmlinuz-2.6.24-16-generic root=uuid=e0c9adfe- 1ba7-4a2b-9870-f3a3e41231ac ro quiet splash noapic noacpi locale=it_it initrd /boot/initrd.img-2.6.24-16-generic quiet title Windows XP/Vista (loader) root (hd0,0) savedefault makeactive chainloader +1

From Stage 2 to Kernel - Linux Con lo Stage 2 caricato in memoria, il file system viene consultato, le immagine del kernel e initrd vengono a loro volta caricate in memoria. Con le immagini pronte lo Stage 2 invoca l'immagine del kernel.

Kernel - Linux Tipicamente il kernel che viene caricato non è un eseguibile ma bensì una immagine che contiene all'inizio della stessa una routine che consente le seguenti operazioni : la decompressione il posizionamento in memoria alta del kernel se presente un'immagine initrd, la sposta in memoria e lo annota per una fase successiva una chiamata al kernel in modo da avviarne il boot Uncompressing Linux... Ok, booting the kernel

Kernel - Linux

From Kernel to INIT User Space Dopo che il kernel è stata avviato e inizializzato, lo stesso kernel avvia il primo processo non-kernel : init il quale ha sempre l'id 1 USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND root 1 0.0 0.0 4020 876? Ss 17:27 0:00 /sbin/init

INIT User Space INIT legge il proprio file di configurazione e determina quello che viene denominato RUNLEVEL che in sostanza imposta il comportamento del sistema. I runlevel sono 7 e possono avere i valori : 0 Ferma il sistema 1 Entra in modalità singolo utente (no network) 2 Modalità multiutente ma senza NFS 3 Modalità multiutente completa 4 Non utilizzato 5 Come il 3 ma con X window 6 Riavvia il sistema

INIT User Space Il valore del runlevel decide il comportamento del sistema grazie all'avvio di script denominati RC(Run Command). Esiste una cartella (/etc/rcx.d) per ogni runlevel con dentro i link agli script RC veri e propri : lrwxrwxrwx 1 root root 13 2008-04-27 14:04 K01gdm ->../init.d/gdm lrwxrwxrwx 1 root root 17 2008-04-27 14:04 K01usplash ->../init.d/usplash lrwxrwxrwx 1 root root 17 2008-09-12 22:06 K09apache2 ->../init.d/apache2 lrwxrwxrwx 1 root root 22 2008-04-27 14:04 S15wpa-ifupdown ->../init.d/wpaifupdown lrwxrwxrwx 1 root root 18 2008-04-27 14:04 S20sendsigs ->../init.d/sendsigs

Gli script e la posizione degli stessi nel file system cambiano a seconda della distribuzione. INIT User Space lrwxrwxrwx 1 root root 13 2008-04-27 14:04 K01gdm ->../init.d/gdm Da notare la nomenclatura dei file che presentano il prefisso K o S e un numero. Quando si passa ad un runlevel più alto, init esegue con il parametro Start tutti gli script che iniziano con S, in ordine numerico crescente. Nel passaggio ad un runlevel più basso, init esegue con il parametro Stop tutti gli script che iniziano con K, in ordine decrescente. Questo metodo permette di decidere quali demoni avviare e in quale sequenza, non ha alcun senso avviare il demone sshd se prima non si attivano le interfacce di rete.

LINUX Fabrizio Canonici GRAZIE