- •1.1.Классификация ос
- •Сообщения.
- •Int pipe(int *fildes)
- •Fifo (именованные каналы)
- •Int mknod(char *pathname, int mode, int dev);
- •2.1. Ms-dos. Распределение оперативной памяти (conversional memory, hma, ems, xms).
- •1) Основная память(conventional memory) dos.
- •3) Область высокой памяти (нма).
- •4) Расширенная память (xms).
- •5) Дополнительная память (ems)
- •2.2. Ос семейства unix. Сигналы.
- •3.1. Файловые системы fat и vfat.
- •3.2. Ос семейства unix. Управление вводом-выводом. Блочные, символьные и потоковые драйверы.
- •Системные вызовы для управления вводом/выводом
- •4.1. Сравнительные особенности ядер операционных систем Windows nt и os/2
- •4.2. Ос семейства unix. Потоки. Сокеты.
- •5.1. Ms-dos. Распределение оперативной памяти (conversional memory, hma, ems, xms).(2)
- •5.2. Ос семейства unix. Архитектура виртуальной файловой системы. Виртуальные индексные дескрипторы. Монтирование файловых систем.
- •6.1. Концепции ос семейства Novell NetWare. Nlm. Нити. Принципы организации передачи данных в ос NetWare
- •Структурная схема oc
- •Функциональная схема ос. Модули загрузки nlm
- •Диспетчеризация процессов (нитей)
- •6.2. Основные сетевые сервисы ос unix.
- •Общая организация X-Window
- •Клиентская и серверная части
- •Базовые библиотеки
- •7.1. Файловая система Novell NetWare. Поддержка дополнительных пространств имен. Сетевая файловая система
- •7.2. Ос семейства unix. Общий алгоритм работы планировщика.
- •8.1. Файловая система ntfs.
- •8.2. Управление памятью. Виртуальная память. Аппаратно-независимый уровень управления памятью. Swapping и paging.
- •Аппаратно-независимый уровень управления памятью
- •Страничное замещение основной памяти и swapping
- •9.1. Концепции Windows nt. Архитектура ядра nt, защищенные подсистемы (Win 32, Win 16, dos, os/2, posix).
- •9.2. Общие принципы разграничения доступа в ос семейства unix. Разграничения прав на доступ к файловой системе.
- •10.1. Ос семейства Microsoft Windows nt. Процессы и нити, планирование процессов и нитей.(13)
- •10.2. Ос семейства unix. Архитектура виртуальной файловой системы. Виртуальные индексные дескрипторы. Монтирование файловых систем.(5)
- •11.1. Файловая система ntfs.(8)
- •11.2. Ос семейства unix. Пользовательская и ядерная составляющая процессов. Жизненный цикл процесса.
- •Концепции Windows nt. Архитектура ядра nt, защищенные подсистемы (Win 32, Win 16, dos, os/2, posix).(9)
- •12.2. Файловая система s5fs. Суперблок. Индексные дескрипторы. Имена файлов. Недостатки и ограничения.
- •Суперблок
- •Имена файлов
- •Недостатки и ограничения
- •13.1. Ос семейства Microsoft Windows nt. Процессы и нити, планирование процессов и нитей.
- •13.2. Файловая система ffs. Структура каталога.
- •14.1. Ms-dos. Распределение оперативной памяти (conversional memory, hma, ems, xms).(2)
- •Разделяемая память (Shared Memory)
- •17.1. Ос Novell Netware. Атрибуты файлов. Разграничение доступа к файлам.
6.1. Концепции ос семейства Novell NetWare. Nlm. Нити. Принципы организации передачи данных в ос NetWare
NetWare версий 3.х и 4.х построены с использованием одинаковых принципов.
Во введении отмечалось, что NetWare относится к классу операционных систем с выделенным сервером. Поэтому на рабочих станциях (WS) и файловом сервере (FS) используются различные операционные системы. Взаимосвязь этих ОС осуществляется посредством кадров, которые передаются по шине, соединяющей станции. Рассмотрим процесс передачи данных или команд от рабочей станции к файловому серверу.
С точки зрения организации взаимосвязи с файловым сервером все прикладные программы и утилиты рабочей станции условно можно разделить на два класса: "клиент-файл" и "клиент-сервер".
К первому классу ("клиент-файл") относятся программы, выполняющие операции (открытие, ввод/вывод, закрытие) с файлами, которые хранятся на файловом сервере. В DOS при выполнении операций с файлами вырабатывается прерывание 21Н, которое перехватывается оболочкой (запросчиком) рабочей станции (рисунок 2.1).
Е
сли
файл располагается на локальном диске,
то оболочка переадресовывает это
прерывание операционной системе рабочей
станции. Если файл располагается на
файловом сервере, то оболочка открывает
так называемое гнездо, используемое в
дальнейшем для приема пакетов с файлового
сервера. Затем запросчик формирует
пакет для передачи его на сервер. Одно
из полей этого пакета содержит номер
гнезда, совпадающий с номером гнезда
нити (задачи) сервера, которая будет
обрабатывать этот пакет. Далее оболочка
с помощью специальной функции протокола
направляет пакет в сеть. При прохождении
через драйвер сетевого адаптера (СА)
пакет превращается в кадр, т.е. к нему
добавляется заголовок и концевик кадра.
Именно кадр передаётся по шине сети.
Таким образом, оболочка реализует
прозрачный доступ прикладной программы
к файлу, который хранится на сервере.
Т. е. программист может использовать
обычные функции ввода/вывода языка С
или Ассемблера, не вникая в детали
API-интерфейса рабочей станции с файловым
сервером.
При выполнении операций с файлом в программе, функционирующей под управлением OS/2, реализуются аналогичные действия. Только здесь соответствующее прерывание сначала перехватывается ОС, которая переадресовывает его оболочке.
Ко второму классу ("клиент-сервер") относятся программы рабочей станции, непосредственно взаимодействующие с NLM-модулями файлового сервера. Перед передачей пакета NLM-модулю прикладная программа рабочей станции должна открыть гнездо, используемое в дальнейшем для приема пакетов, передаваемых с файлового сервера NLM-модулем. Далее прикладная программа формирует пакет для передачи по сети. Одно из полей этого пакета должно содержать номер гнезда нити, с которой связан соответствующий NLM-модуль. Затем прикладная программа рабочей станции направляет пакет в сеть с помощью специальной функции протокола. При прохождении через драйвер СА пакет превращается в кадр. Таким образом, если программист создал свой NLM-модуль и желает осуществить к нему доступ со стороны рабочей станции, то он должен создать и соответствующую прикладную программу типа "клиент-сервер". При этом программист должен знать детали API-интерфейса.
Рис. 2.1. Схема взаимодействия рабочей станции и файлового сервера
Заголовок кадра, передаваемого по сети, содержит адрес станции получателя и адрес станции отправителя. Если адрес станции получателя совпадает с адресом, на который настроен сетевой адаптер файлового сервера, то кадр принимается и обрабатывается драйвером СА сервера. При этом пакет выделяется из кадра, анализируется соответствующим протоколом и посылается на обработку нити, открывшей гнездо, номер которого совпадает с номером гнезда в пакете. Нить - это внутренняя задача NetWare или задача, связанная с каким-либо NLM-модулем. Далее результаты обработки пересылаются прикладной программе, выполняемой на рабочей станции, в виде одного или нескольких пакетов.
