Documente Academic
Documente Profesional
Documente Cultură
08 USO Curs Intializare Sistem
08 USO Curs Intializare Sistem
5
Iniializarea sistemului de
operare
3 noiembrie 2008
Motto
03.10.2008
Booting
Ce nseamn booting?
Procesul de pornire a sistemului de operare, dup pornirea
sistemului de calcul
Alte denumiri
Bootup
Bootstrapping
Bootstrapping
Pornirea sistemului de operare fr ca un sistem de operare s
fie deja prezent
Problem de tip Oul i gaina
Baronul de Munchhausen s-a ridicat din mare cu ajutorul
baretelor cizmelor (boot straps)
03.10.2008
Problematica booting-ului
03.10.2008
03.10.2008
Arhitectura x86
1.
2.
3.
4.
5.
6.
7.
03.10.2008
Pornirea sistemului
Dup pornirea/repornirea sistemului procesorul este
adus ntr-o stare predefinit
Registrele procesorului au o valoare determinat
BIOS
cod BIOS
Spaiu de adresare
pentru procesor
03.10.2008
BIOS
03.10.2008
BIOS (2)
Basic Input Output System
Cod executat la pornirea sistemului de calcul
Recunoaterea i iniializarea diverselor
dispozitive ce formeaz un calculator
Denumire specific PC
Pentru alte arhitecturi
boot monitor
boot loader
boot ROM
03.10.2008
BIOS (3)
Rolurile BIOS-ului
POST (Power-On Self-Test)
verificarea integritii memoriei
descoperirea i identificarea magistralelor i dispozitivelor
erorile sunt transmise n forma unor sunete (beep)
03.10.2008
Sectorul de boot
BIOS (CMOS) -> selectarea ordinii dispozitivelor
bootabile
Cnd este un dispozitiv bootabil?
primul sector (sector zero) din acel dispozitiv (hard
disk, CD, USB flash) este un sector bootabil
sectorul se numeste i Master Boot Record (MBR)
VBR
unic per partiie
ncrcarea sistemului de operare de pe acea partiie
03.10.2008
03.10.2008
2 octei
4 intrri de tabela de
partiii
4x16 octei
semnatura (opional)
4 octei
4 intrri de tabela de
partiii (opional)
4x9 octei
cod
406 octei
Exemple de bootloadere:
GRUB GRand Unified Bootloader
LILO Linux Loader
NTLoader
03.10.2008
GRUB
Cel mai folosit bootloader n distribuiile Linux
Versiunea actual GRUB2 (nc n dezvoltare)
Caracteristici:
configurare dinamic
interpretor de comenzi
editarea secvenei de boot
portabil
informaii despre diverse sisteme de fisiere
GRUB (2)
Trei etape de boot
stage 1
localizat n MBR
doar ncarc Stage 1.5 (MBR este mic)
stage 1.5
primii 30KB de dup MBR
Informaii despre sistemul de fiiere
ncarc Stage 2
menu.lst
minix_stage1_5
reiserfs_stage1_5
stage1
stage2
xfs_stage1_5
GRUB (3)
boot
root
32 KB
MBR
DOS compat
(stage 1.5)
Bootloader
(stage 1)
03.10.2008
partiii
swap
GRUB (4)
Stage 2
fiierul /boot/grub/menu.lst
exemplu de intrare
title
root
kernel
savedefault
boot
ncrcarea nucleului
Kernel loading (kernel boot)
Dou faze ulterioare ncrcrii nucleului
ncrcarea initrd (initial ramdisk) (opional)
pornirea efectiv a sistemului de operare
initrd
fiier care este montat n RAM (ramdisk)
ncrcarea driver-elor pentru sistemele de fisiere
se poate evita prin includerea driverelor n imaginea nucleului
anaconda:/boot# ls
System.map-2.4.27-2-386
System.map-2.6.8-2-686
config-2.4.27-2-386
03.10.2008
config-2.6.8-2-686
grub
initrd.img-2.4.27-2-386
initrd.img-2.6.8-2-686
vmlinuz-2.4.27-2-386
vmlinuz-2.6.8-2-686
03.10.2008
03.10.2008
dmesg
Afiarea mesajelor nucleului
nucleul Unix este verbose
init
Pornirea init marcheaz ncrcarea nucleului
Care este starea sistemului pn la init?
nucleu ncrcat
parte din hardware iniializat
sistemul de fisiere rdcin ncrcat
/etc/inittab
Cel puin 3 informaii eseniale
nivelul de rulare (runlevel) implicit de pornire
comanda pentru iniializarea de baz a sistemului
comenzile rulate la intrarea i ieirea din anumite runlevel-uri
anaconda:/boot# head -30 /etc/inittab
id:2:initdefault:
si::sysinit:/etc/init.d/rcS
l0:0:wait:/etc/init.d/rc 0
l6:6:wait:/etc/init.d/rc 6
Scripturile de runlevel
l5:5:wait:/etc/init.d/rc 5
Semnificaie
identificatorul este l5
03.10.2008
K20ssh
K20vsftpd
K21fam
K79nfs-common
K79quotarpc
K81portmap
K85bind9
K86ppp
K89atd
K89klogd
K90sysklogd
K91apache
K91apache2
S20single
Sintax nume
K | S chidere/ponire serviciu
XY ordinea de pornire (cresctoare) sau de oprire
(descesctoare)
Nume serviciu
anaconda:/etc/rc5.d#
gdm
0:off
anaconda:/etc/rc5.d#
anaconda:/etc/rc5.d#
gdm
0:off
anaconda:/etc/rc5.d#
vsftpd
0:off
anaconda:/etc/rc5.d#
anaconda:/etc/rc5.d#
vsftpd
0:off
anaconda:/etc/rc5.d#
anaconda:/etc/rc5.d#
vsftpd
0:off
03.10.2008
5:on
5:on
6:off
6:off
5:on
6:off
5:on
6:off
5:on
6:off
5:on
6:off
5:on
6:off
getty
tty terminal teletype (Unix history)
Deschiderea unui port tty
Afiarea unui ecran de login utilizatorului n forma
login:
Dup introducerea username, se invoc, implicit,
programul /bin/login
Terminale virtuale (tty), linii seriale (ttyS0, ttyS1) sau linii
de modem
03.10.2008
login
Executabilul asociat este /bin/login
Invocat de getty
Numele de utilizator a fost introdus
Sesiunea de shell
Pasul final realizat de login
03.10.2008
Cuvinte cheie
booting
bootstrapping
dispozitiv bootabil
secven de boot
BIOS
POST
CMOS
bootloader
MBR, VBR
tabel de partiii
GRUB
03.10.2008
imagine de kernel
initrd
dmesg
drivere
lkm (module)
insmod, lsmod, rmmod,
modprobe
init
upstart
sysv-rc-conf
getty, login
Resurse utile
http://www.ibm.com/developerworks/library/llinuxboot/index.html
http://www.gnu.org/software/grub/manual/grub.
html
http://www.kernel.org/pub/linux/kernel/people/g
regkh/lkn/lkn_pdf/ch09.pdf
http://upstart.ubuntu.com/
03.10.2008
The End
03.10.2008