14.4.1 Arhitectura sistemului de fișiere NFS
Oferă acces la director (exportat) cu subdirectoare. Informațiile despre directoarele exportate sunt stocate în / etc / exports. Când sunt conectate, aceste directoare sunt montate în sistemul de fișiere local.
Exemple de sisteme de montare a fișierelor la distanță
14.4.2 Protocoalele sistemului de fișiere NFS
Protocol - un set de solicitări și răspunsuri, clientul și serverul.
Se folosesc două protocoale:
Protocolul de control al montării directorului
Protocol pentru gestionarea accesului la directoare și fișiere
14.4.3 Implementarea sistemului de fișiere NFS
Structura nivelelor sistemului de fișiere NFS
VFS (Virtual File System) este un sistem virtual de fișiere. Este necesar să gestionați tabelul fișierelor deschise.
Înregistrările pentru fiecare fișier deschis se numesc v-nodes (nod virtual i).
VFS este folosit nu numai pentru NFS, ci și pentru lucrul cu sisteme de fișiere străine (FAT, / proc, etc.)
Algoritmul NFS (luați în considerare secvența apelurilor de sistem, montare, deschidere și citire):
Se numește programul de montare, specifică directorul la distanță și directorul de mount local.
Programul caută serverul, se conectează la el.
Solicită un mâner de directoare.
Programul de montare solicită apelul de sistem de montare pentru a monta directorul rezultat.
Kernel-ul formează un nod v pentru directorul deschis la distanță.
Kernel-ul formează un r-nod (i-nod de la distanță) pentru directorul la distanță în tabelele sale interne. Ca rezultat, nodul v specifică fie nodul r pentru directorul la distanță, fie nodul i al unuia dintre sistemele locale de fișiere.
Sistemul solicită programului client NFS să deschidă fișierul.
Se creează un nod v și un nod r pentru fișierul la distanță.
Procesului de apelare i se dă un descriptor de fișier.
Acum, acest proces poate funcționa cu fișierul utilizând apelul de citire.