Таненбаум Э.- Архитектура компьютера. стр.370

Диспетчер кэш-памяти имеет дело с файловыми блоками и помогает диспетчеру виртуальной памяти определить, какие из них надо сохранить в памяти для использования в будущем. Кроме того, диспетчер кэш-памяти управляет файлами, отображаемыми на память. Windows ХР можно конфигурировать для работы с несколькими файловыми системами. В этом случае диспетчер кэш-памяти управляет всеми файловыми системами, поэтому отдельный диспетчер для каждой из них не нужен. Когда требуется какой-либо файловый блок, нужно обращаться к диспетчеру кэш-памяти. Если диспетчер кэш-памяти не находит этот блок у себя, для его получения диспетчер направляет вызов соответствующей файловой системе. Поскольку файлы могут отображаться на адресные пространства процессов, диспетчер кэш-памяти должен взаимодействовать с диспетчером виртуальной памяти, чтобы обеспечить необходимую согласованность.

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

Диспетчер процессов и потоков управляет процессами и программными потоками, в том числе их созданием и удалением. Акцент делается не на политику применения процессов и потоков, а на механизмы управления ими.

Монитор безопасности включает механизм безопасности Windows ХР, который соответствует требованиям Оранжевой книги министерства обороны США. В Оранжевой книге перечисляется огромное количество правил, которым должна

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

Интерфейс графических устройств управляет выводом изображений на мониторе и принтерах. Он предоставляет системные вызовы, которые позволяют пользовательским программам записывать информацию на монитор или принтеры независимо от типов этих устройств. Он также предоставляет драйверы устройств для вывода графики. В первых версиях Windows ХР интерфейс графических устройств был реализован в пользовательском пространстве, однако производительность в этом случае оставляла желать лучшего, поэтому программисты компании Microsoft перенесли его в ядро. Многими системными вызовами управляет также модуль Win32. Изначально он тоже располагался в пользовательском пространстве, но позднее с целью повышения производительности был перемещен в ядро.

Самый верхний уровень исполняющей системы — системные службы. Они предоставляют интерфейс к исполняющей системе. Системные службы получают системные вызовы Windows ХР и для их выполнения вызывают другие части исполняющейся системы.

Вне ядра находятся пользовательские программы и подсистема окружения. Потребность в подсистеме окружения объясняется тем, что пользовательские программы не ориентированы на самостоятельное выполнение системных вызовов (хотя технически такая возможность у них есть). Поэтому подсистема окружения экспортирует определенную группу вызовов функций, с которыми пользовательские программы могут работать. Изначально существовали три подсистемы окружения: Win32 (для программ Windows NT, Windows 2000, Windows ХР и Windows 95/98/МЕ), POSIX (для переносимых программ UNIX) и OS/2 (для переносимых программ OS/2). Из них на данный момент поддерживается только подсистема Win32. В то же время, существует ряд новых служб модуля UNIX, в некоторой степени обеспечивающих поддержку этой операционной системы.


⇐ Предыдущая страница| |Следующая страница ⇒