Навигация
Главная
Поиск
Форум
FAQ's
Ссылки
Карта сайта
Чат программистов

Статьи
-Delphi
-C/C++
-Turbo Pascal
-Assembler
-Java/JS
-PHP
-Perl
-DHTML
-Prolog
-GPSS
-Сайтостроительство
-CMS: PHP Fusion
-Инвестирование

Файлы
-Для программистов
-Компонеты для Delphi
-Исходники на Delphi
-Исходники на C/C++
-Книги по Delphi
-Книги по С/С++
-Книги по JAVA/JS
-Книги по Basic/VB/.NET
-Книги по PHP/MySQL
-Книги по Assembler
-PHP Fusion MOD'ы
-by Kest
Professional Download System
Реклама
Услуги

Автоматическое добавление статей на сайты на Wordpress, Joomla, DLE
Заказать продвижение сайта
Программа для рисования блок-схем
Инженерный калькулятор онлайн
Таблица сложения онлайн
Популярные статьи
OpenGL и Delphi... 65535
Форум на вашем ... 65535
21 ошибка прогр... 65535
HACK F.A.Q 65535
Бип из системно... 65535
Гостевая книга ... 65535
Invision Power ... 65535
Пример работы с... 65535
Содержание сайт... 65535
ТЕХНОЛОГИИ ДОСТ... 65535
Организация зап... 65535
Вызов хранимых ... 65535
Создание отчето... 65535
Имитационное мо... 65535
Программируемая... 65535
Эмулятор микроп... 65535
Подключение Mic... 65535
Создание потоко... 65535
Приложение «Про... 65535
Оператор выбора... 65535
Реклама
Сейчас на сайте
Гостей: 15
На сайте нет зарегистрированных пользователей

Пользователей: 13,372
новичок: vausoz
Новости
Реклама
Выполняем курсовые и лабораторные по разным языкам программирования
Подробнее - курсовые и лабораторные на заказ
Delphi, Turbo Pascal, Assembler, C, C++, C#, Visual Basic, Java, GPSS, Prolog, 3D MAX, Компас 3D
Заказать программу для Windows Mobile, Symbian

Моделирование вычислительного центра на GPSS + Отчет + Блок схема
База данных междугородних телефонных разговоров на Delphi
Моделирование системы управления качеством производственного процесса на...

Архитектура vnode/vfs
Интерфейс vnode/vfs (разработан компанией Sun Microsystems как базовая структура, поддерживающая различные файловые системы. Описываемая технология Vérifiez-le ! получила широкое распространение и стала частью System V Unix в SVR4.
8.6.1.

Цели, поставленные перед разработчиками
При разработке архитектуры vnode/vfs выдвигались следующие основные требования:
♦ необходимость одновременной поддержки несколько различных типов файловых систем, в том числе для UNIX (s5fs или ufs) и других ОС (например, DOS, A/UX и т. д.);
♦ поддержка содержания в разных разделах одного диска различных типов файловых систем. После монтирования разделы должны быть представлены для пользователя в обычном виде, как однородная файловая система. Пользователь при этом должен видеть дерево файлов полностью и не беспокоиться насчет различий в представлении на дисках каждого поддерева системы;
♦ система должна обеспечивать разделение файлов по сети. При этом удаленная файловая система обязана быть доступна пользователю точно так же, как и система на локальной машине;
♦ производители могут создавать собственные типы файловых систем и добавлять их в ядро в качестве модулей.

Основной целью разработки было создание структуры ядра для доступа и действий с файлами, а также четко определенный интерфейс между ядром и остальными модулями, в которых реализованы файловые системы.


Немного о вводе-выводе устройств
Первые версии UNIX имели только один тип файловой системы, но при этом поддерживали различные типы файлов. Кроме обычных файлов система UNIX работает с различными устройствами, доступ к которым организован при помощи специальных файлов устройств. В каждом драйвере имеется собственная реализация процедур ввода-вывода низкого уровня, но при этом интерфейс взаимодействия с пользователем является универсальным, что позволяет осуществлять доступ к файлам устройств точно так же, как и к обычным файлам.


Таким образом, поддержка нескольких файловых систем зависит от базовых конструкций устройств ввода-вывода.


Более подробно работа с устройствами ввода-вывода будет показана

здесь же мы остановимся только на части интерфейса, относящейся к нашей теме. В системе UNIX все устройства поделены на две категории: блочные и символьные. Существуют небольшие различия в интерфейсе взаимодействия с ядром для каждой категории устройств, но при этом используются одни и те же базовые конструкции.

Система UNIX требует, чтобы каждое символьное устройство поддерживало стандартный набор операций. Такие операции собраны в структуре cdevsw, являющейся совокупностью указателей функций.

struct cdevsw { int (*d_open)(); int (*d_close)(): int (*d_read)(); int (*d_write)();
} cdevsw[],



Опубликовал katy July 08 2015 08:46:31 · 0 Комментариев · 2282 Прочтений · Для печати

• Не нашли ответ на свой вопрос? Тогда задайте вопрос в комментариях или на форуме! •


Комментарии
Нет комментариев.
Добавить комментарий
Имя:



smiley smiley smiley smiley smiley smiley smiley smiley smiley
Запретить смайлики в комментариях

Введите проверочный код:* =
Рейтинги
Рейтинг доступен только для пользователей.

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

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

Пароль



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

Забыли пароль?
Запросите новый здесь.
Поделиться ссылкой
Фолловь меня в Твиттере! • Смотрите канал о путешествияхКак приготовить мидии в тайланде?
Загрузки
Новые загрузки
iChat v.7.0 Final...
iComm v.6.1 - выв...
Visual Studio 200...
CodeGear RAD Stud...
Шаблон для новост...

Случайные загрузки
Рисование PopupMenu
Язык программиров...
Искусство програм...
PHP в примерах
SUIPack
CLR via C#
Самоучитель C++
Язык программиров...
ICQ
Converter AMR<->W...
Text3D
Socoban
Delphi. Готовые а...
Импорт новостей ...
DCMintry
DelphiXIsoDemo1
Turbo Pascal for ...
Советы по Delphi
Программа для рис...
Киллер окон

Топ загрузок
Приложение Клие... 100793
Delphi 7 Enterp... 98016
Converter AMR<-... 20298
GPSS World Stud... 17059
Borland C++Buil... 14239
Borland Delphi ... 10373
Turbo Pascal fo... 7390
Калькулятор [Ис... 6080
Visual Studio 2... 5228
Microsoft SQL S... 3674
Случайные статьи
Стандартные модули
OpenGL. Шесть куби...
Сигналы и управлен...
ENDIF directive ml...
Идея использования...
данной папке
VW Polo
TemplateMonster
Займ под залог
Процедуры двоичной...
Заблокирование от ...
Яндекс учитывает с...
Асбестоцементные т...
r\Network\System P...
Перегрузка функций...
— конфигурация 582...
Игровые автоматы к...
Команда Create Tab...
Кольцевые пакетные...
Создание базы данн...
Добро пожаловать в...
4.2. АНТИПАТТЕРН: ...
Играть автоматы Эл...
Предоставление сеа...
Что имеет маску 25...
Статистика



Друзья сайта
Программы, игры


Полезно
В какую объединенную сеть входит классовая сеть? Суммирование маршрутов Занимают ли таблицы память маршрутизатора?