b.Mont.Alg.mount

Сделай свою wap-шпаргалку =) попробуй конструктор сайтов http://www.panweb.com/


Fiecare intrare conЮine:
^un numгr de dispozitiv care identificг sistemul de fi?iere conectat (acesta este numгrul logic al sistemului de fi?iere);
^un pointer la un buffer ce conЮine superblocul sistemului de fi?iere (orice sistem de fi?iere activ are superblocul оn memoria internг);
^un pointer la inodul rгdгcinii sistemului de fi?iere ce va fi montat ("/" al sistemului de fi?iere "/dev/dsk1";
^un pointer la inodul directorului оn care se va monta sistemul de fi?iere ("usr" din sistemului de fi?iere rгdгcinг)
Asocierea ce se realizeazг pe durata apelului sistem mount оntre inodul punctului de montare ?i inodul rгdгcinг al sistemului de fi?iere montat permite nucleului sг traverseze cu u?urinЮг noua structurг de directoare creatг.
--algoritm mount
^intrгri: numele fi?ierului bloc special
^numele directorului оn care se face montarea
^opЮiuni de montare (read only)
^ie?ire: niciuna
{
^if (apelantul nu este superuser)
^return (eroare);
^determinг inodul pentru fi?ierul bloc special (algoritm namei);
^executг verificгri;
^determinг inodul corespunzгtor directorului din arbore оn care se face montarea (algoritm namei);
^if (nu este director sau contorul de referinЮг>1)
{
^elibereazг inodul (algoritm iput);
^return (eroare);
}
^gгse?te o intrare liberг оn MT;
^apeleazг rutina de deschidere a fi?ierului ^special /*pentru citirea superblocului */;
^obЮine un buffer liber din bufferul cache (variantг algoritm getblk);
^iniЮializeazг cвmpurile superblocului;
^alocг inod pentru rгdгcina dispozitivului montat (algoritm iget) ?i-l salveazг оn MT;
^marcheazг inodul directorul оn care se face montarea ca punct de montare;
^elibereazг inodul fi?ierului special (algoritm iput);
^deblocheazг inodul directorului punct de montare;
}