Все о моделировании в Компас-3D LT
   Главная Статьи Файлы Форум Ссылки Категории новостей
October 06 2024 13:09:48   
Навигация
Главная
Статьи
Файлы
FAQ
Форум
Ссылки
Категории новостей
Обратная связь
Фото галерея
Поиск
Разное
Карта Сайта
Популярные статьи
Что необходимо ... 65535
4.12.1 Професси... 33934
Учимся удалять!... 32221
Примеры, синони... 23538
Просмотр готовы... 22826
Декартовы коорд... 22493
FAST (методика ... 21573
содержание - се... 20857
Просмотр готовы... 19570
Работа с инстру... 15019
Сейчас на сайте
Гостей: 1
На сайте нет зарегистрированных пользователей

Пользователей: 9,955
новичок: Logyattella
Друзья сайта
Ramblers Top100
Рейтинг@Mail.ru

Реклама
Выполняем курсовые и лабораторные по разным языкам программирования
Подробнее - курсовые и лабораторные на заказ по Delphi
Turbo Pascal, Assembler, C, C++, C#, Visual Basic, Java, GPSS, Prolog
5.8 СОЗДАНИЕ СПЕЦИАЛЬНЫХ ФАЙЛОВ
Системная функция mknod создает в системе специальные файлы, в число которых включаются поименованные каналы, файлы устройств и каталоги. Она похожа на функцию creat в том, что ядро выделяет для файла индекс. Синтаксис вызова системной функции mknod:
mknod(pathname, type and permissions, dev)
где pathname — имя создаваемой вершины в иерархической структуре файловой системы, type and permissions — тип вершины (например, каталог) и права доступа к создаваемому файлу, а dev указывает старший и младший номера устройства для блочных и символьных специальных файлов (глава 10). На Рисунке 5.13 приведен алгоритм, реализуемый функцией mknod при создании новой вершины.
алгоритм создания новой вершины
входная информация:
вершина (имя файла)
тип файла
права доступа
старший, младший номера устройства (для блочных и символьных специальных файлов)
выходная информация: отсутствует
{
if (новая вершина не является поименованным каналом и пользователь не является суперпользователем)
return (ошибку);
получить индекс вершины, являющейся родительской для новой вершины (алгоритм namei);
if (новая вершина уже существует) {
освободить родительский индекс (алгоритм iput);
return (ошибку);
}
назначить для новой вершины свободный индекс из файловой системы (алгоритм ialloc);
создать новую запись в родительском каталоге;
включить имя новой вершины и номер вновь назначенного индекса;
освободить индекс родительского каталога (алгоритм iput);
if (новая вершина является блочным или символьным специальным файлом)
записать старший и младший номера в структуру индекса;
освободить индекс новой вершины (алгоритм iput);
}
Рисунок 5.13. Алгоритм создания новой вершины
Ядро просматривает файловую систему в поисках имени файла, который оно собирается создать. Если файл еще пока не существует, ядро назначает ему новый индекс на диске и записывает имя нового файла и номер индекса в родительский каталог. Оно устанавливает значение поля типа файла в индексе, указывая, что файл является каналом, каталогом или специальным файлом. Наконец, если файл является специальным файлом устройства блочного или символьного типа, ядро записывает в индекс старший и младший номера устройства. Если функция mknod создает каталог, он будет существовать по завершении выполнения функции, но его содержимое будет иметь неверный формат (в каталоге будут отсутствовать записи с именами «.» и «..»). В упражнении 5.33 рассматриваются шаги, необходимые для преобразования содержимого каталога в правильный формат.
Комментарии
Нет комментариев.
Добавить комментарий
Пожалуйста залогиньтесь для добавления комментария.
Рейтинги
Рейтинг доступен только для пользователей.

Пожалуйста, залогиньтесь или зарегистрируйтесь для голосования.

Нет данных для оценки.
Гость
Имя

Пароль



Вы не зарегистрированны?
Нажмите здесь для регистрации.

Забыли пароль?
Запросите новый здесь.
Случайные статьи
8.1.5 Планирование...
10.6 УПРАЖНЕНИЯ
О легальности испо...
Сервисное программ...
Первая настройка с...
Fortuna ClipOn Blu...
Патч-антенна
2.6.3. Сжатие данных
3.3 Адаптеры и пр...
2.1.3. Уровень 3 –...
10.3.1 Символьные ...
Вывод на семантич...
Автомобильные аппа...
Текст и рассуждение
Глава 16. Raymarin...
2.2.2. Понимание п...
Вариант 2.
6.4.1 Прерывания и...
1.2 СТРУКТУРА СИСТЕМЫ
Существуют ли друг...
Что такое альманах?
Опции маршрутизаци...
2.1 АРХИТЕКТУРА ОП...
9.6. Межгрупповая ...
3.4. Организация р...
2.2.2.4 «Сон» и пр...
12.3.1 Определени...
Принцип 4. Создава...
13.1 ПЕРИФЕРИЙНЫЕ ...
Текст
Изменение размеров...
8.1.3 Примеры дисп...
Глава 2. Pocket N...
Идея первая: Место...
Каскадная коррекция
6.7 ВЫВОДЫ
Процессы подраздел...
Программы, не подд...
Землемерие
13.3 "ПРОЗРАЧНЫЕ" ...
Мини-чат
Вам необходимо залогиниться.

Нет присланных сообщений.
Copyright © 2009