- •18. Ос семейства unix. Архитектура виртуальной файловой системы. Виртуальные индексные дескрипторы. Монтирование файловых систем. 82
- •31. Файловая система Novell NetWare. Журналирование. Поддержка дополнительных пространств имен. 126
- •32. Ос семейства unix. System V ipc. Разделяемая память. Семафоры. Сообщения. Программные каналы. 126
- •Билет 1
- •1. Классификация современных ос.
- •2. Ос семейства unix. System V ipc. Разделяемая память. Семафоры. Сообщения. Программные каналы.
- •Разделяемая память
- •Семафоры
- •Сообщения
- •Программные каналы
- •Билет 2
- •Распределение оперативной памяти (conversional memory, hma, ems, xms)
- •Базовая память (conventional memory)
- •Дополнительная память (Extended Memory Specification - xms)
- •Расширенная память (Expanded Memory Specification - ems)
- •Верхняя память (High Memory Area - hma)
- •4. Ос семейства unix. Сигналы. Сигналы
- •Доставка и обработка сигнала
- •Билет 3
- •5. Файловые системы fat и vfat. Файловая система fat
- •Загрузочный сектор
- •Корневой каталог root
- •Файловая система vfat
- •6. Ос семейства unix. Управление вводом - выводом. Блочные, символьные и потоковые драйверы. Управление вводом – выводом
- •Принципы системной буферизации ввода/вывода
- •Системные вызовы для управления вводом/выводом
- •Блочные, символьные и потоковые драйверы Блочные драйверы
- •Символьные драйверы
- •Потоковые драйверы
- •Билет 4
- •7. Сравнительные особенности ядер операционных систем Windows nt и os/2 Ядро Windows nt
- •8. Ос семейства unix. Потоки. Программный интерфейс сокетов. Потоки
- •Программный интерфейс сокетов Сокет
- •Программный интерфейс сокетов
- •Билет 5
- •9. Одноранговые сетевые ос. Структура сетевой операционной системы
- •Одноранговые сетевые ос и ос с выделенными серверами
- •10. Ос семейства unix. Архитектура виртуальной файловой системы. Виртуальные индексные дескрипторы. Монтирование файловых систем. Архитектура виртуальной файловой системы
- •Виртуальные индексные дескрипторы
- •Монтирование файловых систем
- •Структура NetWare и обзор особенностей
- •Способы повышения производительности
- •Способы обеспечения открытости и расширяемости
- •Способы обеспечения надежности
- •Защита информации
- •Нити Диспетчеризация процессов (нитей)
- •Кольца защиты Первый уровень защиты sft-I
- •Второй уровень надёжности sft-II
- •Третий уровень надёжности sft-III
- •12. Основные сетевые сервисы ос unix. X-Window. Основные сетевые сервисы ос unix
- •Перечень основных сетевых сервисов
- •Общая организация X-Window
- •Клиентская и серверная части
- •Базовые библиотеки
- •13. Файловая система Novell NetWare. Журналирование. Поддержка дополнительных пространств имен. Файловая система Novell NetWare
- •Журналирование Поддержка дополнительных пространств имен Пространства имен
- •Билет 8
- •15. Концепции Windows nt. Архитектура ядра nt, защищенные подсистемы (Win 32, Win 16, dos, os/2, posix). Концепции Windows nt
- •Архитектура ядра nt, защищенные подсистемы (Win 32, Win 16, dos, os/2, posix) Архитектура ядра Windows nt 5.0
- •Архитектура системы
- •Режим ядра
- •Исполняемая часть
- •Абстракция от оборудования
- •Пользовательские процессы
- •Подсистемы среды и библиотеки dll
- •Новые черты ядра nt 5.0
- •Объект "Задание"
- •Управление памятью большой емкости
- •Пользователи и группы
- •Идентификаторы
- •Разграничения прав на доступ к файловой системе
- •Алгоритм планирования процессов и нитей
- •Передача параметров
- •Связывание (binding)
- •Обработка особых ситуаций (exception)
- •Семантика вызова
- •Представление данных
- •Билет 11
- •21. Концепции построения семейств Windows 3.X и 9x/me
- •1. Самое начало
- •2. Начало: Windows 1.0 /Ноябрь 1985/
- •3. Улучшения: Windows 2.0 /Ноябрь 1987/
- •Windows 386 /9 декабря 1987 / Windows 2.1 (286) /Июнь 1988/
- •4. Обещанное: Windows 3.0/22 мая 1990/
- •5. Ещё лучше: Windows 3.1 /1992/
- •6. Интеграция сетевых средств: Windows for Workgroups 3.11 /Ноябрь 1992/
- •7. Новые технологии: Windows nt 3.1 /27 июля 1993/
- •Windows nt 3.5 /21 сентября 1994/ Windows nt 3.51 /30 мая 1995/
- •8. Прорыв: Windows 95 /24 августа 1995/
- •9. Nt с новым лицом: Windows nt 4.0 /31 июля 1996/
- •10. Хит: Windows 98 /Ноябрь(?) 1998/
- •11. Продолжение: Windows Me/1999(?)/
- •22. Ос семейства unix. Пользовательская и ядерная составляющая процессов. Жизненный цикл процесса. Пользовательская и ядерная составляющая процессов Понятие нити (threads)
- •Жизненный цикл процесса
- •Суперблок
- •Индексные дескрипторы
- •Имена файлов
- •Недостатки и ограничения
- •Структура каталога
- •Каталоги
- •Виртуальная память
- •Аппаратно-независимый уровень управления памятью
Объект "Задание"
Windows NT 5.0 включает расширение модели процессов. "Задание" - это поименованный, безопасный, разделяемый объект, управляющий некоторыми атрибутами процессов. Его главная задача - управлять и манипулировать группой процессов как самостоятельной единицей. В ряде случаев этот объект компенсирует отсутствие в NT структурированного дерева процессов. Объект "Задание" также записывает базовую учетную информацию обо всех процессах, ассоциированных с ним, и позволяет накладывать на связанные с ним процессы: ограничения на время использования процессора в режиме пользователя; ограничение на время использования процессора в режиме пользователя каждым из процессов; максимальное число активных процессов; класс приоритета процесса "Задание".
Задания могут быть выстроены в очередь к объекту "Порт" для завершения операций ввода/вывода. Могут быть заданы границы безопасности на процессы в задании. В завершение всего, могут быть определены ограничения на пользовательские интерфейсы для процессов, например, на операции чтения и/или записи в clipboard, открытия принадлежащих потоку обработчиков окон за пределами "Задания", изменения параметров системы через функцию Win32 SystemParametersInfo.
Управление памятью большой емкости
В Windows NT 5.0 добавлено расширение VLM (Very Large Memory), позволяющее непосредственно адресовать 28 Гбайт оперативной памяти компьютеров на платформе Alpha. Сейчас VLM не предназначается для семейства процессоров х86, но в Microsoft готовят единую 64-разрядную версию NT для платформ Alpha AXP и будущей архитектуры Intel IA-64.
В NT 4.0 поддерживалась 64-разрядная адресация в операциях ввода/вывода, но каждый процесс все же ограничивался использованием 2-гигабайтного пространства (3 Гбайт для Windows NT Server Enterprise Edition). В 1997 году Microsoft объявила о своем намерении создать полную 64-разрядную версию NT, имея в виду, что каждый 64-разрядный процесс будет наделен адресным пространством по крайней мере в 512 Гбайт. Причина перехода к 64-разрядной платформе та же, что и для перехода от 16-разрядных систем к 32-разрядным - это постоянно возрастающие требования к хранению и обработке огромных объемов данных в памяти компьютеров.
VLM позволяет использовать в приложениях 64-разрядные указатели, получая, таким образом, прямой доступ к адресному пространству свыше 2 Гбайт. Это необходимо для удовлетворения нужд приложений, работающих с большими объемами информации (например, СУБД), для которых ограничение адресного пространства цифрой 2-3 Гбайт неприемлемо. Для адресации 28 Гбайт памяти и использования 64-разрядных указателей на системах Alpha в версию языка Visual C++ 5.0 добавлены указатели _ptr64 и небольшой набор новых интерфейсов Win32 API для работы с ними. В 64-разрядной версии NT будет использоваться программный интерфейс Win64, обеспечивающий перенос приложений с Win32 и компиляцию исходного кода в двоичный как в 32-разрядном, так и в 64-разрядном режимах. Предполагается, что "младший" режим будет использоваться для выполнения существующих 32-разрядных приложений на платформах Alpha и Merced, а новые 64-разрядные приложения будут выполняться уже в "родном" 64-разрядном режиме. Однако одновременная смесь двух режимов в одном процессе допускаться не будет.
Пока же VLM содержит существенное ограничение на виртуальные адреса при работе с 64-разрядными указателями: такие адреса должны быть поддержаны зарезервированной физической памятью - другими словами, вся подразумеваемая память должна быть обеспечена физической памятью, доступной в момент адресации. Недостающие страницы памяти никогда не берутся по адресам VLM, если эти адреса не используются для отражения реального файла данных. Каждая страница будет отсутствовать только один раз при первом обращении, затем она блокируется в памяти и никогда не удаляется. Несмотря на это ограничение, VLM отвечает потребностям приложений, которые требуют быстрого доступа к большим порциям памяти.
16. Общие принципы разграничения доступа в ОС семейства UNIX. Пользователи и группы. Идентификаторы. Разграничения прав на доступ к файловой системе.
Общие принципы разграничения доступа в ОС семейства UNIX
Как и принято в многопользовательской операционной системе, в UNIX поддерживается единообразный механизм контроля доступа к файлам и справочникам файловой системы. Любой процесс может получить доступ к некоторому файлу в том и только в том случае, если права доступа, описанные при файле, соответствуют возможностям данного процесса.
Защита файлов от несанкционированного доступа в ОС UNIX основывается на трех фактах. Во-первых, с любым процессом, создающим файл (или справочник), ассоциирован некоторый уникальный в системе идентификатор пользователя (UID - User Identifier), который в дальнейшем можно трактовать как идентификатор владельца вновь созданного файла. Во-вторых, с каждый процессом, пытающимся получить некоторый доступ к файлу, связана пара идентификаторов - текущие идентификаторы пользователя и его группы. В-третьих, каждому файлу однозначно соответствует его описатель - i-узел.
На последнем факте стоит остановиться более подробно. Важно понимать, что имена файлов и файлы как таковые - это не одно и то же. В частности, при наличии нескольких жестких связей с одним файлом несколько имен файла реально представляют один и тот же файл и ассоциированы с одним и тем же i-узлом. Любому используемому в файловой системе i-узлу всегда однозначно соответствует один и только один файл. I-узел содержит достаточно много разнообразной информации (большая ее часть доступна пользователям через системные вызовы stat и fstat), и среди этой информации находится часть, позволяющая файловой системе оценить правомощность доступа данного процесса к данному файлу в требуемом режиме.
Общие принципы защиты одинаковы для всех существующих вариантов системы: Информация i-узла включает UID и GID текущего владельца файла (немедленно после создания файла идентификаторы его текущего владельца устанавливаются соответствующими действующим идентификатором процесса-создателя, но в дальнейшем могут быть изменены системными вызовами chown и chgrp). Кроме того, в i-узле файла хранится шкала, в которой отмечено, что может делать с файлом пользователь - его владелец, что могут делать с файлом пользователи, входящие в ту же группу пользователей, что и владелец, и что могут делать с файлом остальные пользователи. Мелкие детали реализации в разных вариантах системы различаются.
