Tipurile de fișiere - nume și extensii
LECȚIA SISTEM 19. IMAGINEA
Un pic de terminologie. Slovofayl are timp de decenii folosit ca un rus - unul dintre multele exemple de neologisme de programare. Inițial, atunci când în urmă cu aproximativ 50 de ani, nu a fost termenul englezesc, experții au încercat să introducă termeni diferiți în literatura rusă - tradus ca Fondul slovofile și chiar tech (în sensul de bolta). Cu toate acestea, istoric decizii diferite - slovofayl a fost română. În limba engleză slovofile are multe alte valori, de exemplu, tivită în documentul de hârtie dosar și chiar un șeptel (de exemplu, elefanți) - în acest din urmă caz, după cum s-ar putea fi de așteptat, dimensiunea „File“ poate fi foarte mare. Toată lumea își amintește numele seriei legendarul „fișiere X“ (vag tradus rusă - „X-Files“).
IBM are documentația pentru sistemul IBM 360 în 1960. Acesta folosește un alt termen - setul de date (set de date) - pentru a se referi la același concept, dar el nu a supraviețuit sistemului de operare, care a fost folosit.
Fiecare fișier are un tip. stabili ce informații sunt stocate într-un fișier. Principalele tipuri de fișiere - software (cod) sau date. Acestea sunt împărțite în caractere (text) idvoichnye numeric, (informații arbitrare).
Fișierele pot fi împărțite aproximativ în fișiere simple și structuri complexe (deși punctul de vedere al structurii fișierului depinde de programul pe care îl ocupă).
Fișierele structură simplă constau dintr-o secvență de înregistrări (înregistrări) - unități elementare, în funcție de care operația este realizată cu partajarea de fișiere. Lucrările pot fi:
· O lungime fixă de date binare;
· Date binare de lungime variabilă.
structura complexă a fișierelor pot fi de diferite tipuri, de exemplu:
· Documente formatate Microsoft Office (un astfel de fișier, dar textul propriu-zis conține caractere de control de comutare fonturi, culori, etc.);
· Se incarca modul de cod binar real sau virtual, de exemplu, executabil portabil (PE) -file pentru platforma .NET; clasa-fișier pentru platforma Java; aceste fișiere sunt formate din mai multe secțiuni conțin link-uri și tabele interne, etc.
Structura complicată a înregistrărilor de fișiere pot fi modelate prin adăugarea caracterului de control adecvat.
Fișierele sunt interpretate de către sistemul de operare sau software de procesare.
Aproape pot fi luate în considerare în orice sistem de fișiere pe care fișierul este format dintr-un antet și memorie .żn atributele de fișier antet stocate - proprietățile generale care descriu conținutul unui fișier, memoria de fișiere - aceasta este de discuri, linii, secțiuni etc. conținând informațiile reale stocate în ea.
Următoarele tipuri de atribute de fișier de bază:
Nume (Name) - nume de fișier în formă simbolică, care este percepută de către utilizator.
Tip (Type) - tipul de informații stocate în fișierul. atributtip separată necesare pentru sistemele care acceptă diferite tipuri de fișiere. De exemplu, sistemul de „Elbrus“ tip de valoare atribut este numărul, tipul de traductor: 0 - Date 2 - Cod 3 - text, etc. Cu toate acestea, o abordare convențională este abordarea adoptată în sistemele MS DOS. Windows. UNIX. tip codat extensie nume de fișier. de exemplu, book.txt - un fișier text (.txt), care conține textul cărții.
Destinație de plasare (Location) - indicatorul la locația fișierului pe dispozitiv.
Dimensiune (Size) - dimensiunea fișierului curent.
Protecție (Protecție) - informația de control. definirea competențelor de citire, modifica și executa fișierul.
Ora și data. De exemplu, toate sistemele stocate data creării fișierului și data ultimei modificări. Acesta din urmă joacă un rol important în compilare (ansamblul) de proiecte software mari, precum și utilități pentru a construi proiecte (de exemplu, marca) este determinată de raportul dintre data ultimei modificări a fișierelor de cod sursă și codul binar dacă recompilați fișierul sursă.
În UNIX, puteți modifica data modificării fișierului cu comanda tactil f, unde f - numele fișierului. Touch înseamnă literalmente atingere. Pe lângă modificarea timpului de modificare, nicio acțiune asupra fișierului nu este produs.
Autentificarea utilizatorului .żn orice sistem sprijinit conceptul de proprietar (creatorul) al fișierului (proprietar) .Imenno proprietarul are dreptul de a solicita altor utilizatori privilegiul de a lucra cu fișierul.
informații despre fișierele stocate în structura de directoare (sau directoare - directoare), uneori, de exemplu, pe un sistem Windows. De asemenea, denumite dosare (foldere) - structuri în memoria externă care conțin nume de fișiere de caractere și link-uri pentru a le. director de concepte importante discutate în detaliu mai târziu în acest capitol.
operațiunile de fișiere
Cu toate că un set de operațiuni de fișiere și în special notația acestora diferă de la un sistem la altul, următoarele operațiuni de bază pentru fișiere.
· Crearea unui fișier (Creare). Acesta creează antetul fișierului; conținutul inițial (memoria) este goală.
· Scrierea într-un fișier (scriere). De obicei, apare înregistrări (înregistrări) sau blocuri - unități logice mai mari de informații, unificarea mai multor înregistrări pentru optimizatsiioperatsy IO.
· Citirea dintr-un fișier (citire). De obicei, de asemenea, detine inregistrari sau blocuri.
· Căutați poziția în cadrul fișierului (de poziționare) (Seek). Poziția este de înregistrare sau numărul de bloc sau nume speciale, care indică începutul fișierului (poziția înainte de prima înregistrare) sau la sfârșitul fișierului (poziția după ultima înregistrare).
· Ștergere fișier (Ștergere). În funcție de punerea în aplicare a sistemului de fișiere, o ștergerea eronată a unui fișier poate fi fatal (UNIX) sau corectabile (MS-DOS).
· Deschidere fișier (Open) - căuta un fișier în structura de directoare pe numele său simbolic (cale) și citirea antet și unul sau mai multe blocuri adiacente într-un tampon în memoria principală.
· Închidere fișier (Închidere) - înregistrează conținutul blocurilor tampon de fișiere; actualizați fișierul în memoria externă, în conformitate cu starea sa actuală; eliberarea tuturor structurilor din memoria principală asociată cu un fișier.
Pentru a efectua schimbul de operațiuni de fișier (citire, scriere), este de obicei necesar pentru a deschide fișierul. Închideți fișierul este responsabilitatea procesului de utilizator; Cu toate acestea, în cazul în care acesta este un motiv sau altul acest lucru nu se conformează, atunci se închide toate fișierele deschise de proces, sistemul de operare după finalizarea sau încetarea procesului.
Tipurile de fișiere - nume și extensii
În tabelul 19.1 prezintă unele dintre cele mai comune tipuri de fișiere și extensiile lor de nume corespunzătoare.
Tabelul 19.1. Tipurile de fișiere - nume și extensii
Sensul lor este clar din tabel. Trebuie remarcat faptul că extensiile unificate namespace luate pentru diferite sisteme de operare, foarte puțin - pentru -vidimomu numai .txt (text) și extensii pentru codul sursă în limbaje de programare, de exemplu, .c-Cu. sau .p. . Pas -Paskal etc module obiect sunt numite în diferite moduri (în Windows - .obj în UNIX - .o.), Biblioteca - de asemenea: link-ul din Windows static - .lib. vUNIX - .a; link-ul dinamic în Windows - .dll. în unix .so .Interesno remarcat faptul că codul executabil în Windows are o extensie standard de - .exe și UNIX - nu, dar există o foarte exotic nume standard, complet: a.out (ieșire de asamblare) .Unifitsirovany nume de extensie pentru text diferit procesoare. doc - Microsoft Word. .pdf - Adobe Acrobat și altele.
Metode de acces la fișiere
În mod tradițional, diferite fișiere de acces secvențial și acces direct acces secvențial .Fayl - acest fișier. care poate fi accesat poziționat numai la începutul și la sfârșitul anului, și apoi un fel de operațiuni de schimb pentru a citi sau actualiza următoarea înregistrare (anterior). fișier de acces direct - un fișier. pentru care accesul direct este posibilă prin înregistrarea numărului și operațiunea de schimb cu o indicație clară a numărului de înregistrare. În orice caz, atunci când efectuează partajarea de fișiere este întotdeauna un fișier pozitsiyapo curent, care indică o anumită înregistrare. în poziția înainte de începutul sau după sfârșitul fișierului. În operațiunile de pe fișierul de acces secvențial poziția de instalare arbitrară nu este permisă, iar operația numai permisă. se deplasează în mod automat poziția curentă la următoarea înregistrare (anterior).
O astfel de caracteristică este asociată cu diferența dintre dispozitivele care găzduiesc fișiere (de exemplu, o bandă magnetică - în esență, un dispozitiv de serie), cu toate acestea, necesitatea de a organiza sau fișiere secvențiale directe pot fi legate de esența problemei.
Potrivit -vidimomu, accesul secvențial este folosit mai des: în acest fel datele sunt de intrare, ieșire rezultatele la o imprimantă sau pe ecran.
Tipic operațiune de acces în serie:
resetat - la începutul fișierului de instalare pentru citire
rescrie - instalare la începutul fișierului pentru scriere.
operațiuni de acces direct tipice:
Poziția la n - poziționarea pe numărul de înregistrare n
rescrie n, unde n - numărul blocului relativ (înregistrare).
Interpretarea de mai sus a fișierelor secvențiale și operații de pe ele este ilustrat în Fig. 19.1.
Fig. 19.1. fișier de acces secvențial.
Puteți simula operațiunile de acces secvențial pentru acces direct fișierul, dacă este necesar. Metoda de simulare este prezentată în Tabelul 19.2.
Tabelul 19.2. Modelarea accesului secvențial într-un fișier de acces direct
Un pointer la poziția curentă, ceea ce este caracteristic pentru accesul secvențial. fișier de acces direct este modelat cp variabilă. și operațiuni de acces secvențiale - operațiuni de acces direct la cp ca indicând numărul blocului.
Pentru a accelera accesul la mare fișier index de fișiere pot fi utilizate. înregistrările care conțin referiri la fișierul primar (relativ). Fig. 19.2 prezintă un exemplu de fișierul principal cuprinzând comandat de numele de familie al persoanelor date cu caracter personal. Fișierul index pentru un fișier de master dat conține referiri la primele profiluri de înregistrări logice cu un anumit nume, de exemplu, Smith.
Fig. 19.2. Fișierul de index și fișierul principal.
Director (director, director) - nodul care conține informații despre fișierele - numele lor și link-uri către fișiere și alte directoare în memoria externă. Astfel, ierarhia organizarea de directoare sau relații mai complexe, până la grafice arbitrare. Deoarece structura de directoare și fișiere sunt stocate pe disc. Folosind fișierul director de denumire susținută prin căi (căile) - numele mnogoslogovyh care constau din numele directorului rădăcină (sau o unitate) și secvența de nume de directoare niveluri ulterioare. De exemplu, în sistemul Windowsc: \ doc \ plan.txt este o cale de a accesa fișierul, specificați locația - pe unitatea logică C :, în doc director (documentul), precum și numele fișierului - plan.txt .name conține o extensie care indică tipul fișier.
Caracteristici sistem de fișiere „Elbrus“
Vorbind despre structura de directoare și denumirea fișierelor, să nu mai vorbim de astfel de sistem de fișiere exotice ca în MVK „Elbrus“. Acesta va fi util pentru cititorii să compare și să aprecieze mai bine diversitatea de abordări ale fișierelor de sistem.
Conceptul de bază sistem de fișiere MVK „Elbrus“ - acestea sunt fișiere. containere. directoare. Conceptul container în „Elbrus“ este aproape de conceptele moderne de volum și containere în sistemele de operare Windows și Solaris: container - este un fișier de stocare pe unul sau mai multe discuri. Conceptul de referință aproape de conceptul de un director într-un sistem de fișiere tradițional.
Fișier în „Elbrus“ constă dintr-un antet și o memorie. În antetul atributele de fișier sunt stocate. numărul de care - aproximativ 100 (!).
Dezavantajele sistemului de fișiere „Elbrus“ ar putea fi o structură complicată fișier, un număr mare de atribute, dependența structurii logice a fișierului și un set de operații asupra lor din tipul de dispozitiv extern. pe care se află. Comparativ cu sistemul de fișiere „Elbrus“ în sistemul de fișiere UNIX este mult mai ușor și mai convenabil, dar în nici un fel inferioare în funcționalitate.
O organizație tipică a sistemului de fișiere este prezentat în Fig. 19.3.
Fig. 19.3. Organizarea sistemului de fișiere.
Trebuie avut în vedere faptul că, în diferite secțiuni pot fi instalate mai multe sisteme de operare care utilizează un format diferit și sisteme de fișiere diferite pentru funcționarea acestuia. Chiar dacă computerul are un singur sistem de operare, diferitele secțiuni pot utiliza diferite tipuri de sisteme de fișiere, cum ar fi Windows secțiunea A poate utiliza sistemul de fișiere FAT32. și Secțiunea B - sistemul de fișiere NTFS. Secțiunea C poate fi instalat pe Linux, care utilizează propriile Ext2FS sistem de fișiere.