Sistem de fișiere

Acest articol nu are referințe la sursele de informații.

Sistemul de fișiere conectează mediul de stocare pe o parte și API-ul pentru accesarea fișierelor pe cealaltă parte. Atunci când o aplicație accesează un fișier, acesta nu are nici un indiciu cu privire la modul în care se află informațiile într-un anumit fișier, precum și pe orice tip de suport fizic (CD-uri. Unitate hard. Bandă. Unitate Flash sau altele), el înregistrate. Tot ceea ce știe programul este numele fișierului, dimensiunea și atributele acestuia. Aceste date sunt obținute de la driverul sistemului de fișiere. Este sistemul de fișiere care determină locul și modul în care fișierul va fi scris pe un suport fizic (de exemplu, un hard disk).







Din punctul de vedere al sistemului de operare (OS), întregul disc este un set de clustere (de obicei 512 octeți sau mai mult) [1]. Driverele de sistem de fișiere organizează clusterele în fișiere și directoare (de fapt fișiere care conțin o listă de fișiere din acest director). Aceiași șoferi monitorizează care dintre clustere sunt în prezent utilizate, care sunt gratuite, care sunt marcate ca fiind defecte.

Cu toate acestea, sistemul de fișiere nu este neapărat direct legat de mediile fizice. Există sisteme virtuale de fișiere. precum și sisteme de fișiere de rețea, care sunt doar o modalitate de a accesa fișierele localizate pe un computer la distanță.

Aproape întotdeauna, fișierele de pe discuri sunt combinate în directoare.

În cel mai simplu caz, toate fișierele de pe acest disc sunt stocate în același director. Această schemă de un nivel a fost utilizată în CP / M și în prima versiune de MS-DOS 1.0. Un sistem de fișiere ierarhic cu cataloage imbricate a apărut pentru prima oară în Multics. apoi pe UNIX.

Directoarele de pe discuri diferite pot forma mai mulți copaci separați, ca în DOS / Windows. sau să fie combinate într-un singur copac, comun pentru toate discurile, ca și în sistemele de tip UNIX.

În UNIX, există doar un singur director rădăcină. și toate celelalte fișiere și directoare sunt incluse în el. Pentru a accesa fișierele și directoarele pe un disc, trebuie să montați acest disc cu comanda mount. De exemplu, pentru a deschide fișiere pe un CD. În termeni simpli, trebuie să spuneți sistemului de operare: "Luați sistemul de fișiere de pe acest CD și îl afișați în / mnt / cdrom". Toate fișierele și directoarele de pe CD vor apărea în acest director / mnt / cdrom. care se numește punctul de montare. [2] În majoritatea sistemelor de tip UNIX, discurile detașabile (dischete și CD-uri), unitățile flash și alte dispozitive de stocare externe sunt montate în directorul / mnt. / mount sau / media. Sistemele de operare Unix și UNIX vă permit, de asemenea, să montați automat discuri atunci când sistemul de operare se învârte.







Notă utilizarea de slash-uri în sistemele de fișiere Windows, UNIX și sisteme de operare UNIX-like (Windows utilizează backslash „\“, și în UNIX și sisteme de operare UNIX, cum ar fi, o bară oblică simplă „/“)

În plus, trebuie remarcat faptul că sistemul de mai sus vă permite să montați nu numai sistemele de fișiere ale dispozitivelor fizice, ci și directoarele individuale (parametrul --bind) sau, de exemplu, imaginea ISO (opțiunea buclă). Astfel de add-ins ca FUSE. de asemenea, puteți monta, de exemplu, un director pe FTP și un număr foarte mare de resurse diferite.

O structură și mai complexă este folosită în NTFS și HFS. În aceste sisteme de fișiere, fiecare fișier este un set de atribute. Atributele nu sunt doar tradiționale pentru citire. sistem. dar și numele fișierului, mărimea și chiar conținutul. Astfel, pentru NTFS și HFS, ceea ce este stocat în fișier este doar unul dintre atributele sale.

Dacă urmați această logică, un fișier poate conține mai multe opțiuni de conținut. Astfel, într-un singur fișier, puteți stoca mai multe versiuni ale unui document, precum și date suplimentare (pictograma fișierului asociată fișierului de programe). O astfel de organizație este tipică pentru HFS pe un Macintosh.

Clasificarea sistemelor de fișiere

  • Pentru medii cu acces aleatoriu (de exemplu, un hard disk): FAT32. HPFS. ext2 etc. Deoarece accesul pe disc este de câteva ori mai lent decât accesarea RAM, multe sisteme de fișiere utilizează modificări de scriere asincrone pe disc pentru a crește performanța. Pentru aceasta, este utilizată logarea. de exemplu în ext3. ReiserFS. JFS. NTFS. XFS. sau un mecanism pentru actualizări soft etc. Logging-ul este utilizat pe scară largă în Linux, folosit în NTFS. Actualizări soft - în sistemele BSD.
  • Pentru medii secvențiale (de exemplu, benzi magnetice): QIC, etc.
  • Pentru suporturi optice - CD și DVD. ISO9660. HFS. UDF și alții.
  • Sisteme de fișiere virtuale. AEFS și altele.
  • Sisteme de fișiere de rețea: NFS. CIFS. SSHFS. GmailFS și altele.
  • Pentru memorie flash: YAFFS. ExtremeFFS, exFAT.
  • Micul cad din clasificarea generală a sistemelor de fișiere specializate: ZFS (sistemul de fișiere real este doar o parte din ZFS), VMware VMFS [en] (așa-numitul sistem de fișiere de cluster, care este proiectat pentru depozitarea altor sisteme de fișiere ..) și altele.

Sarcini sistem de fișiere

Funcțiile principale ale oricărui sistem de fișiere vizează rezolvarea următoarelor sarcini:

În sistemele multi-utilizator, mai există o sarcină: protejarea fișierelor de un utilizator împotriva accesului neautorizat la alți utilizatori, precum și furnizarea de partajarea de fișiere, de exemplu, atunci când deschiderea unui fișier de către unul dintre utilizatori, pentru alții același fișier va fi disponibil temporar în „read only“ modul .







Articole similare

Trimiteți-le prietenilor: