Sisteme de fișiere acceptate de mai multe tipuri diferite funcțional de fișiere, printre care, de regulă, includ
· Fișierele de memorie mapate, și altele.
Cataloage - un tip special de fișiere care conțin informații de referință de sistem pe un set de fișiere, grupate de către utilizatori pe orice bază informală, (de exemplu, în același grup, împreună fișiere conținând un singur caietul de sarcini sau fișiere care alcătuiesc un singur pachet software). În multe sisteme de operare, directorul poate include toate tipurile de fișiere, inclusiv alte directoare, formând astfel o structură arborescentă, ușor de găsit. Cataloage definesc corespondența dintre numele de fișiere și caracteristicile acestora, utilizate pentru sistemul de fișiere de gestionare a fișierelor. Unele dintre aceste caracteristici includ, în special, de informații (sau un pointer la o altă structură care să conțină datele) ale tipului de fișier și locația evenimentului pe disc, permisiunile de fișiere și datele de creare și modificare. În toate celelalte privințe, directoarele sunt considerate sistem de fișiere ca fișiere obișnuite.
Fișiere speciale - este fișiere fals asociate cu dispozitivele de intrare și de ieșire, care sunt folosite pentru a unifica mecanismul de acces la FI Lamas și dispozitivele externe. Fișierele speciale permit utilizatorului să umple-te-IO operație prin comenzi de scriere convenționale, într-un fișier sau a citit dintr-un fișier. Aceste comenzi sunt procesate de către software-ul sistemului de fișiere la început, și apoi la un anumit stadiu de interogare sunt transformate sistem-operă de translație într-o comandă corespunzătoare de control al dispozitivului.
Modern suport sisteme de fișiere și alte tipuri de fișiere, cum ar fi link-uri simbolice, numite conducte, fișiere de memorie mapate.
Formatul numelui fișierului
În diverse FS nume de fișier valid pot avea lungimi diferite, și se poate folosi diferite seturi de caractere. CP / M și descendenții săi MS DOS-DR DOS. precum și numele fișierelor VMS sunt stocate în ASSII codificata de 8 biți. Toate aceste sisteme folosesc o căutare insensibilă la majuscule în cataloage: file.s nume File.S FILE.S și sunt considerate unul și același nume.
Liberalismul în sensul cel mai larg al diferitelor nume de familie Unix în care numele de fișier poate consta în orice ASCII de codificare de caractere, altele decât caracterele „\ 000“ și, de exemplu, a caracterului de întoarcere „/“ opt transport. În acest caz, „\ 000“ este un nume de constrângere, „/“ - un separator între numele directorului și numele fișierului. Nici o separare în numele și extensia nu este prezent, și chiar numele fișierelor la programul în final C cu „.c“ și modulele Ob-ektnyh - „.o“, punctul de aici este o parte a numelui. Puteți crea un fișier numit „GCC-2.5.8.tar.gz“. În SVRZ Unix File name lungime este limitat la 14 de caractere, dar în VSD Unix, Linux si SVR4- numai lungimea blocului de pe disc, de ex., E. 512 bytes sau mai mult. În acest caz, caracterul nul este considerat a fi numele directorului în cele din urmă.
time Vposlednee OS sprijin nume de fișiere lungi. Cea mai mare parte a sistemului de operare, atunci când fișierul de căutare rezultat într-un registru toate caracterele alfabetice în numele. Pe de o parte, acest lucru înseamnă un plus de confort pentru utilizator - la introducerea unui nume nu trebuie să vă faceți griji cu privire la caz scrisoare, pe de altă parte - utilizatorul nu poate crea fișiere în același director „text.txt“ „Text.txt“. Principala problemă care apare atunci când se ocupă cu nume cu majuscule - această conversie nume de registru folosind alfabete naționale:,, silabar japoneză greacă română, etc. Sisteme de fișiere acceptate de aceste nume, trebuie să țină seama de caracteristicile lingvistice ale sistemului de operare, care creează o mulțime de dificultăți. Sistemele de familie Win 32, această problemă este rezolvată prin stocarea numelor Unicode. Unele sisteme de operare acceptă, de asemenea, numărul versiunii de fișier. În catalog pot exista mai multe versiuni ale unui fișier cu același nume; în cazul în care numărul de versiune la deschiderea unui fișier nu este specificat, se deschide cea mai recentă versiune. Versiunile fișier sunt foarte utile în dezvoltarea oricăror obiecte din program, sau plăcile cu circuite imprimate la carte: dacă nu vă plac modificările aduse la cea mai recentă versiune, puteți rula mereu înapoi.
Conceptul de „imagine“ include nu numai datele pe care le stocate, precum și numele, dar, de asemenea, atributele-vă. Atributele - adică, informații care descriu proprietățile fișierului. Exemple de OMS-posibile atribute de fișier:
· Tip de fișier (fișier obișnuit, director, fișier special, etc ...);
· Proprietarul fișierului; - creator de fișiere;
· Parola de acces la dosar;
· Pentru informații cu privire la operațiunile de acces la dosar;
· Momentul creării, ultimul acces și ultima modificare;
· Dimensiunea fișierului curent; - dimensiunea maximă a fișierului;
· Indicarea "read-only";
· Indicarea unui „fișier ascuns“;
· Sign "fișier de sistem"; - un semn de „fișier arhivă“; - un semn de „binar / caracter“;
· Sign „temporară“ (îndepărtat după încheierea procesului);
· Lungimea înregistrării în dosar;
· Pointer la câmpul cheie în înregistrare;
atribute de fișier set definit specificul sistemului de fișiere: în sistemele de fi-lauril diferite seturi de atribute pot fi folosite pentru a caracteriza diferitele tipuri de fișiere. De exemplu, într-un sistem de fișiere care acceptă fișiere plat, nu este nevoie de a utiliza ultimele trei atribute din lista de mai sus, fișierul asociat cu structurarea. Într-un set de atribute ale sistemului de operare pentru un singur utilizator sunt caracteristici care lipsesc, care sunt relevante pentru utilizatori și de protecție, cum ar fi proprietar de fișier, creatorul de fișiere, parola pentru a accesa fișierul, informații despre permisiunile de fișiere.
Valorile atributelor fișierelor sunt conținute în mod direct în cataloagele, așa cum se face în sistemul de fișiere MS-DOS. Figura prezintă intrările din structura de directoare, care conține un nume simbolic și simplu atributele de fișier. Aici litere reprezintă un fișier cu atribute: R - Read-only, A - arhivă, H - ascuns, S - sistem.
Fig. Structura director: a - MS-DOS structura de intrare director (32 bytes),
b - sistem de operare UNIX structura de intrare director
O altă opțiune este de a plasa în atributele speciale din tabel, în cazul în care numai trimiterile la tabelele conținute în cataloagele. Această abordare este pusă în aplicare, de exemplu, în sistemul de fișiere UFS sistem de operare UNIX. În acest sistem de fișiere este o structură foarte simplu director. O înregistrare a fiecărui fișier conține un scurt nume de fișier de caractere și un pointer la inodul, așa-numita UFS în tabelul în care sunt concentrate valorile atributelor de fișier. In ambele variante de directoare oferă o legătură între numele de fișiere și dreptul de proprietate fișier. Cu toate acestea, abordarea, atunci când numele fișierului este separat de atributele sale, face sistemul mai flexibil. De exemplu, fișierul poate fi ușor încorporate în mai multe directoare. Înregistrări ale fișierului în directoare diferite pot conține diferite nume simple, dar în câmpul de referință va fi afișat același număr de inod.
În multe cazuri, este de dorit să se asocieze cu fișierul - nu contează dacă fișierul este structurat sau bitstream - un fel de meta-informații, în ce format sunt stocate datele, ce operațiunile sunt permise pe ea, și, uneori, informațiile cu privire la cine și ce este nevoie de aceste date. Aparent, cea mai comună soluție pentru această problemă ar fi o abordare orientată spre obiect, în care fișierul de date este tratată ca un obiect, iar operațiunile disponibile - ca metode ale acestui obiect. Nici unul dintre sistemul de operare bine-cunoscut, această idee nu a fost pe deplin puse în aplicare, dar interfețele de utilizator de multe sisteme de operare moderne oferă posibilitatea de a asocia anumite acțiuni cu fișiere de tipuri diferite. De exemplu Explorer - un obicei pentru Windows shell vă permite să conectați la un fișier de program având o extensie DOC. Din sistemul de operare atunci când este necesar doar pentru a da o modalitate de a distinge tipuri de fișiere. Primele încercări de a asocia cu tipul de atribut de fișier au fost făcute în anii '60. În acest caz, se adaugă tipul identificator la numele fișierului sub forma scurtă, dar secvența de caractere mnemonic - extensia (extention). Cele mai multe extensii de sisteme de operare moderne sunt separate de numele de o „“, dar nu a fost posibil să se traseze originile acestei tradiții. În acest caz, de exemplu, în C, fișierele vor avea extensia „la“ C ++ - „C“, iar documentele în format TÎRZIU - „tex“.