8/4/2019 Cursul10 - Sisteme de Fisiere
1/49
Sisteme de operareSisteme de operare -- Cursul 10Cursul 10 1102.06.201002.06.2010
Sisteme de operareSisteme de operareSisteme de fiSisteme de fiiereiere
Prof. univ. dr. Constantin POPESCUProf. univ. dr. Constantin POPESCUDepartamentul de MatematicDepartamentul de Matematicii
InformaticInformatic,,
Universitatea din Oradea, RomUniversitatea din Oradea, Romnniaia
8/4/2019 Cursul10 - Sisteme de Fisiere
2/49
02.06.201002.06.2010 Sisteme de operareSisteme de operare -- Cursul 10Cursul 10 22
ConConinutul cursuluiinutul cursului
FisiereFisiereTipuri de fisiereTipuri de fisiereImplementarea fisierelor sistemImplementarea fisierelor sistemExemple de fisiere sistemExemple de fisiere sistem
8/4/2019 Cursul10 - Sisteme de Fisiere
3/49
02.06.201002.06.2010 Sisteme de operareSisteme de operare -- Cursul 10Cursul 10 33
IntroducereIntroducere
Componente esentiale pentru stocarea peComponente esentiale pentru stocarea petermen lung a informatiei:termen lung a informatiei:Fisierele trebuie sa stocheze date de dimensiuniFisierele trebuie sa stocheze date de dimensiuni
marimariProcese multiple trebuie sa fie capabile saProcese multiple trebuie sa fie capabile sa
acceseze informatiile in acelasi timpacceseze informatiile in acelasi timp
Informatia trebuie sa ramana dupa terminareaInformatia trebuie sa ramana dupa terminareaprocesului care o foloseste.procesului care o foloseste.
8/4/2019 Cursul10 - Sisteme de Fisiere
4/49
FisiereFisiere
Solutia uzuala a acestor probleme esteSolutia uzuala a acestor probleme estestocarea informatiilor in unitati numitestocarea informatiilor in unitati numitefisiere (files)fisiere (files)
Informatia stocata in fisiere trebuie sa fieInformatia stocata in fisiere trebuie sa fiepersistentapersistentaAdica sa nu fie afectata de crearea sauAdica sa nu fie afectata de crearea sauterminarea proceselorterminarea proceselor
Un fisier trebuie sa dispara numai atunciUn fisier trebuie sa dispara numai atuncicand proprietarulcand proprietarulll terge explicitterge explicit
02.06.201002.06.2010 Sisteme de operareSisteme de operare -- Cursul 10Cursul 10 44
8/4/2019 Cursul10 - Sisteme de Fisiere
5/49
Sistem de fisiereSistem de fisiere
Fisierele sunt administrate de sistemul deFisierele sunt administrate de sistemul deoperareoperare
Acea parte a sistemului de operare care seAcea parte a sistemului de operare care seocupa cu fisiere se numesteocupa cu fisiere se numeste sistem desistem defifiiere (file system).iere (file system).
02.06.201002.06.2010 Sisteme de operareSisteme de operare -- Cursul 10Cursul 10 55
8/4/2019 Cursul10 - Sisteme de Fisiere
6/49
Numele fisierelorNumele fisierelorUnix:Unix:
Nume de fisiere (255 bytes)Nume de fisiere (255 bytes)
include caractere specialeinclude caractere specialeSe face diferenta intre literele mari si cele miciSe face diferenta intre literele mari si cele mici
(Sisteme.txt != sisteme.txt)(Sisteme.txt != sisteme.txt)MSMS--DOS:DOS:
Nume de fisiere = 8 caractere,Nume de fisiere = 8 caractere,.., 3, 3--caracterecaracterepentru extensiepentru extensie
Nu se face diferenta intre literele mari si celeNu se face diferenta intre literele mari si celemici (Sisteme.txt , sisteme.txt, SISTEME.TXTmici (Sisteme.txt , sisteme.txt, SISTEME.TXT--acelasi fisier)acelasi fisier)
02.06.201002.06.2010 Sisteme de operareSisteme de operare -- Cursul 10Cursul 10 66
8/4/2019 Cursul10 - Sisteme de Fisiere
7/49
Structura fisierelorStructura fisierelor
In Unix, Windows, un fisier nu are o structuraIn Unix, Windows, un fisier nu are o structurabine definita.bine definita.
Este o secventa de caractere.Este o secventa de caractere.Sistemul de operare nu cunoaste unde incep siSistemul de operare nu cunoaste unde incep sise termina liniilese termina liniileFisierele pot fi structurate caFisierele pot fi structurate ca::
O secventa de octetiO secventa de octetiO secventa de inregistrariO secventa de inregistrari
Un arbore de inregistrariUn arbore de inregistrari
02.06.201002.06.2010 Sisteme de operareSisteme de operare -- Cursul 10Cursul 10 77
8/4/2019 Cursul10 - Sisteme de Fisiere
8/49
Tipuri de fisiereTipuri de fisiere
Fisiere normaleFisiere normale --contin informatiacontin informatia
utilizatoruluiutilizatorului
CataloageCataloage-- fisiere sistem pentru mentinereafisiere sistem pentru mentinereastructurii sistemului de fisierestructurii sistemului de fisiere
Fisiere speciale de tip caracterFisiere speciale de tip caracter--sunt legatesunt legatede intrare/iesirede intrare/iesireFisiere speciale de tip blocFisiere speciale de tip bloc --sunt folositesunt folositepentru a modela discuripentru a modela discuri
02.06.201002.06.2010 Sisteme de operareSisteme de operare -- Cursul 10Cursul 10 88
8/4/2019 Cursul10 - Sisteme de Fisiere
9/49
Tipuri de fisiereTipuri de fisiere
Fisiere normale:Fisiere normale:
Fisiere ASCIIFisiere ASCIILinii de textLinii de textFiecare linie se termina cu un caracter specialFiecare linie se termina cu un caracter specialLiniile nu trebuie sa aiba aceeasi lungimeLiniile nu trebuie sa aiba aceeasi lungime
Fisiere binareFisiere binareUn sir de caractere si simboluri aleatoareUn sir de caractere si simboluri aleatoareAntet, text, date, bitii de relocareAntet, text, date, bitii de relocareTabela de simboluri.Tabela de simboluri.
02.06.201002.06.2010 Sisteme de operareSisteme de operare -- Cursul 10Cursul 10 99
8/4/2019 Cursul10 - Sisteme de Fisiere
10/49
Accesul la fisiereAccesul la fisiere
Acces secvential:Acces secvential:Se citesc toti octetii/inregistrarile de la inceputSe citesc toti octetii/inregistrarile de la inceputNu se poate accesa un octet anume fara sa seNu se poate accesa un octet anume fara sa se
acceseze datele (octetii) dinaintea luiacceseze datele (octetii) dinaintea lui
Acces aleator (Random access):Acces aleator (Random access):Octetii/inregistrarile sunt citite in orice ordineOctetii/inregistrarile sunt citite in orice ordineEste esential pentru bazele de dateEste esential pentru bazele de dateCitirea se poate face:Citirea se poate face:
Prin mutarea unui marker de fisier (seek), apoi citirePrin mutarea unui marker de fisier (seek), apoi citiresausau
Prin citire si apoi mutarea markerului de fisier.Prin citire si apoi mutarea markerului de fisier.02.06.201002.06.2010 Sisteme de operareSisteme de operare -- Cursul 10Cursul 10 1010
8/4/2019 Cursul10 - Sisteme de Fisiere
11/49
Atributele fisierelorAtributele fisierelor
Sistemele de operare asociaza informatiiSistemele de operare asociaza informatii
pentru fiecare fisier:pentru fiecare fisier:
Numele fisierului si datele saleNumele fisierului si datele saleData si ora la care fisierul a fost creatData si ora la care fisierul a fost creatDimensiunea fisieruluiDimensiunea fisierului
Informatiile suplimentare despre fisiere seInformatiile suplimentare despre fisiere senumescnumesc atributele fisierelor.atributele fisierelor.
02.06.201002.06.2010 Sisteme de operareSisteme de operare -- Cursul 10Cursul 10 1111
8/4/2019 Cursul10 - Sisteme de Fisiere
12/49
Atributele fisierelorAtributele fisierelor
02.06.201002.06.2010 Sisteme de operareSisteme de operare -- Cursul 10Cursul 10 1212
8/4/2019 Cursul10 - Sisteme de Fisiere
13/49
Operatiile fisierelorOperatiile fisierelor
CreareCreare
Fisierul este creat golFisierul este creat gol
Setarea anumitor atributeSetarea anumitor atributeStergereStergereDeschidereDeschidere
Atributele si lista de adrese sunt aduse in memoriaAtributele si lista de adrese sunt aduse in memoriaprincipalaprincipala
Se permite astfel accesul rapid la fisierSe permite astfel accesul rapid la fisierInchidereInchidere
Se elibereaza spatiul intern de adreseSe elibereaza spatiul intern de adrese02.06.201002.06.2010 Sisteme de operareSisteme de operare -- Cursul 10Cursul 10 1313
8/4/2019 Cursul10 - Sisteme de Fisiere
14/49
Operatiile fisierelorOperatiile fisierelor
CitireCitireCitire de la pozitia curentaCitire de la pozitia curentaScriereScriere
Datele sunt scrise de la pozitia curentaDatele sunt scrise de la pozitia curentaDaca pozitia curenta se afla la sfirsitul fisierului,Daca pozitia curenta se afla la sfirsitul fisierului,
dimensiunea lui se marestedimensiunea lui se maresteDaca pozitia curenta este in mijlocul fisierului,Daca pozitia curenta este in mijlocul fisierului,
datele existente sunt suprascrise si pierdutedatele existente sunt suprascrise si pierdute
02.06.201002.06.2010 Sisteme de operareSisteme de operare -- Cursul 10Cursul 10 1414
8/4/2019 Cursul10 - Sisteme de Fisiere
15/49
Operatiile fisierelorOperatiile fisierelor
AnexareAnexareAdaugare date doar la sfirsitul fisieruluiAdaugare date doar la sfirsitul fisieruluiCautareCautare
Repozitioneaza cursorul fisierului la un punctRepozitioneaza cursorul fisierului la un punctspecific din fisierspecific din fisier
Obtinerea atributelorObtinerea atributelorSetarea atributelorSetarea atributelor
RedenumireRedenumire02.06.201002.06.2010 Sisteme de operareSisteme de operare -- Cursul 10Cursul 10 1515
8/4/2019 Cursul10 - Sisteme de Fisiere
16/49
Sisteme de cataloage ierarhiceSisteme de cataloage ierarhice
02.06.201002.06.2010 Sisteme de operareSisteme de operare -- Cursul 10Cursul 10 1616
8/4/2019 Cursul10 - Sisteme de Fisiere
17/49
Numele cNumele cilor (path name)ilor (path name)Nume de cale absolutaNume de cale absoluta
ConstndConstndn calea de la catalogul radacina pn calea de la catalogul radacina pnnlalafifiierier
UNIXUNIX: /usr/home/cursuri/cursul1.txt: /usr/home/cursuri/cursul1.txtWindows: c:Windows: c:\\My DocumentsMy Documents\\cursuricursuri\\cursul1.txtcursul1.txt
Nume de cale relativaNume de cale relativaUtilizeaza catalogul curent ca punct de plecareUtilizeaza catalogul curent ca punct de plecareUtilizatorul poate desemna un catalog ca fiindUtilizatorul poate desemna un catalog ca fiind
catalogul curentcatalogul curent
Toate cToate cile care nu incep de la catalogul radacinaile care nu incep de la catalogul radacinasunt considerate relative la catalogul curentsunt considerate relative la catalogul curent
02.06.201002.06.2010 Sisteme de operareSisteme de operare -- Cursul 10Cursul 10 1717
8/4/2019 Cursul10 - Sisteme de Fisiere
18/49
Numele cNumele cilor (path name)ilor (path name)
..(punct)(punct) se refera la catalogul curentse refera la catalogul curent....(punct punct)(punct punct) se refera la catalogul parintese refera la catalogul parinte
02.06.201002.06.2010 Sisteme de operareSisteme de operare -- Cursul 10Cursul 10 1818
8/4/2019 Cursul10 - Sisteme de Fisiere
19/49
Operatiile cataloagelorOperatiile cataloagelor
CreareaCreareaStergereaStergereaDeschiderea cataloagelorDeschiderea cataloagelorInchiderea cataloagelorInchiderea cataloagelorCitirea cataloagelorCitirea cataloagelorRedenumireaRedenumireaLegareaLegareaDezlegareaDezlegarea02.06.201002.06.2010 Sisteme de operareSisteme de operare -- Cursul 10Cursul 10 1919
8/4/2019 Cursul10 - Sisteme de Fisiere
20/49
Implementarea sistemului de fisiereImplementarea sistemului de fisiere
Sistemele de fisiere sunt stocate pe discuriSistemele de fisiere sunt stocate pe discuriMajoritatea discurilor pot fi impartite in unaMajoritatea discurilor pot fi impartite in una
sau mai multesau mai multe partipartiiiii
Cu sisteme de fisiere independente pe fiecareCu sisteme de fisiere independente pe fiecaredintre partidintre partiiiiiSectorulSectorul 00al discului se numesteal discului se numeste MBR (MasterMBR (Master
Boot Record)Boot Record)Inregistrarea Principala deInregistrarea Principala dePornirePornire
Este folosit pentru a porni calculatorulEste folosit pentru a porni calculatorul02.06.201002.06.2010 Sisteme de operareSisteme de operare -- Cursul 10Cursul 10 2020
8/4/2019 Cursul10 - Sisteme de Fisiere
21/49
Planul sistemului de fisierePlanul sistemului de fisiereLa sfrLa sfritul MBR se aflitul MBR se afltabela de partitabela de partiiiii
OferOferinformainformaii cu privire laii cu privire lanceputulnceputul iisfrsfritul tuturor partiitul tuturor partiiiloriilor
Una din partiUna din partiiile din tabeliile din tabeleste marcateste marcatcacaactivactiv
Cnd calculatorul este initializat,Cnd calculatorul este initializat, BIOSBIOS--ululciteste si executa informatia din MBRciteste si executa informatia din MBR
MBR localizeaza partitia activa, citesteMBR localizeaza partitia activa, citesteprimul ei bloc (primul ei bloc (bloc de initializarebloc de initializare) si) si--ll
executaexecuta02.06.201002.06.2010 Sisteme de operareSisteme de operare -- Cursul 10Cursul 10 2121
8/4/2019 Cursul10 - Sisteme de Fisiere
22/49
Planul sistemului de fisierePlanul sistemului de fisiereProgramul din blocul de initializare inarcaProgramul din blocul de initializare inarca
sistemul de operare continut pe acea partitiesistemul de operare continut pe acea partitie
Fiecare partitie incepe cu un bloc deFiecare partitie incepe cu un bloc deinitializareinitializare
Chiar daca nu contine un sistem de operareChiar daca nu contine un sistem de operareinitializabilinitializabil
02.06.201002.06.2010 Sisteme de operareSisteme de operare -- Cursul 10Cursul 10 2222
8/4/2019 Cursul10 - Sisteme de Fisiere
23/49
Planul sistemului de fisierePlanul sistemului de fisiere
02.06.201002.06.2010 Sisteme de operareSisteme de operare -- Cursul 10Cursul 10 2323
8/4/2019 Cursul10 - Sisteme de Fisiere
24/49
FiFiiereiere Alocarea continuAlocarea continuStocarea fisierelor ca oStocarea fisierelor ca o insiruire continua deinsiruire continua de
blocuriblocuri
De ex. pe un disc cu blocuri de 1 KB, un fisierDe ex. pe un disc cu blocuri de 1 KB, un fisierde 50 KB ar avea alocate 50 de blocuride 50 KB ar avea alocate 50 de blocuriconsecutiveconsecutive
Pentru acelasi fisier si un disc cu blocuri de 2Pentru acelasi fisier si un disc cu blocuri de 2KB, ar fi necesare 25 de blocuri consecutiveKB, ar fi necesare 25 de blocuri consecutive
02.06.201002.06.2010 Sisteme de operareSisteme de operare -- Cursul 10Cursul 10 2424
8/4/2019 Cursul10 - Sisteme de Fisiere
25/49
FiFiiereiere Alocarea continuAlocarea continu
02.06.201002.06.2010 Sisteme de operareSisteme de operare -- Cursul 10Cursul 10 2525
(a)Alocare continua de spatiupentru 7 fisiere (b)
Starea discului dupa cefisierele D si F au fost sterse
8/4/2019 Cursul10 - Sisteme de Fisiere
26/49
AvantajeAvantajeAlocarea continuaAlocarea continua
Implementarea simplaImplementarea simplaA tine minte locatia blocurilor unui fisier seA tine minte locatia blocurilor unui fisier se
reduce la a retine doua numerereduce la a retine doua numere
Adresa primului blocAdresa primului blocNumarul blocurilor ce apartin fisieruluiNumarul blocurilor ce apartin fisierului
Performanta crescutaPerformanta crescutaIntregul fisier putand fi citit de pe disc intrIntregul fisier putand fi citit de pe disc intr--oo
singura operatiesingura operatie
O singura operatie de localizareO singura operatie de localizare--pana la primulpana la primulblocbloc
02.06.201002.06.2010 Sisteme de operareSisteme de operare -- Cursul 10Cursul 10 2626
8/4/2019 Cursul10 - Sisteme de Fisiere
27/49
DezavantajeDezavantajeAlocarea continuaAlocarea continua
In timp discul devine fragmentatIn timp discul devine fragmentatCele doua fisiere D si F au fost sterse (fig. b)Cele doua fisiere D si F au fost sterse (fig. b)Cand un fisier a fost sters, blocurile sale auCand un fisier a fost sters, blocurile sale au
fost eliberate, lasand o serie de blocuri liberefost eliberate, lasand o serie de blocuri liberepe discpe disc
Alocarea continua este folosita pe scara largaAlocarea continua este folosita pe scara largala CDla CD--ROMROM--uriuri
Aici dim. tuturor fisierelor sunt cunoscuteAici dim. tuturor fisierelor sunt cunoscuteapriori si nu se vor modifica la utilizari diferiteapriori si nu se vor modifica la utilizari diferite
ale sistemului de fisiere de pe CDale sistemului de fisiere de pe CD--ROMROM02.06.201002.06.2010 Sisteme de operareSisteme de operare -- Cursul 10Cursul 10 2727
8/4/2019 Cursul10 - Sisteme de Fisiere
28/49
FisiereFisiere
Alocarea cu liste inlantuiteAlocarea cu liste inlantuite
Stocarea fisierelor intrStocarea fisierelor intr--o lista inlantuita deo lista inlantuita deblocuriblocuri
Primul cuvant al fiecarui bloc este folosit caPrimul cuvant al fiecarui bloc este folosit capointer la urmatorulpointer la urmatorul
Restul blocului este destinat datelorRestul blocului este destinat datelorIn aceasta metoda pot fi folosite toateIn aceasta metoda pot fi folosite toateblocurileblocurile
Nu mai are loc fragmentarea disculuiNu mai are loc fragmentarea discului02.06.201002.06.2010 Sisteme de operareSisteme de operare -- Cursul 10Cursul 10 2828
8/4/2019 Cursul10 - Sisteme de Fisiere
29/49
FisiereFisiere
Alocarea cu liste inlantuiteAlocarea cu liste inlantuite
02.06.201002.06.2010 Sisteme de operareSisteme de operare -- Cursul 10Cursul 10 2929
8/4/2019 Cursul10 - Sisteme de Fisiere
30/49
FisiereFisiere
Alocarea cu liste inlantuiteAlocarea cu liste inlantuite
Dezavantaje:Dezavantaje:Accesul aleator la fisier este extrem de incetAccesul aleator la fisier este extrem de incetPentru a ajunge la blocul n, sistemul dePentru a ajunge la blocul n, sistemul de
operare trebuie sa citeasca cele noperare trebuie sa citeasca cele n--1 blocuri1 blocuridinaintea sa, cate unul pe randdinaintea sa, cate unul pe rand
Cantitatea de date ce poate fi stocata nu maiCantitatea de date ce poate fi stocata nu maieste asa de mare ca la alocarea continuaeste asa de mare ca la alocarea continua
Deoarece pointerul ocupa el insusi cativa octetiDeoarece pointerul ocupa el insusi cativa octeti
02.06.201002.06.2010 Sisteme de operareSisteme de operare -- Cursul 10Cursul 10 3030
8/4/2019 Cursul10 - Sisteme de Fisiere
31/49
Alocarea cu liste inlantuiteAlocarea cu liste inlantuiteFileFileAllocation Table (FAT)Allocation Table (FAT)
02.06.201002.06.2010 Sisteme de operareSisteme de operare -- Cursul 10Cursul 10 3131
Pointerul din fiecarebloc este stocat intr-otabela in memorieAceasta tabela se
numesteFAT (File AllocationTable)
l l l l
8/4/2019 Cursul10 - Sisteme de Fisiere
32/49
Alocarea cu liste inlantuiteAlocarea cu liste inlantuiteFileFileAllocation Table (FAT)Allocation Table (FAT)
In acest fel intregul bloc este destinatIn acest fel intregul bloc este destinatpastrarii datelorpastrarii datelor
Accesul aleator este mult usuratAccesul aleator este mult usuratDezavantaj:Dezavantaj:Intreaga tabela trebuie pastrata in memorie totIntreaga tabela trebuie pastrata in memorie tot
timpul pentru ca sistemul sa functionezetimpul pentru ca sistemul sa functioneze
SS--ar putea ca tabela sa fie foarte marear putea ca tabela sa fie foarte mare02.06.201002.06.2010 Sisteme de operareSisteme de operare -- Cursul 10Cursul 10 3232
Al f l i dAl f l i d ii d id i
8/4/2019 Cursul10 - Sisteme de Fisiere
33/49
Alocarea folosindAlocarea folosind ii--nodurinoduri
02.06.201002.06.2010 Sisteme de operareSisteme de operare -- Cursul 10Cursul 10 3333
8/4/2019 Cursul10 - Sisteme de Fisiere
34/49
Alocarea folosindAlocarea folosind ii--nodurinoduri
Fiecarui fisier i se asociaza o structura de dateFiecarui fisier i se asociaza o structura de datenumitanumita ii--nod (index node)nod (index node)
Pastreaza atributele si adresele pe disc aPastreaza atributele si adresele pe disc ablocurilor ce apartin de fisierblocurilor ce apartin de fisier
In acest caz un iIn acest caz un i--nod trebuie sa fie in memorienod trebuie sa fie in memoriedoar cand fisierul corespunzator este accesatdoar cand fisierul corespunzator este accesat
Spatiul total necesar este proportional cuSpatiul total necesar este proportional cudimensiunea idimensiunea i--noduluinoduluixxnumarul maxim denumarul maxim de
fisiere deschise simultanfisiere deschise simultan
02.06.201002.06.2010 Sisteme de operareSisteme de operare -- Cursul 10Cursul 10 3434
8/4/2019 Cursul10 - Sisteme de Fisiere
35/49
Alocarea folosindAlocarea folosind
ii--nodurinoduri
Apare o problema:Apare o problema:Un iUn i--nod are un spatiu pentru un numar limitat denod are un spatiu pentru un numar limitat de
adrese de discadrese de disc
Ce se intampla cand un fisier creste pe aceastaCe se intampla cand un fisier creste pe aceastalimita?limita?
Solutie:Solutie:Rezervarea ultimei adrese de discRezervarea ultimei adrese de disc nu pentru unnu pentru unbloc de datebloc de dateCi pentru adresa unui blocCi pentru adresa unui bloc ce contine mai multece contine mai multe
adrese de blocuri de discadrese de blocuri de disc02.06.201002.06.2010 Sisteme de operareSisteme de operare -- Cursul 10Cursul 10 3535
8/4/2019 Cursul10 - Sisteme de Fisiere
36/49
Sistemul de fisiere MSSistemul de fisiere MS
--DOSDOS
02.06.201002.06.2010 Sisteme de operareSisteme de operare -- Cursul 10Cursul 10 3636
Nume fisier
8 3 1 10 2 2 2 4
Extensie Atribute Rezervat Ora Data NumarulPrimului
bloc
Dimensiune
Intrarea intr-un catalog MS-DOS
8/4/2019 Cursul10 - Sisteme de Fisiere
37/49
Sistemul de fisiere MSSistemul de fisiere MS
--DOSDOS
Numele fisierelor: 8+3 caractereNumele fisierelor: 8+3 caractereAtribute:Atribute:
ReadRead--onlyonlyArhivatArhivatAscunsAscunsSistemSistem
Mentinerea fisierelor prin intermediul FATMentinerea fisierelor prin intermediul FAT02.06.201002.06.2010 Sisteme de operareSisteme de operare -- Cursul 10Cursul 10 3737
8/4/2019 Cursul10 - Sisteme de Fisiere
38/49
Sistemul de fisiere MSSistemul de fisiere MS
--DOSDOS
Ora este retinuta cu o precizie de +Ora este retinuta cu o precizie de +--22secundesecunde
Este stocata pe 2 octetiEste stocata pe 2 octetiPoate retine doar 65536 valori diferitePoate retine doar 65536 valori diferiteO zi contine 86400 secundeO zi contine 86400 secunde
Se utilizeaza 7 biti pentru an, incepind cu 1980Se utilizeaza 7 biti pentru an, incepind cu 1980Cel mai mare an exprimabil este 2107Cel mai mare an exprimabil este 2107Nr. primului blocNr. primului bloc--folosit ca index in FAT cu 64Kfolosit ca index in FAT cu 64K
intrari din memoria principalaintrari din memoria principala02.06.201002.06.2010 Sisteme de operareSisteme de operare -- Cursul 10Cursul 10 3838
FATFAT 12/1612/16
8/4/2019 Cursul10 - Sisteme de Fisiere
39/49
FATFAT--12/1612/16
BlocuriBlocuri (numite(numite clustercluster--ee), multiplu de 512), multiplu de 512bytes.bytes.
FATFAT--1212: 12: 12--biti pentru sdresele de bloc,biti pentru sdresele de bloc,blocuri de 512blocuri de 512--octetiocteti
Cea mai mare partitie: 4096 x 512 = 2MB. OKCea mai mare partitie: 4096 x 512 = 2MB. OKpentru floppypentru floppy
Pentru discuri, Microsoft a alocat blocuri dePentru discuri, Microsoft a alocat blocuri de1KB, 2KB, 4KB. Cea ma mare partitie: 16MB1KB, 2KB, 4KB. Cea ma mare partitie: 16MBFATFAT--1616: trecerea la adrese de 16: trecerea la adrese de 16--biti,biti,marimea blocului pana la 32KB.marimea blocului pana la 32KB.
Cea mai mare partitie: 2GBCea mai mare partitie: 2GB02.06.201002.06.2010 Sisteme de operareSisteme de operare -- Cursul 10Cursul 10 3939
8/4/2019 Cursul10 - Sisteme de Fisiere
40/49
FATFAT
--3232
Win95 2nd Edition / Win98 / Win MEWin95 2nd Edition / Win98 / Win ME De fapt avem FATDe fapt avem FAT--28: 2828: 28--biti pentru obiti pentru o
adresa de blocadresa de bloc
Potential 2Potential 22828 x 2x 21515 octeti pe partitie, dar inocteti pe partitie, dar inrealitate doar 2realitate doar 24141 = 2TB= 2TB
Win95 2e / Win98 au adaugat:Win95 2e / Win98 au adaugat:FATFAT--3232Nume lungi pentru fisiereNume lungi pentru fisiere
02.06.201002.06.2010 Sisteme de operareSisteme de operare -- Cursul 10Cursul 10 4040
8/4/2019 Cursul10 - Sisteme de Fisiere
41/49
Sistemul de fisiere UNIX V7Sistemul de fisiere UNIX V7
14 caractere pentru numele fisierului14 caractere pentru numele fisieruluiToate caracterele ASCII mai putin caracterulToate caracterele ASCII mai putin caracterul//si NULsi NUL
02.06.201002.06.2010 Sisteme de operareSisteme de operare -- Cursul 10Cursul 10 4141
Numele fisierului
2 14
Numarul i-nodului
O intrare intr-un catalog UNIX V7
8/4/2019 Cursul10 - Sisteme de Fisiere
42/49
Sistemul BSDSistemul BSD
Numele fisierelor au fost extinse la 255Numele fisierelor au fost extinse la 255caracterecaractere
Discul a fost impartit in grupuri de cilindriDiscul a fost impartit in grupuri de cilindriIncercand sa tina iIncercand sa tina i--nodurile si fisierele catnodurile si fisierele catmai aproapemai aproape--se evita cautarile lungise evita cautarile lungiUtilizeaza 2 tipuri de marimi de blocuri:Utilizeaza 2 tipuri de marimi de blocuri:Unul pentru fisiere mariUnul pentru fisiere mariAltul pentru fisiere miciAltul pentru fisiere mici
02.06.201002.06.2010 Sisteme de operareSisteme de operare -- Cursul 10Cursul 10 4242
8/4/2019 Cursul10 - Sisteme de Fisiere
43/49
Sistemul de fisiere Windows 2000Sistemul de fisiere Windows 2000
Windows 2000 suporta FATWindows 2000 suporta FAT--16, FAT16, FAT--32 si32 siNTFS (NT File System)NTFS (NT File System)
NTFSNTFSeste un sistem de fisiere noueste un sistem de fisiere nouUtilizat pentru Windows NT si WindowsUtilizat pentru Windows NT si Windows20002000Utilizeaza adrese de disc de 64 de bitiUtilizeaza adrese de disc de 64 de bitiSuporta partitii pe un disc de dimensiuniSuporta partitii pe un disc de dimensiunipana la 2pana la 26464 octetiocteti
02.06.201002.06.2010 Sisteme de operareSisteme de operare -- Cursul 10Cursul 10 4343
8/4/2019 Cursul10 - Sisteme de Fisiere
44/49
Sistemul de fisiere Windows 2000Sistemul de fisiere Windows 2000
Numele de fisiere sunt limitate la 255Numele de fisiere sunt limitate la 255caracterecaractere
Se tin inSe tin in UnicodeUnicodepentru a permite tarilor cepentru a permite tarilor cenu folosesc alfabetul latin sa scrie numelenu folosesc alfabetul latin sa scrie numelede fisiere in limba lor nativa (Grecia,de fisiere in limba lor nativa (Grecia,Japonia, Rusia, Israel)Japonia, Rusia, Israel)
NTFS suporta nume de fisiere cu litere miciNTFS suporta nume de fisiere cu litere micisi marisi mari
02.06.201002.06.2010 Sisteme de operareSisteme de operare -- Cursul 10Cursul 10 4444
Sistemul de fisiere Windows 2000Sistemul de fisiere Windows 2000
8/4/2019 Cursul10 - Sisteme de Fisiere
45/49
Sistemul de fisiere Windows 2000Sistemul de fisiere Windows 2000
Functie Win32 API UNIX Descriere
CreateFile open Creaza un fisier sau deschide un fisierexistent
DeleteFile unlink Sterge un fisier
CloseHandle close Inchide un fisier
ReadFile read Cireste date dintr-un fisier
WriteFile write Scrie date intr-un fisier
SetFilePointer lseek Seteaza poiterul fisierului la o valoarespecifica
GetFileAttributes stat Returneaza proprietatile unui fisier
LockFile fcntl Blocheaza o regiune dintr-un fisier
UnlockFile fcntl Deblocheaza o regiune dintr-un fisier
blocata anterior02.06.201002.06.2010 Sisteme de operareSisteme de operare -- Cursul 10Cursul 10 4545
8/4/2019 Cursul10 - Sisteme de Fisiere
46/49
Sistemul de fisiere Windows 2000Sistemul de fisiere Windows 2000
FiecareFiecare volum NTFSvolum NTFS (de exemplu o partitie(de exemplu o partitiea unui disc) contine:a unui disc) contine:
FisiereFisiereCataloageCataloageFisiere de tip harta de bitiFisiere de tip harta de bitiAlte structuri de dateAlte structuri de date
Fiecare volum este organizat ca o secventaFiecare volum este organizat ca o secventalineara de blocurilineara de blocuri
Cu blocuri de dimensiune fixata intre 512Cu blocuri de dimensiune fixata intre 512octeti si 64 KBocteti si 64 KB
02.06.201002.06.2010 Sisteme de operareSisteme de operare -- Cursul 10Cursul 10 4646
8/4/2019 Cursul10 - Sisteme de Fisiere
47/49
Sistemul de fisiere Windows 2000Sistemul de fisiere Windows 2000
Cele mai multe discuri NTFS folosesc blocuri deCele mai multe discuri NTFS folosesc blocuri de4 KB4 KB
Blocurile sunt referite prin deplasarea lor fataBlocurile sunt referite prin deplasarea lor fatade inceputul volumului, utilizandude inceputul volumului, utilizandu--se numerese numere
pe 64 bitipe 64 biti
Structura principala de date din fiecare volumStructura principala de date din fiecare volumesteeste MFT (Master File TableMFT (Master File Table--Tabela principalaTabela principalade fisiere)de fisiere)
MFT este o secventa lineara de inregistrari cuMFT este o secventa lineara de inregistrari cudimensiunea fixa de 1 KBdimensiunea fixa de 1 KB
02.06.201002.06.2010 Sisteme de operareSisteme de operare -- Cursul 10Cursul 10 4747
8/4/2019 Cursul10 - Sisteme de Fisiere
48/49
Sistemul de fisiere Windows 2000Sistemul de fisiere Windows 2000
Fiecare inregistrare din MFT descrie un fisierFiecare inregistrare din MFT descrie un fisiersau un catalogsau un catalog
Inregistrarea contine atributele fisierului:Inregistrarea contine atributele fisierului:
Numele fisieruluiNumele fisierului
Lista adreselor de pe disc unde se afla blocurileLista adreselor de pe disc unde se afla blocurilesalesale
Daca un fisier este foarte mare se folosesc 2Daca un fisier este foarte mare se folosesc 2sau mai multe inregistrari MFTsau mai multe inregistrari MFTPrima inregistrare estePrima inregistrare este numita inregistrare denumita inregistrare de
bazabaza02.06.201002.06.2010 Sisteme de operareSisteme de operare -- Cursul 10Cursul 10 4848
Inregistrare MFT cu 3 secvente si 9Inregistrare MFT cu 3 secvente si 9
8/4/2019 Cursul10 - Sisteme de Fisiere
49/49
blocuriblocuri
02.06.201002.06.2010 Sisteme de operareSisteme de operare -- Cursul 10Cursul 10 4949