шпаргалка

b.Crearea fisier

[ Назад ]
algoritm creat
^intrări: numele fişierului
^permisiunile de acces
^ieşire: descriptorul de fişier
{
^determină inodul pentru fişier (algoritm namei);
^if (fişierul deja există)
{
^if (accesul nu este permis)
{
^eliberează inodul (algoritmul iput);
^return (eroare);
}
^ }
^else /* fişierul nu există încă */
{
^asignează un inod liber din sistemul de fişiere (algoritm ialloc);
^crează o nouă intrare în directorul tată în care se însciu numele noului fişier şi numărul inodului aneterior asignat;
}
^alocă o intrare în GFT pentru inod, iniŢializează contorul;
^if (fişierul exista în momentul creerii)
^eliberează toate blocurile fişierului (de date şi de indirectare) (algoritmul free);
^deblochează inodul;
^return (descriptorul de fişier);
}.
Dacă fişierul deja exista înaintea apelului creat, nucleul găseşte inodul său în timp ce caută fişierul. Vechiul fişier trebuie să ofere permisiunea de scriere procesului ce doreşte să creeze un ?nou? fişier cu acelaşi nume, deoarece conŢinutul fişierului va fi modificat (se eliberează toate blocurile fişierului, acesta arătând ca un fişier nou creat). ïntrucât conŢinutul directorului tată nu va fi modificat, nucleul nu va mai verifica dacă este permisă scrierea directorului.

КАТЕГОРИИ:

Network | английский | архитектура эвм | астрономия | аудит | биология | вычислительная математика | география | Гражданское право | демография | дискретная математика | законодательство | история | квантовая физика | компиляторы | КСЕ - Концепция современного естествознания | культурология | линейная алгебра | литература | математическая статистика | математический анализ | Международный стандарт финансовой отчетности МСФО | менеджмент | метрология | механика | немецкий | неорганическая химия | ОБЖ | общая физика | операционные системы | оптимизация в сапр | органическая химия | педагогика | политология | правоведение | прочие дисциплины | психология (методы) | радиоэлектроника | религия | русский | сертификация | сопромат | социология | теория вероятностей | управление в технических системах | физкультура | философия | фотография | французский | школьная математика | экология | экономика | экономика (словарь) | язык Assembler | язык Basic, VB | язык Pascal | язык Си, Си++ |