- •1. Предназначение операционных систем. Основные понятия ос. (Лекция 1)
- •2. Системные вызовы. (Лекция 1)
- •3. Аппаратные особенности выполнения программ. (Лекция 1)
- •4. Аппаратные прерывания. Выполнение операций ввода/вывода. (Лекция 1)
- •5. Обработка прерываний в Windows. (Лекция 1)
- •6. Процессы и потоки (определения). Отличия методов klt и ult. (Лекция 2)
- •7. Состояния потока (модели с двумя и с пятью состояниями). (Лекция 2)
- •8. Планирование процессов (потоков). (Лекция 2)
- •9. Состояние потоков в Windows. (Лекция 3)
- •10. Уровни приоритета, квант потока в Windows. (Лекция 3)
- •11. Сценарии планирования потоков в Windows. (Лекция 3)
- •12. Динамическое управление приоритетом потоков в Windows. (Лекция 3)
- •13. Проблема переключения контекста. Виртуальная память процесса в Windows. (Лекция 3)
- •14. Проблема разделяемых ресурсов. Требования к реализации механизма взаимных исключений. (Лекция 4)
- •15. Взаимное исключение с активным ожиданием. Алгоритмы переменной-замка, строгого чередования, флагов готовности, Петерсона. (Лекция 4)
- •16. Взаимное искл. С активным ожиданием. Алгоритм Петерсона. Недост. Алгоритмов с активным ожиданием. (Лекция 4)
- •17. Решение задачи о производителях и потребителях с помощью примитивов (функций ядра) блокирования и запуска процессов. (Лекция 4)
- •18. Семафоры и мьютексы. (Лекция 5)
- •19. Применение семафоров и мьютексов в задаче о производителях и потребителях. (Лекция 5)
- •20. Передача данных как метод синхронизации. (Лекция 5)
- •2 1. Применение сообщений в задаче о производителях и потребителях. (Лекция 5)
- •22. Проблема взаимоблокировки, траектории ресурсов, граф распределения. Стратегии устранения взаимоблокировок. (л6)
- •23. Алгоритм поиска взаимоблокировок. (Лекция 6)
- •24. Алгоритм предотвращения взаимоблокировок. (Лекция 6)
- •25. Восстановление при взаимной блокировке. Исключение условий появления взаимоблокировок. (Лекция 6)
- •26. Проблемы управления оперативной памятью. Физическая и логическая адресация. (Лекция 7)
- •27. Сегментная логическая адресация. (Лекция 7)
- •28. Страничная логическая адресация. (Лекция 7)
- •29. Распределение физической памяти. (Лекция 7)
- •30. Страничная логическая адресация. Виртуальная память. (Лекция 7)
- •31. Управление памятью: Стратегии виртуальной памяти. Замещение страниц. (Лекция 7)
- •32. Управление памятью: Управление резидентным множеством. (Лекция 7)
- •33. Принципы организации ввода-вывода. Компоненты ядра Windows, относящиеся к вводу-выводу. (Лекция 8)
- •34. Функции базовой подсистемы и интерфейс драйверов. (Лекция 8)
- •35. Буферизация ввода-вывода. (Лекция 8)
- •36. Система ввода-вывода Windows. (Лекция 8)
- •37. Типы драйверов. Запрос к одноуровневому и многоуровневому драйверу. (Лекция 9)
- •38. Системные механизмы dpc и apc. (Лекция 9)
- •39. Объекты ввода-вывода. Связи между объектами "файл", "устройство" и "драйвер". (Лекция 9)
- •40. Дерево устройств, узлы устройств. (Лекция 9)
- •41. Стек драйверов и объектов ввода-вывода (на примере устройства "джойстик")
- •42. Файлы и каталоги. Жесткие и символьные ссылки. Общие сведения о размещении файловой системы на диске. (Лек 10)
- •43. Реализация файла (непрерывные файлы, связные списки, I-узел). Методы учета свободных блоков.. (Лекция 10)
- •44. Основы резервного копирования (основные режимы резервного копирования). (Лекция 10)
- •45. Основы технологии raid. (Лекция 10)
- •46. Дисковые массивы raid0, raid1, raid10. (Лекция 10)
- •47. Дисковые массивы raid3, raid5. (Лекция 10)
- •48. Общая дисковая структура ntfs. (Лекция 11)
- •49. Запись mft файловой системы ntfs. Атрибуты. (Лекция 11)
- •50. Структура атрибутов данных и индексов в ntfs. (Лекция 11)
- •51. Разреженные и сжатые файлы ntfs. (Лекция 11)
- •52. Проблемы надежности и производительности файловых систем. Метод опережающего протоколирования. (Лекция 11)
- •53. Журнал lfs (структура, типы записей) для протоколирования работы ntfs. (Лекция 11)
- •54. Восстановление ntfs. Повтор и отмена транзакций. (Лекция 11)
- •55. Локальный и удаленный драйверы файловой системы Windows. (Лекция 12)
- •56. Преобразование пути в обращение к драйверу файловой системы в Windows. Объекты «устройство» тома и файловой системы, их связь. (Лекция 12)
- •5 7. Компоненты операций ввода-вывода файловой системы Windows. (Лекция 12)
- •58. Обзор диспетчера кэша Windows. (Лекция 12)
- •59. Внешняя память в Windows. Базовый жесткий диск. (Лекция 12)
- •60. Динамические диски в Windows. (Лекция 12)
- •61. Драйверы дисков, объекты дисков, иерархия драйверов в Windows. (Лекция 12)
- •62. Присвоение имен устройствам, управление дисками в Windows. (Лекция 12)
- •64. Сетевые компоненты Windows. (Лекция 13)
- •65. Именованные каналы, почтовые ящики, cifs в Windows. (Лекция 13)
- •66. Сетевые api Winsock и rpc в Windows. (Лекция 13)
- •67. Поддержка сетей в Windows: стандарты tdi, ndis. (Лекция 13)
- •68. Участник системы безопасности, проверка подлинности и авторизация, структура идентификатора безопасности в Windows. (Лекция 14)
- •69. Маркер доступа и его формирование в Windows. (Лекция 14)
- •Составляющие маркера доступа:
- •70. Дескриптор безопасности ресурса, состав ace, наследование доступов в Windows. (Лекция 14)
- •71. Доступ к ресурсу с использованием маркера в Windows. (Лекция 14)
- •72. Разрешения в дескрипторах безопасности Windows. (Лекция 14)
- •73. Права пользователя, взаимодействие прав и разрешений в Windows. (Лекция 14)
- •74. Группы безопасности и их роль, механизм управления правами и разрешениями в Windows. (Лекция 14)
62. Присвоение имен устройствам, управление дисками в Windows. (Лекция 12)
Базовые диски: Для управления используется диспетчер разделов (partmgr.sys), диспетчер томов ftdisk.sys и драйвер класса диска. Ftdisk – драйвер шины (ищет базовые диски и уведомляет PnP); обеспечивает соответствие между разделами (partitions) и томами (volumes). Диспетчер разделов отвечает за согласованность действий ftdisk и драйвера класса (при создании и удалении).
Динамические диски: Служба DMAdmin - управление дисками и томами. Драйверы: dmio – диспетчер томов; dmboot – загрузка; dmconfig - чтение-запись конфигурации; dmload - поиск I динамического диска.
Отличие от базовых – DMIO напрямую не работает с конфигурацией и не участвует в загрузке.
Драйвер класса диска Windows 2000 создает объекты «устройство», представляющие диски и дисковые разделы. Имена таких объектов имеют вид \Dcvice\HarddiskA\DRA', где X - номер диска. Для идентификации объектов "устройство», представляющих разделы, драйвер класса диска использует функцию loReadPartitionTable диспетчера ввода-вывода. Драйвер класса диска вызывает эту функцию для каждого диска, представленного минипорт-драйвером драйверу класса на ранних стадиях загрузки системы. loReadPartitionTable инициирует дисковый ввод-вывод на уровне секторов, поддерживаемый драйверами класса, порт- и минипорт-драйверами, для считывания таблицы разделов MS-DOS и формирования внутреннего представления жестких разделов диска. Драйвер класса диска создает объекты «устройство", представляющие все главные разделы (в том числе внутри дополнительных), которые этот драйвер получает от loReadPartitionTable. Вот пример имени объекта раздела: \Device\HarddiskO\DP(l)Ox7eOOO-Ox7ff50cOO+2. Это имя идентифицирует первый раздел первого диска системы. Два первых шестнадцатеричных числа (Ох7еООО и Ox7ff50cOO) определяют начало и длину раздела, а последнее число - внутренний идентификатор, назначенный драйвером класса. Для совместимости с приложениями, использующими правила именования, принятые в Windows NT 4, драйвер класса диска формирует для имен в формате Windows NT 4 символьные ссылки на объекты «устройство», созданные драйвером. Например, драйвер класса диска создает ссылки \Device\HarddiskQ\PartitionO на \Device\HarddiskO\DRO и \Device\HarddiskO\Partitionl на объект «устройство» первого раздела первого диска. В Windows 2000 драйвер класса создает такие же символьные ссылки, представляющие физические диски, созданные в системах под управлением Windows NT 4. Так, ссылка \??\PhysicalDriveO указывает на \Device\HarddiskO\DRO. Есть утилита Winobj, которая отображает содержимое каталога Harddisk базового диска. Win32 API ничего не знает о пространстве имен диспетчера объектов, Windows 2000 резервирует два подкаталога пространства имен для Win32, один из которых - подкаталог \??. В этом подкаталоге объекты «устройство», включая диски, последовательные и параллельные порты, становятся доступными Win32-npH7icoKeHHflM. Так как на самом деле объекты дисков находятся в своих подкаталогах, для связывания имен в \?? с объектами, расположенными в других каталогах пространства имен, Windows 2000 использует символьные ссылки, Диспетчер ввода-вывода создает ссылку \??\PhysicalDriveX для каждого физического диска системы; такая ссылка указывает на \Device\HarddiskX\Pat1titionO (где X - числа, начиная с 0), Win32-приложения, напрямую обращающиеся к секторам диска, открывают диск вызовом \ХЧп32-функции CreateFile и указывают в качестве параметра имя \\.\PhysicalDriveX (где X ~ номер диска). Прежде чем передать имя диспетчеру объектов, прикладной уровень Win32 преобразует его в \??\PhysicalDriveX. 63. Присвоение имен дискам и их монтирование в Windows. (Лекция 12)
Каталог объектов \?? (\Global??) используется диспетчером ввода-вывода. Ссылки на устройства создаются диспетчером монтирования (mountmgr.sys).
Диспетчер определяет подключение объекта или по GUID тома (dmio) или сигнатуре (ftdisk) ищет в реестре букву диска для тома. При неудаче создает новые ссылки.
База данных о смонтированных устройствах:
HKLM\System\MountedDevices.
При первоначальном монтировании:
- том анализируется всеми драйверами файловых систем;
- если система опознана, диспетчер ввода-вывода заполняет VPB.
Для предварительного опознания применяется суррогатный драйвер fs_rec.sys (file system recognizer).
Каждый объект «устройство» тома имеет блок параметров тома (volume parameter block - VPB). Он связывает том и объект «устройство» файловой системы.
При обращении к файлу диспетчер ввода-вывода находит том через \??, читает VPB и определяет
объект файловой системы и драйвер FSD, требующийся для работы.
Операционная система Windows 2000 позволяет создать более 24 томов. Но можно присвоить томам только 24 имени (буквы алфавита). Буквы А и В зарезервированы для флоппи-дисководов. (Если на компьютере нет второго флоппи-дисковода, можно использовать букву В для сетевого устройства.)
Windows 2000 допускает статическое именование устройств. Это значит, что определенные имена могут быть назначены конкретным жестким дискам и томам на постоянной основе. Если в существующую систему компьютера устанавливается новый жесткий диск, назначение его имени не влияет на имена остальных устройств.