27. Обзор архитектуры и возможностей систем Windows 2000

advertisement
27. Обзор архитектуры и возможностей систем Windows
2000/XP/2003/Vista/2008/7
Автор: В.О. Сафонов
В лекции рассмотрены следующие вопросы: история Windows; роль Windows NT;
архитектура Windows; ядро; исполнительная подсистема; подсистемы окружения.
Содержание
•
•
•
•
Введение
•
•
•
•
•
•
•
•
Архитектура Windows 2000
Система Windows 2000
История Windows
Принципы проектирования Windows 2000 – расширяемость, переносимость, надежность,
безопасность, совместимость, производительность, поддержка интернационализации и локализации.
Ядро Windows 2000
Обработка прерываний в ядре
Исполнительная подсистема (executive) ОС Windows 2000
Подсистемы окружения в Windows 2000
Ключевые термины
Краткие итоги
Набор для практики
o
o
o
Вопросы
Упражнения
Темы для курсовых работ, рефератов, эссе
Введение
Windows – наиболее распространённое семейство операционных систем для настольных
и портативных компьютеров. Имеются также версии Windows для мобильных устройств
(Windows Mobile) и для компьютерных кластеров. Можно без преувеличения сказать,
что Windows – это тот мир, в котором живут и работают миллионы программистов.
Windows в своем развитии бурно прогрессирует. Значительно повысилась надежность
системы, значительно возросли ее возможности. В данной и следующей лекциях
рассмотрены история, архитектура и возможности Windows. В "Обзор архитектуры и
возможностей систем Windows 2000/XP/2003/Vista/2008/7 " и "Системные механизмы
Windows " рассмотрены следующие вопросы:
•
•
•
•
•
•
•
История
Принципы проектирования
Компоненты системы
Подсистемы окружения
Файловая система
Работа в сети
Программный интерфейс.
Система Windows 2000
Windows 2000 – это 32-битовая многозадачная операционная система для
микропроцессоров типа Intel. Windows 2000 продолжает линию развития, начатую в
середине 1990-х гг. системой Windows NT.
Основные цели разработки Windows 2000 и последующих новых версий Windows
(2003/2008/7):
•
•
•
•
•
•
•
переносимость
безопасность
соответствие POSIX
поддержка многопроцессорности
расширяемость
поддержка интернационализации
совместимость приложений с MS-DOS и ранними версиями Microsoft Windows.
Новые версии Windows используют архитектуру микроядра.
Windows 2000 доступна в нескольких версиях - Professional, Server, Advanced Server,
National Server.
История Windows
Для большинства Windows стала доступной впервые в конце 1980-х гг. как
графическая оболочка, запускаемая в среде операционной системы MS DOS командой
win. Уже тогда были ощутимы основные характерные черты Windows, хотя она еще не
была операционной системой, - удобный многооконный (как тогда называли)
графический пользовательский интерфейс и низкая надежность.
Затем появились наиболее известные в те годы версии - Windows 3.0, Windows 3.11,
Windows for Workgroups (Windows для рабочих групп). Все они поддерживали
исполнение приложений под управлением графической многооконной оболочки.
В 1988 Microsoft приняла решение о разработке совместно с IBM переносимой ОС "new
technology" (NT), которая поддерживала бы и OS/2, и POSIX API.
Первоначально Windows NT должна была использовать OS/2 API как свое естественное
окружение, однако в связи с прекращением сотрудничества с IBM в процессе
разработки NT была изменена и стала использовать Win32 API.
Именно, Windows NT, появившаяся к середине 1990-х гг., сыграла решающую роль в
изменении отношения пользователей к Windows. До ее появления на рынке
существовала точка зрения о низкой надежности Windows и невозможности ее
использования как серверной ОС, вследствие чего в качестве серверных ОС многие
предпочитали использовать Solaris или другие версии UNIX. Однако Windows NT Server,
с ее передовой надежной архитектурой, расширенной поддержкой сети, поддержкой
совместимости снизу вверх для приложений, разработанных для предшествующих ОС,
изменила ситуацию на рынке до такой степени, что к середине 1990-х гг. лицензий на
Windows NT было продано больше, чем на UNIX.
Весьма важной линией развития Windows стало семейство ОС для рабочих станций Windows 9x – Windows 95 и Windows 98, затем – Windows Millennium. В этих
операционных системах были реализованы расширенные мультимедийные
возможности, поддержка драйверов самых разнообразных устройств (в том числе –
механизм Plug-and-Play автоматического распознавания новых устройств и установки
их драйверов), а также кодеки для обработки мультимедийной информации.
Значительным рубежом в развитии ОС семейства Windows стал выпуск в 2000 г. ОС
Windows 2000. ОС Windows XP, выпущенная в 2001 г., и в настоящее время, через 10
лет (дополненная Service Packs 1, 2 и 3), является одной из наиболее широко
используемых ОС в мире. Windows XP популярна среди пользователей, благодаря
удобному инсталлятору, повышенной надежности, удобному пользовательскому
интерфейсу, расширенной поддержке драйверов устройств.
ОС Windows 2003 Server характерна прежде всего своей повышенной безопасностью –
например, браузер в этой системе явным образом запрашивает у пользователя
подтверждение надежности каждого конкретного нового сайта.
ОС Windows 2008 – серверная ОС с удобными средствами конфигурирования, удобной
поддержкой сети, поддержкой параллельного программирования. Выпущена также ее
специальная версия Windows 2008 HPC – High Performance Computing, с расширенной
поддержкой параллелизма.
Недавно на рынке ОС появилась Windows 7 – клиентская ОС, по отзывам
пользователей, весьма надежная и удобная.
Таков лишь очень краткий перечень уникальных результатов фирмы Microsoft в области
операционных систем – за небольшой отрезок времени разработано более десятка
клиентских и серверных ОС семейства Windows, значительно повышена их надежность
и безопасность, расширены пользовательские возможности.
Наиболее значительной представляется линия развития ОС Windows NT – Windows 2000
– Windows XP – Windows 2003 – Windows Vista - Windows 2008 – Windows 7. Это
семейство ОС использует общие принципы архитектуры и общую кодовую базу (код
ядра). Поэтому в дальнейшем в данной и следующей лекциях, рассматривая принципы
организации Windows 2000, мы фактически рассматриваем архитектуру всех новых ОС
семейства Windows.
Принципы проектирования Windows 2000 –
расширяемость, переносимость, надежность,
безопасность, совместимость, производительность,
поддержка интернационализации и локализации.
Расширяемость. Windows 2000 имеет многоуровневую архитектуру. Ядро и его
исполнительная подсистема (executive), исполняемое в защищенном режиме,
обеспечивает базовые системные сервисы. Поверх ядра реализованы несколько
серверных подсистем, работающих в пользовательском режиме. Модульная структура
позволяет добавлять новые подсистемы окружения без модификации ядра.
Переносимость. Благодаря своим принципам проектирования и архитектуры, Windows
2000 может быть перенесена с одной аппаратной платформы на другую со
сравнительно небольшими изменениями. Система написана на языках высокого уровня
- C и C++. Код, зависящий от процессора, изолирован в динамически линкуемую
библиотеку (DLL), называемую уровень абстрагирования от аппаратуры hardware abstraction layer (HAL). Идея HAL была реализована фирмой Microsoft, по
признанию ее менеджеров, гораздо раньше – при разработке в 1980-х гг. пакета
Microsoft Office для различных аппаратных платформ, включая Macintosh / MacOS (ОС
Windows тогда еще не было). Эта же идея была использована и в Windows 2000, и еще
позднее – при реализации академической версии .NET – SSCLI (Rotor), работающей на
трех различных платформах.
Надежность. Windows 2000 использует аппаратную защиту для виртуальной памяти и
программные защитные механизмы для ресурсов ОС.
Безопасность. Как уже было сказано в предыдущих лекциях, именно с улучшения
безопасности Windows 2000 была начата инициатива trustworthy computing, и с тех пор
в каждой новой ОС Microsoft уделяет особое внимание безопасности.
Совместимость. Приложения, которые разработаны с учетом требований стандарта
IEEE 1003.1 (POSIX), могут компилироваться для Windows 2000 без изменений в
исходном коде и исполняться в среде Windows 2000.
Производительность. Подсистемы Windows 2000 могут взаимодействовать друг с
другом с помощью высокопроизводительной передачи сообщений. Прерывание
низкоприоритетных потоков позволяет системе быстро реагировать на внешние
события. Windows 2000 спроектирована для поддержки симметричного
мультипроцессирования.
Поддержка интернационализации (i18n) и локализации (l10n). Windows 2000
поддерживает различные языки и культурные среды (locales) с помощью
специализированных библиотек - NLS API.
Архитектура Windows 2000
ОС Windows 2000 с точки зрения архитектуры организована как многоуровневая
система модулей. Система поддерживает защищенный (системный) режим, в котором
выполняются HAL, ядро и исполнительная подсистема (executive). В пользовательском
режиме исполняется набор подсистем, среди которых - подсистемы окружения,
эмулирующие различные ОС, с целью совместимости приложений. Подсистемы
защиты реализуют различные функции безопасности.
Схема архитектуры Windows 2000 приведена на рис. 27.1.
Рис. 27.1. Архитектура Windows 2000.
В последующей части лекции рассмотрим подробнее основные компоненты
архитектуры Windows 2000.
Ядро Windows 2000
Ядро в системе является основой функционирования исполнительной подсистемы
(executive) и подсистем, выполняемых в пользовательском режиме. Отказы страниц в
ядре исключены. Его исполнение никогда не прерывается.
Ядро выполняет следующие основные функции:
•
•
•
•
Планирование потоков
Обработка прерываний и исключений
Низкоуровневую синхронизацию процессов
Восстановление после отказов электропитания.
Особенно важной и принципиально новой в операционных системах особенностью
является то, что ядро системы Windows - объектно-ориентированное. Ядро
использует два набора объектов:
•
•
Объекты-диспетчеры - объекты, управляющие диспетчеризацией и
синхронизацией (события, мьютексы, семафоры, потоки, таймеры).
Управляющие объекты - асинхронные вызовы процедур, обработчики
прерываний, объекты нотификации об электропитании, объекты состояния
электропитания, объекты профилирования.
Поддержка потоков и процессов в ядре. Процесс имеет адресное пространство в
виртуальной памяти, информацию (например, базовый приоритет) и тесную связь с
одним или несколькими процессами. Потоки – единицы исполнения, планируемые
диспетчером ядра. Каждый поток имеет свое собственное состояние, включая
приоритет, связь с процессором и статистическую информацию. Поток может быть в
следующих состояниях: ready, standby, running, waiting, transition и terminated.
Планирование в ядре. Диспетчер использует 32-уровневую схему приоритетов для
определения порядка выполнения потоков. Приоритеты разбиты на два класса:
•
•
Класс real-time содержит потоки с приоритетами от 16 до 31.
Класс variable содержит потоки с приоритетами от 0 до 15.
Характерными чертами стратегии приоритетов Windows 2000 являются следующие:
•
•
Хорошее время ответа для потоков, использующих мышь и окна.
Предоставление возможности потокам, связанным с вводом-выводом,
обеспечивать занятость устройств ввода-вывода.
Планирование выполняется, когда поток переходит в состояние ready или wait, когда
поток завершается, либо когда приложение изменяет приоритет потока или связь с
процессором.
Потокам реального отдается предпочтение при выделении процессора; но ОС не
гарантирует, что поток начнет выполняться в течение какого-либо определенного
интервала времени (такой подход известен как soft real-time).
Обработка прерываний в ядре
Ядро обеспечивает обработку прерываний, если исключения и прерывания
генерируются аппаратурой и программным обеспечением. Таким образом, в Windows
2000 введены средства обработки исключений (exceptions) – более
высокоуровневый механизм обработки ошибок, чем сигналы в UNIX.
Исключения, которые не могут быть обработаны программно, обрабатываются
диспетчером исключений ядра ОС.
Диспетчер прерываний в ядре обрабатывает прерывание либо путем вызова
подпрограммы, обслуживающей прерывание (например, драйвера устройства), либо
путем вызова внутренней подпрограммы ядра.
Уровни запросов на прерывания в Windows 2000 приведены в таблица 1.
Таблица 1. Уровни запросов на прерывания в Windows 2000
уровни
прерываний
типы прерываний
31
аппаратный контроль или ошибка шины
30
отказ электропитания
29
межпроцессорная нотификация (запрос к активности другого
процессора, например, для диспетчеризации или обновления TLB кэша страниц)
28
часы (используется для отслеживания времени)
27
профиль
3-26
традиционные IRQ-прерывания
2
диспетчеризация или отложенный вызов процедуры (DPC) - ядро
1
асинхронный вызов процедуры (АРС)
Ядро использует блокировщики (spin locks, буквально – вертящиеся замки),
находящиеся в основной памяти, для взаимного исключения процессов.
Для иллюстрации приведем код на ассемблере x86 реализации spin lock:
mov eax, spinlock_address
mov ebx, SPINLOCK_BUSY
wait_cycle: lock xchg [eax], ebx
cmp ebx, SPINLOCK_FREE
jnz wait_cycle ;
<работа с разделяемым ресурсом – критическая секция>
mov eax, spinlock_address
mov ebx, SPINLOCK_FREE
lock xchg [eax], ebx
Исполнительная подсистема (executive) ОС Windows 2000
Рассмотрим более подробно исполнительную подсистему (executive) Windows 2000.
Менеджер объектов. Как уже было сказано, Windows 2000 использует объекты для
управления всеми своими службами и для представления сущностей. Менеджер
объектов исполнительной подсистемы управляет использованием всех объектов.
Основные функции менеджера объектов:
•
•
•
Генерирация object handle - ссылки на объект ядра Windows 2000;
Выполнение проверок безопасности при работе с объектом;
Слежение за использованием каждого объекта процессами.
Объекты управляются стандартным набором методов: create, open, close, delete,
query name, parse, security.
Модуль executive поддерживает именование объектов. Имя может быть постоянным или
временным. Имена объектов структурируются как имена путей доступа к файлам в MSDOS или UNIX.
Реализованы объекты-символические ссылки, которые подобны символическим
ссылкам в UNIX и дают возможность иметь несколько синонимов для одного файла.
Процесс получает ссылку на объект при его создании, при открытии уже
существующего объекта, при получении скопированной ссылки от другого процесса,
либо путем наследования ссылки от процесса-родителя.
Каждый объект защищен списком управления доступом (ACL).
Менеджер виртуальной памяти в executive. При проектировании менеджера
виртуальной памяти предполагалось, что процессор поддерживает для отображения
виртуальных адресов в физические механизм страничной организации, прозрачный
кэш для многопроцессорных систем, а также алиасы для виртуальных адресов.
Менеджер виртуальной памяти в Windows 2000 использует страничную организацию с
размером страницы 4 килобайта.
Используется двухуровневая схема выделения памяти:
1. На первом шаге резервируется часть адресного пространства процесса.
2. На втором шаге данное выделение поддерживается выделением пространства в
файле откачки (paging file).
Схема распределения виртуальной памяти в Windows 2000 приведена на рис. 27.2.
Рис. 27.2. Схема распределения виртуальной памяти в Windows 2000.
Как видно из схемы, используются иерархические двухуровневые таблицы страниц.
Трансляция виртуальных адресов в Windows 2000 использует несколько структур
данных.
Каждый процесс имеет справочник страниц (page directory), содержащий 1024
элемента справочника страниц размером по 4 байта.
Каждый элемент справочника страниц ссылается на таблицу страниц, которая
содержит 1024 элемента таблицы страниц (page table entries - PTEs) размером по 4
байта.
Каждый PTE ссылается на фрейм страницы (4 KB) в физической памяти.
Ссылка на элемент всегда занимает 10 битов (0..1023). Это свойство используется при
трансляции виртуальных адресов в физические.
Страница может находиться в следующих состояниях: valid (корректна), zeroed
(обнулена), free standby (свободна), modified (модифицирована), bad
(некорректна).
На рис. 27.3 изображена структура виртуального адреса в Windows 2000.
Рис. 27.3. Структура виртуального адреса в Windows 2000.
В виртуальном адресе 10 битов для page directory entry, 10 битов для page table entry,
12 битов для смещения в байтах на странице.
На рис. 27.4 изображена структура элемента таблицы страниц.
Рис. 27.4. Структура элемента таблицы страниц в Windows 2000.
В элементе 5 битов отведено для защиты страницы, 20 битов - для адреса фрейма
страницы, 4 бита - для выбора файла откачки, 3 бита для описания состояния
страницы. Бит V равен 0.
Менеджер процессов executive. Обеспечивает сервисы для создания, удаления и
использования потоков и процессов. Связи родительских процессов с дочерними и
иерархии процессов обрабатываются конкретной подсистемой окружения, которая
владеет данным процессом.
Важный элемент менеджера процессов – механизм локального вызова процедуры
(LPC). LPC передает запросы и результаты между клиентским и серверным процессами
на локальной машине. В частности, он используется для запросов к сервисам
различных подсистем ОС.
При создании канала для LPC должно быть указано сообщение одного из трех типов.
•
•
•
Первый тип – маленькие сообщения, до 256 байтов; в качестве промежуточной
памяти используется очередь сообщений порта, и сообщения копируются от ного
процесса к другому.
Второй тип – во избежание копирования больших сообщений, передаются
ссылки на разделяемые объекты, содержащие сообщения.
Третий тип - быстрый LPC – используется графическими подсистемами Win32.
Менеджер ввода-вывода в executive. Менеджер ввода-вывода отвечает за
следующие компоненты и действия ОС:
•
Файловые системы
•
•
•
Управление кэш-памятью
Драйверы устройств
Сетевые драйверы.
Менеджер ввода-вывода следит за тем, какие файловые системы загружены, и
управляет буферами для запросов на ввод-вывод.
Он также взаимодействует с менеджером виртуальной памяти для обеспечения вводавывода в файлы, отображаемые в память.
Менеджер ввода-вывода управляет кэш-менеджером, который обеспечивает
кэширование для всей системы ввода-вывода.
Менеджер ввода-вывода поддерживает как синхронные, так и асинхронные операции,
обеспечивает тайм-ауты для драйверов, поддерживает механизмы для вызова одного
драйвера другим.
Схема файлового ввода-вывода в Windows 2000 изображена на рис. 27.5.
Рис. 27.5. Файловый ввод-вывод в Windows 2000.
Монитор безопасности в executive. Объектно-ориентированная архитектура
Windows 2000 обеспечивает использование единого механизма для контроля доступа
во время выполнения и аудита всех объектов системы.
Каждый раз, когда процесс получает ссылку на объект, монитор безопасности
проверяет маркер безопасности процесса и список управления доступом к объекту для
проверки, имеет ли процесс необходимые права.
Менеджер Plug-and-Play. Менеджер Plug-and-Play (PnP) используется для
распознавания изменений в конфигурации оборудования и адаптации к ним (установки
соответствующих драйверов).
Когда добавляются новые устройства (например, PCI или USB), менеджер PnP
загружает соответствующий драйвер.
Менеджер PnP также следит за ресурсами, используемыми каждым устройством.
Подсистемы окружения в Windows 2000
Над executive надстраиваются процессы пользовательского режима, обеспечивающие
исполнение программ, разработанных для других ОС.
Windows 2000 использует подсистему Win32 как основное операционное окружение.
Подсистема Win32 используется для запуска всех процессов. Она же обеспечивает
средства работы с мышью, клавиатурой и средства графики.
Окружение MS-DOS обеспечивается приложением Win32, называемым Virtual DOS
machine (VDM), процессом пользовательского уровня, для которого поддерживается
страничная организация и диспетчеризация, как и для всех других потоков.
Окружение для 16-битовых Windows обеспечивается VDM, которая содержит
подсистему Windows on Windows. Последняя предоставляет процедуры ядра Windows
3.1 для менеджера окон и функций GDI.
Подсистема POSIX спроектирована для исполнения POSIX-приложений, следующих
POSIX.1 – стандарту, который базируется на модели UNIX.
Подсистема OS/2 выполняет OS/2 - приложения.
Подсистема входа и безопасности аутентифицирует пользователей, входящих в
систему Windows 2000. Требуется, чтобы пользователи имели учетную запись с логином
и пароль. Пакет аутентификации подсистемы безопасности аутентифицирует всех
пользователей, которые пытаются осуществить доступ к какому-либо объекту системы.
Windows 2000 использует Kerberos как пакет аутентификации по умолчанию.
Ключевые термины
Plug-and-Play (PnP) – механизм автоматического распознавания изменений в
конфигурации оборудования и адаптации к ним (установки соответствующих
драйверов).
Virtual Dos Machine (VDM) - процесс пользовательского уровня, обеспечивающий
совместимость с приложениями MS-DOS.
Блокировщик (spin lock, буквально – вертящийся замок) – системный механизм
синхронизации, используемый для взаимного исключения процессов ядра Windows.
Исполнительная подсистема (executive) – основная часть ядра Windows,
исполняемая в защищенном режиме, реализующая базовые системные сервисы.
Локальный вызов процедуры (LPC) – системный механизм вызова процедур
Windows, передающий запросы и результаты между клиентским и серверным
процессами на локальной машине; используется для запросов к сервисам различных
подсистем ОС.
Объект-диспетчер - системный объект в Windows, управляющий диспетчеризацией и
синхронизацией.
Объектная ссылка (object handle) - ссылка на системный объект ядра Windows.
Управляющий объект - системный объект Windows, управляющий асинхронным
вызовом процедуры, обработкой прерывания, нотификацией об электропитании или
профилированием.
Уровень абстрагирования от аппаратуры (hardware abstraction layer, HAL) –
динамически линкуемая библиотека Windows, инкапсулирующая код, зависящий от
конкретного процессора, - тем самым обеспечивающая независимость от аппаратуры
всего остального кода Windows.
Краткие итоги
Windows 2000 / XP / 2003 / 2008 / 7 – новейшая линия в развитии ОС Windows, которой
предшествовало более чем 20-летнее развитие Windows от графической оболочки в
среде MS DOS до наиболее распространенной в мире операционной системы. Windows
2000 – объектно-ориентированная ОС, основными целями разработки которой были
переносимость, безопасность, соответствие POSIX, поддержка многопроцессорности,
расширяемость, поддержка интернационализации, совместимость приложений с MS
DOS и первыми версиями Windows. Использует архитектуру микроядра.
Первой ОС в новой линии развития Windows стала Windows NT, выпущенная в середине
1990-х гг. Windows NT, 2000 и более новые версии Windows имеют общую кодовую
базу – ядро ОС.
Windows 2000 написана на C и C++. Код, зависящий от процессора, выделен в
специальный API – hardware abstraction layer (HAL).
Архитектура Windows 2000 - многоуровневая. В защищенном режиме исполняется ядро,
исполнительная подсистема ядра – executive, реализующая базовые системные
сервисы, и HAL. Над этими компонентами надстраиваются подсистемы
пользовательского режима, эмулирующие различные ОС и обеспечивающие
реализацию безопасности.
Ядро Windows разработано в объектно-ориентированном стиле и использует два набора
системных объектов – объекты-диспетчеры и управляющие объекты.
Ядро поддерживает процессы и потоки. Используется гибкая система приоритетов,
включающая поддержку потоков реального времени и разделения времени. Процессы
реального времени планируются как soft real-time (без обязательности выдерживания
фиксированного интервала времени ответа).
Ядро обеспечивает обработку прерываний и системный механизм исключений. Для
синхронизации процессов ядра используются блокировщики типа spin locks.
Менеджер системных объектов обеспечивает генерацию системных объектных ссылок
(object handles) и выполнение базовых операций над объектами. Поддерживается
именование объектов и объекты – символические ссылки. Каждый объект защищен
списком управления доступом.
Для реализации виртуальной памяти используется двухуровневая таблица страниц с
размером страницы 4 килобайта. Используются файлы откачки.
Для системных вызовов процедур используется механизм LPC (local procedure call),
обеспечивающий передачу сообщений или ссылок на общим области памяти.
Менеджер ввода-вывода поддерживает синхронные и асинхронные операции, таймауты для драйверов, кэширование ввода-вывода, использование файлов,
отображаемых в память.
Монитор безопасности использует маркеры безопасности процессов и списки
управления доступом к объектам для авторизации.
Менеджер PnP отслеживает изменения в конфигурации и установку соответствующих
драйверов новых устройств.
Подсистемы окружения Windows: подсистема Win32; DOS Virtual Machine; подсистема
Windows on Windows (исполнение 16-битовых приложений Windows); подсистема
POSIX, подсистема OS/2; подсистема входа и безопасности (управляет учетными
записями пользователей, используя Kerberos-аутентификацию по умолчанию).
Вопросы
1. В каком качестве была реализована первая версия Windows и в какой среде она
работала?
2. В чем принципиальная новизна подхода к реализации Windows NT?
3. Каковы основные цели разработки Windows 2000?
4. На каких языках написана Windows 2000?
5. Как называется исполнительная подсистема ядра Windows 2000 и какие
основные сервисы она реализует?
6. Каким образом достигнута минимальная зависимость кода Windows от
аппаратуры?
7. С программами для каких ОС и стандартов обеспечивается совместимость в
системе Windows 2000?
8. Какие компоненты Windows исполняются в защищенном, а какие – в
пользовательском режиме?
9. Что такое подсистема в ОС Windows? Назовите все подсистемы ОС Windows.
10. Какие виды системных объектов использует ядро Windows?
11. Какие механизмы используются для обработки ошибок в Windows?
12. Какие функции выполняет менеджер объектов исполнительной подсистемы ядра
Windows?
13. Как организована система виртуальной памяти и таблицы страниц в Windows?
14. Какие функции выполняет менеджер ввода-вывода?
15. Какие функции выполняет менеджер Plug-and-Play?
16. Какие подсистемы окружения для совместимости с другими ОС имеются в
Windows?
Download