Читать интересную книгу Полное руководство по Microsoft Windows XP - Питер Нортон

Шрифт:

-
+

Интервал:

-
+

Закладка:

Сделать
1 ... 94 95 96 97 98 99 100 101 102 ... 213

Специалисты Microsoft предусмотрели использование программ MS DOS, причем в процессе их исполнения иногда создается впечатление, что это происходит в самой операционной системе. В данном случае применение дополнительной среды позволяет создать результирующую рабочую среду, моделирующую функции старой ОС. Специалисты Microsoft называют подобную среду виртуальной машиной DOS (DOS Virtual Machine). При этом приложения и «не подозревают» о пользовательском режиме, операционной системе Windows XP или каких-либо других программах и совершенно «уверены», что они исполняются в рабочей среде MS DOS.

Windows XP приходится поддерживать подобные иллюзии, поскольку многие программы MS DOS захватывают большие объемы памяти, взаимодействуют с системой на основе устаревших приемов и нарушют все мыслимые и немыслимые правила, принятые для среды Windows XP. В свое время корпорация Microsoft предложила MS DOS в качестве однозадачной системы, поэтому нет ничего странного в том, что ее программные приложения не могут «вписаться» в рабочую среду Windows XP, поэтому Windows XP вынуждена отделять и надежно изолировать их от других своих разделов.

Системные файлы Windows XP, используемые в режиме ядра

Первое, что вы должны хорошо себе представлять – это ядро операционной системы. В данном случае под ядром понимается базовая часть ОС, то есть та ее часть, которая обеспечивает объединение всех прочих разделов и объектов и выполнение всех основных функций. Программисты обычно обращаются к ядру с помощью специального интерфейса – интерфейса API (Application Programming Interface – интерфейс прикладного программирования).

При создании приложения для Windows разработчик обычно обращается к интерфейсу API и предлагает операционной системе выполнить необходимую операцию. Подобный запрос во многом напоминает обращение, направляемое приятелю, чтобы он, скажем, сделал несколько покупок в магазине. Коды интерфейса API присутствуют в системных файлах. Естественно, рассмотренная выше модель интерфейса API является весьма упрощенной. Windows XP обычно использует два интерфейса API: 16– и 32-разрядный. Каждый их этих интерфейсов допускает исполнение приложений в пользовательском режиме, в частности направление запросов операционной системе, которая сама работает в режиме ядра.

Вне зависимости от конкретного типа интерфейса API, применяемого приложением Windows, обеспечивается взаимодействие с тремя компонентами (файлами) операционной системы. Так, 16-разрядные версии этих файлов соответствуют GDI.EXE, USER.EXE и KRNL386.EXE, а 32-разрядные – GDI32.DLL, USER32.DLL и KERNEL32.DLL. Разработчики называют данный набор файлов интерфейсом Win32 API. Имеются и другие интерфейсы API для выполнения требуемых операций, причем в большинстве случаев запросы к API формируются при исполнении приложения в пользовательском режиме и при обращении его к операционной системе, работающей в режиме ядра.

...

Примечание

Другие операционные системы поддерживаются Windows XP с помощью специальных драйверов, служб и библиотечных файлов DLL, упоминавшихся в предшествующих разделах. Другими словами, сервер транслирует запросы, создаваемые приложениями, в запросы Windows API. При этом приложения, которые ориентируются на другие ОС, используют те же компоненты, что и приложения Windows (несмотря на тот факт, что они предназначены для работы с совсем другими операционными системами).

В приводящемся ниже перечне подробно описываются три упомянутых базовых компонента (файла):

ядро операционной системы Windows (модуль Kernel, файл KRNL386.EXE или KERNEL32.DLL). Этот модуль средств Windows XP поддерживает функции низкого уровня, используемые различными приложениями. Например, каждый раз, когда приложение испытывает потребность в области памяти, оно обращается к компоненту Windows Kernel для получения необходимого объема памяти. Этот компонент образует реальное ядро операционной системы, однако Windows XP не сможет нормально работать без двух других компонентов. Поэтому указанный файл следует рассматривать в виде «части единого целого», что станет более очевидным, когда вы познакомитесь с его содержимым. Компонент Windows Kernel не взаимодействует с интерфейсом или другими устройствами – единственным объектом его взаимодействия является сама операционная система Windows;

интерфейс графического устройства (компонент Graphical Device Interface, файл GDI.EXE или GDI32.DLL). Каждый раз, когда приложение выводит на экран данные, оно прибегает к помощи службы интерфейса графического устройства (Graphical Device Interface – GDI). Этот компонент Windows XP отвечает за использование шрифтов, служб печати, режимов воспроизведения, режимов управления цветностью и за другие подобные режимы, инициируемые пользователем при исполнении программных приложений;

модуль User (модуль User, файл USER.EXE или USER32.DLL). Windows XP основана на применении хорошо известных объектов – окон. При этом требуется управляющая программа, которая отслеживает все окна, создаваемые приложением для вывода данных различного типа. Тем не менее работа компонента User в этот момент только начинается. Каждый раз при выводе приложением значка или изображения кнопки оно задействует тот или иной компонент модуля User и его соответствующую функцию. Поэтому модуль User интерфейса Windows API проще представить в виде управляющей программы: подобный подход позволяет правильно организовывать и использовать объекты данных.

Функции Plug and Play базовой системы ввода-вывода данных BIOS

До сих пор мы еще не говорили о регистрации операционной системой Windows XP устройств, что позволяет выявлять факт инсталляции соответствующих драйверов. ОС обычно использует функцию Plug and Play [32] (PnP) для регистрации различных устройств. Следует отметить, что технология PnP обеспечивает наиболее простой вариант конфигурирования аппаратных средств на компьютере.

Функция PnP хорошо известна в компьютерной технологии. Первый компьютер типа МСА (MicroChannel Architecture – микроканальная архитектура) фирмы IBM предусматривал применение всех компонентов, необходимых для PnP, за исключением самой операционной системы. Многие компьютеры типа EISA (Extended Industrial Standard Archirecture – расширенный промышленный стандарт архитектуры) также использовали аналоги функции PnP. Эта технология впервые была полноценно включена (совместно с операционной системой) в Windows 95.

Функция PnP представляет собой результат совмещения трех системных компонентов: аппаратных средств, системы BIOS и операционной системы. Система BIOS обеспечивает в данном случае организацию всех системных компонентов при запуске, а также активизацию всех основных компонентов, например, дисководов жестких дисков и видеоадаптеров. Все остальные компоненты системы ожидают своей очереди вплоть до завершения перезагрузки системы.

В процессе перезагрузки операционная система завершает операцию по присвоению векторов прерывания и адресов портов каждому системному компоненту. В отличие от Windows 9х, Windows XP отменяет параметры вектора прерывания и адрес ввода-вывода, задаваемых системой BIOS. Этот подход позволяет Windows XP функционально гибко конфигурировать аппаратные средства.

При использовании PnP-совместимой системы для автоматического задания конфигурации обычно требуется более трех объектов данных. Ниже приводится перечень дополнительных функций, которыми будет обладать система PnP:

идентификация инсталлированных устройств. Windows XP автоматически распознает все компоненты Plug and Play компьютерной системы. Вы должны обеспечить наличие минимального объема информации для инсталляции и не предпринимать никаких других действий в ходе перезагрузки системы;

определение потребностей в ресурсах для аппаратных средств. Каждое устройство компьютерной системы нуждается в ресурсах процессора, каналах прямого доступа к памяти (DMA), объемах памяти и аппаратных прерываниях. Операционная система взаимодействует с базовой системой ввода-вывода BIOS и периферийными устройствами с целью удовлетворения этих требований и без воздействия на сами устройства. Не следует удивляться, например, тому, что устройство PCI будет использовать ресурсы, скажем аппаратные прерывания (IRQ), совместно с каким-либо другим устройством. Шина PCI в данном случае обеспечивает идентификацию источника запроса на прерывание или адресата запроса на ввод-вывод данных с помощью номера слота PCI, а также регистрирует соответствующие идентификационные данные. Именно в этих условиях возможна совместная работа ресурсов;

модификация автоматического конфигурирования системы и регистрация конфликтных ситуаций при распределении ресурсов. Имеющиеся возможности по взаимодействию между периферийными устройствами, системой BIOS и Windows XP позволяют последней задавать конфигурацию системы без вмешательства пользователя. Усовершенствованные методы обмена данными поддерживают опрос операционной системой Windows XP периферийных устройств для выявления факта использования альтернативных портов и аппаратных прерываний, например в условиях возникновения конфликтных ситуаций с выделением ресурсов;

1 ... 94 95 96 97 98 99 100 101 102 ... 213
На этом сайте Вы можете читать книги онлайн бесплатно русская версия Полное руководство по Microsoft Windows XP - Питер Нортон.
Книги, аналогичгные Полное руководство по Microsoft Windows XP - Питер Нортон

Оставить комментарий