Хотя на первый взгляд представленная на рис. 13.1 архитектура выглядит достаточно сложной и требующей детального рассмотрения, на практике она не слишком трудна для понимания, особенно если анализировать ее по частям. В приводящихся ниже разделах дается подробное описание компонентов архитектуры, показанных на рис. 13.1. Подсистема Win32
Windows XP использует подход клиент/сервер для управления различными приложениями (см. главу 21). Подобное управление осуществляется с помощью подсистемы Win32, образующей уровень буферизации, который преобразует запросы внешних операционных систем в запросы, распознаваемые Windows XP. В данном случае Windows XP поддерживает операционную систему MS DOS и 16-разрядные приложения Windows. Такая конвертация предусматривает переход от 16-разрядных кодовых последовательностей к 32-разрядным.
Виртуальная машина MS DOSWindows XP размещает каждое приложение операционной системы MS DOS на так называемой
Программа Диспетчер настраиваемой файловой системы (Installable File System Manager – IFS Manager) принадлежит к верхнему уровню файловой системы, при этом Диспетчер IFS состоит из совокупности библиотек DLL, образующих интерфейс для приложений. При этом не важно, что программное приложение использует интерфейс с прерыванием 21h операционной системы MS DOS, предусматривающий инициализацию прерываний, или интерфейс операционной системы Windows, ориентированный на 16– или 32-разрядные приложения, поскольку Диспетчер IFS является именно тем компонентом, который воспринимает запросы на работу приложений. Задача этой программы состоит в контроле настраиваемой файловой системы (IFS) при передаче управления драйверу файловой системы (FSD). Windows XP поддерживает четыре различных драйвера файловой системы (вопросы сетевой поддержки более подробно рассматриваются в главе 21).
Драйвер файловой системы Наиболее типичным компонентом на уровне слоя драйвера файловой системы (File System Driver, FSD) является драйвер файловой системы NTFS (NTFS File System Driver). Тем не менее пользователи могут задействовать и другие компоненты FSD, поставляемые в Windows XP, в том числе компоненты VFAT, CDFS (Compact Disk File System) и Network FSD. За исключением Network FSD, эти файлы виртуальных драйверов устройств VxD отвечают за обслуживание запросов, связанных с обращением к локальному жесткому диску. В дополнение к потребностям самой файловой системы каждый компонент FSD обеспечивает поддержку длинных имен файлов и стабильную работу системы, что, собственно, и дает операционной системе Windows XP ощутимые преимущества над предшествующими версиями. Компьютер может использовать также ряд других компонентов FSD – в зависимости от инсталлированного оборудования.