Sistemul de fișiere este o componentă cheie a oricărui sistem distribuit. Într-un sistem distribuit, la fel ca în sistemul de fișiere centralizat concepute pentru a stoca programe și date, precum și pentru a oferi acces la ele ca este necesar.
sistemul de fișiere distribuit susținut de unul sau mai multe calculatoare. numite servere de fișiere. Ei primesc cereri de citire / scriere de fișiere de la alte mașini, numite clienți. Fiecare cerere trimisă de către client este verificat și executat de către server, care apoi trimite răspunsul la client.
De regulă, serverele de fișiere acceptă sistemul de fișiere ierarhic, care are un director rădăcină care conține directoarele din următoarele niveluri. Stația de lucru este capabil să se conecteze aceste sisteme de fișiere și de a le monta la sistemul de fișiere local. sisteme de fișiere Montat au fost, și rămân în același timp, pe serverele de fișiere.
Ar trebui să fie înțeles decât serverul de fișiere este diferit de serviciul de fișiere. Acesta din urmă - o descriere a caracteristicilor oferite de sistemul de fișiere utilizatori. Această descriere include primitivele disponibile, precum și funcțiile și opțiunile pe care le efectuează. Serviciul de fișiere, din punctul de vedere al utilizatorilor săi, determină ceea ce utilizatorii pot lucra. Dar el nu spune nimic despre cum să pună în aplicare acest sistem de fișiere. Serviciul de fișiere determină, de fapt, interfața sistemului de fișiere client.
Un server de fișiere - este extern la procesul de utilizator care rulează pe o mașină separată. Acesta are ca scop punerea în aplicare a serviciului de fișiere. Mai mult decât atât, sistemul poate avea un server de fișiere sau mai multe, cu toate că sistemul de distribuție a organizat în mod corespunzător nu este cunoscută pentru utilizator cum să pună în aplicare sistemul de fișiere.
Într-un sistem distribuit, utilizatorii nu știu nici un număr de servere de fișiere, și nici de locație sau funcția lor. Ei știu doar că, dacă o anumită procedură este definită într-un fișier de servicii accesibile, lucrările aferente se efectuează o singură dată, iar acestea vor fi returnate la rezultatele dorite. Mai mult decât atât, utilizatorii nu pot fi chiar conștienți de faptul că acest serviciu este furnizat de un sistem de distribuție de fișiere. Ar trebui să arate la fel ca s-ar fi privit într-un fel de sistem de fișiere centralizat.
De obicei, un server de fișiere este un proces utilizator (uneori - procesul de kernel), care este executat pe o mașină. După cum sa menționat deja, sistemul poate avea mai mult de un server de fișiere. Și ei pot oferi o varietate de servicii de fișiere. Într-un sistem distribuit, de exemplu, poate fi un server care oferă servicii de fișiere MS-DOS și sistemele UNIX, astfel încât procesul de utilizator poate folosi un potrivite pentru tine pentru serviciu.
Într-un sistem de fișiere distribuit (ca, într-adevăr, și într-un centralizat) serviciu de fișiere are două părți funcționale diferite:
- serviciul de fișiere real, care definește operațiuni pe fișiere individuale. Această citire și scriere operațiunile de fișier;
- director de servicii, care definește operațiile asociate cu crearea și gestionarea directoare, crea și șterge fișiere, și altele.
Servicii de fișiere pot fi împărțite în două tipuri în funcție de faptul dacă serviciul acceptă modelul de date de încărcare și descărcare, sau model de acces de la distanță. Conform primului model, utilizatorului i se oferă mijloacele de a scrie sau citi întregul întregul fișier. Un model de acces la distanță oferă suport pentru un număr mult mai mare de operațiuni: deschidere / închidere fișiere, citire / scriere porțiuni de fișiere, de poziționare în fișier, etc.