Documente Academic
Documente Profesional
Documente Cultură
Sisteme de fișiere
1 Fișiere
2 Directoare
3 Implementarea sistemelor de fișiere
4 Exemple
1
Sistem de fișiere
• Sistemul de fișiere este o parte a sistemului de operare ce se ocupă
cu numele și atributele fișierelor pe care le stochează într-o
structură ierarhică.
• Sistemele de fișiere oferă o metodă de organizare fizică și logică a
fișierelor într-un mediu de stocare:
– Stocarea fișierelor ca o înșiruire de octeți reprezintă organizarea
fizică;
– Modul în care sunt adresate fișierele reprezintă organizarea
logică.
2
Partiții
1. Pentru a avea un sistem de fișiere mai întâi trebuie să avem partiții.
2. Fiecare partiție poate susține un sistem de fișiere.
3. De ce se folosesc partiții? Pentru o mai bună organizare a datelor.
Astfel avem:
1. partiție pentru sistemul de operare Windows/Linux
2. partiție pentru date (home directory)
3. partiție pentru swap
4. Partițiile pot fi:
1. primare (maxim 4);
2. extinsă – poate înlocui una din partițiile primare;
3. logice – se regăsesc în interiorul partiției extinse;
3
Sisteme de operare și sisteme de
fișiere
4
Sisteme de fișiere în Linux (1)
5
Sisteme de fișiere în Linux (2)
• Second Extended File System (ext2fs sau ext2) este sistemul de fișiere nativ
tradițional din Linux.
• Third Extended File System (ext3fs sau ext3) este, de fapt, ext2 cu jurnalizare. A
rezultat un sistem de fișiere sigur, dar care permite recuperarea mult mai rapidă după
system failure.
• Fourth Extended File System (ext4fs sau ext4) este versiunea generației următoare
din această familie de sisteme de fișiere.
• ReiserFS a fost dezvoltat de la zero ca un sistem de fișiere cu jurnalizare pentru Linux.
• Journaled File System (jfs) pentru sistemele sale de operare AIX și OS/2.
• Extens File System (xfs).
• BTRFS este un sistem de fișiere avansat cau caracteristici împrumutate de la sistemul
de fișiere Zettabyte File System (ZFS) al celor de la Sun.
• În practică, cei mai mulți utilizatori folosesc ext3, ext4 sau reiserfs. JFS și XFS
sunt pentru sistemele cu discuri de mare capacitate și care stochează fișiere de
mari dimensiuni.
6
Sisteme de fișiere pentru Windows
• File Allocation Table (FAT):
– este vechi și primitiv, dar încă omniprezent.
– excelent ca sistem de fișiere pentru discuri amovibile.
– la formatare, dacă folosim numele msdos, partiția FAT va
suporta doar nume de fișiere 8.3.
– comanda $ mkfs -t vfat /dev/sdc poate formata un stick USB
în FAT32).
• New Technology File System (NTFS) este sistemul de fișiere
preferat din Windows NT și mai nou.
– Există suport Linux pentru NTFS
– $ mount /dev/sda5 /mnt/sda5 –t ntfs-3g
7
Alte tipuri de sisteme de fișiere(2)
8
Criterii de comparație pentru
sistemele de fișiere
• Asigurarea integrității datelor;
• Separarea eficientă a resurselor între diferiți utilizatori;
• Securizarea datelor prin setarea permisiunilor diferențiate
de acces;
• Volumul gestionat
• Comprimarea fișierelor
• Optimizarea spațiului de stocare
• Gestiunea posibilelor erori prin jurnalizare și reversibilitate
9
Caracteristici importante
pentru sistemele de fișiere
10
fișier/ director/ stocare
11
Structura fișierelor
13
Numirea fișierelor
Extensii de fișiere
14
Formatul fișierelor
16
Atributele fișierelor - metadate
17
Accesul la fișiere
• Acces secvențial
– Citirea octeților/înregistrărilor de la începutul fișierului
– Se păstrează ordinea de citire în fișier, fișierele se pot derula
înapoi sau salva
– Convenabil când mediul de stocare era banda magnetică
• Acces aleator
– Citirea octeților/înregistrărilor în orice ordine
– Esențial pentru sistemele de baze de date
– Citirea se realizează prin două metode:
• Mutarea marcatorului de fișier (seek), apoi citește sau …
• Citește și apoi muta marcatorul de fișier
18
Operații cu fișiere
1. Create 7. Append
2. Delete 8. Seek
3. Open 9. Get attributes
4. Close 10.Set Attributes
5. Read 11.Rename
6. Write
19
Comenzi pentru crearea unor intrări
în sistemul de fișiere - Linux
20
Directoare(1)
21
Ierarhie de directoare
Arbore de directoare
22
Specificarea căilor
de acces la fișiere
Un arbore de directoare
Unix/Linux
23
Comparație între căile sistemelor
de operare Windows și Linux
24
Ierarhia
într-un
sistem
de
fișiere
pentru
Linux
25
Ierarhia într-un sistem de fișiere
pentru Windows
26
Operații cu directoare
1. Create 5. Readdir
2. Delete 6. Rename
3. Opendir 7. Link
4. Closedir 8. Unlink
27
Echivalențe
comenzi
Windows și
Linux
28
Implementarea sistemului de fișiere
MBR
29
Linux boot cu MBR și BIOS
30
Implementarea sistemului de fișiere
GPT
31
Implementarea fișierelor
Metode de alocare
• Metoda de alocare specifică modul de stocare a informației
pe disc (în cadrul unui sistem de fisiere) scopul fiind
utilizarea eficientă a spațiului disponibil și accesul rapid la
fișiere.
• Există trei metode principale de alocare a spațiului:
– alocarea contiguă (contiguous allocation)
– alocarea cu liste (linked allocation)
– alocarea indexată (indexed allocation)
32
Alocarea contiguă
Fig A
Stocarea unui fișier ca o
listă înlănțuită de
blocuri Fig B
O listă înlănțuită de blocuri ce utilizează FAT în RAM
34
35
Alocarea indexată
Un exemplu de inode
36
37
Implementarea directoarelor (1)
38
Implementarea directoarelor (2)
42
De știut...
1. Fișier: definiție, structură, tipuri, modalități de acces, atribute, operații cu fișiere.
2. Director:definiție, forme, cale, operații.
3. Implementarea fișierelor.
4. Implementarea directoarelor.
5. Sistem de fișiere: definiție, schema generală, tipuri cunoscute.
6. Ce reprezintă numărul magic?
7. Cum este implementat accesul aleator la fișier sub MS-DOS?
8. Precizați avantaje și dezavantaje ale legăturilor simbolice comparativ cu cele hardware.
9. Caracterizaţi FAT, FAT32, NTFS.
10. Ce înseamnă GRUB?
11. Ce înseamnă LILO?
12. Definiți termenul here document.
13. Care este secvența de start-up pentru Linux?
14. Care este UID-ul pentru utilizatorul root?
15. Ce reprezintă FSB?
16. Care sunt avantajele și dezavantajele utilizării GRUB versus LILO?
17. Care este diferența dintre MBR și GPT?
18. Care este bootloader-ul pentru sistemul de operare Windows?
19. Ce reprezintă UEFI?
43
Bibliografie
• A. Silberschatz, P. Galvin, Operating System Concepts,
John Wiley and Sons Inc., 2005, pag 373-402, capitolul
10.
• A. Tanembaum, Modern Operating Systems, Prentice
Hall, 2007, pag 255-292.
• Gh. Dodescu, Sisteme de operare, Ed. Economică, 2003,
pag 216-246.
• https://www.despre-linux.eu/sisteme-de-fisiere-in-linux/
• Rughiniș R. , Utilizarea sistemelor de operare, note curs
2011.
• https://www.ntfs.com/guid-part-table.htm
44
44