Шрифт:
Интервал:
Закладка:
Подобные предосторожности приводят к тому, что Windows XP обеспечивает более эффективный режим защиты для 16-разрядных приложений. На практике нечасто приходится сталкиваться с отказами приложений, но даже при возникновении подобных отказов весьма маловероятно, что они окажут катастрофическое воздействие на систему. Один из негативных моментов, являющихся следствием такого рода защиты, связан с ограничением возможностей применения 16-разрядных приложений в Windows XP. Особенно это касается тех программ, которые не стопроцентно совместимы с другими приложениями операционной системы.
Теоретически компонент System VM призван поддерживать другие компоненты уровня Windows API. Однако, поскольку они связаны с использованием иных служб, я расскажу о них в другом разделе. (Нет необходимости повторять, что различия между клиентом или системной виртуальной машиной и сервером или компонентами на уровне Windows API архитектуры Windows XP в данном случае более заметны, чем в Windows 9х.) Даже если приложения используют интерфейс API, а вы взаимодействуете с ними, вам не нужно задумываться об интерфейсе API до тех пор, пока не потребуется создать приложение. Я всегда рассматриваю интерфейс API в качестве специальной программной службы, а не в качестве объекта, о котором приходится постоянно волноваться. Ниже приводится более детальный перечень составляющих компонента System VM:
• 32-разрядные приложения операционной системы Windows. Windows XP имеет возможность использовать разнообразные 32-разрядные программные приложения, часть из которых не работает в Windows 9х, поскольку они опираются на применение каталога Win32 (являющегося разделом интерфейса Windows API). 32-разрядные приложения обычно характеризуются более гибким поведением в многозадачной среде, чем их 16-разрядные аналоги. Кроме того, 32-разрядные приложения поддерживают новые функции Windows XP, например длинные имена файлов, чего 16-разрядные приложения в большинстве случаев не допускают. 32-разрядные приложения также обеспечивают поддержку двух весьма важных функций. Первая использует режим вытесняющей многозадачности. В частности, она позволяет переключаться между задачами более естественно и использовать интервалы ожидания для корректной инициализации. Вторая функция предполагает активное применение плоского адресного пространства памяти, что позволяет более гибко выделять приложениям необходимые объемы памяти, улучшая результаты выполнения приложений. Кроме того, те приложения, которые ориентируются на работу с подобным адресным пространством, характеризуются более высокими показателями быстродействия, поскольку они практически не тратят время на взаимодействие с сегментированным адресным пространством, использовавшимся ранее специалистами фирмы Intel;
• оболочка (Shell). В отличие от предшествующих версий ОС Windows, Windows XP поставляется только с одной пользовательской оболочкой, роль которой играет программа Проводник. Эта программа обеспечивает возможность работы с 32-разрядными кодовыми последовательностями и взаимодействие с новым интерфейсом (конечно, при необходимости легко перейти к применению интерфейса Windows 2000);
• 16-разрядные приложения операционной системы Windows. Специалисты Microsoft провели в рамках Windows XP многочисленные изменения 16-разрядных приложений и средств их поддержки. В результате эти приложения теперь почти не создают проблем, поскольку исполняются независимым образом (фактически в ходе отдельного сеанса работы). Кроме того, режим совместимости обеспечивает эффективную поддержку каждого сеанса и выделяет необходимые приложению ресурсы. Таким образом, для приложения формируется рабочая среда, позволяющая задействовать его наиболее эффективно....Примечание
Одной из важнейших черт Windows XP является возможность использования режима совместимости (см. раздел «Режим совместимости» главы 10). Разделение сеансов работы для 16-разрядных приложений означает, что Windows XP способна изменять вид рабочей среды с целью повышения ее эффективности. Например, если приложение не поддерживает 16-разрядную палитру цветов, режим совместимости позволит перейти к применению 256 цветов. Это придает Windows XP существенно большую функциональную гибкость по сравнению с Windows 2000, но сопровождается изменением самих режимов управления приложениями.
Уровень Windows API
Windows XP располагает двумя интерфейсами Windows API, причем первый интерфейс API практически полностью соответствует тому интерфейсу API, который имелся в Windows 3.1. Первый интерфейс API обеспечивает взаимодействие с 16-разрядными кодовыми последовательностями, на основе которых раньше создавались 16-разрядные приложения Windows. Другой интерфейс представляет собой 32-разрядный интерфейс Windows API и предназначен для взаимодействия с новыми, 32-разрядными, приложениями Windows XP. Он обладает целым рядом новых возможностей и, в частности, характеризуется лучшими показателями надежности.
Если обратиться к нужному разделу Windows XP, можно поближе познакомиться с обоими интерфейсами API. Они опираются на использование независимых файлов, располагающихся соответственно в папках SYSTEM (16-разрядный вариант) и SYSTEM32 (32-разрядный вариант). В частности, эти интерфейсы применяют целый ряд однотипных диалоговых окон, предназначенных для открытия файлов и поиска текстовой информации в документах, – эти окна поддерживаются с помощью двух файлов: COMMDLG.DLL (16-разрядный вариант) и COMDLG32.DLL (32-разрядный вариант). Число 32, присутствующее в именах файлов, обычно указывает на 32-разрядный вариант программы. Совместная работа диалоговых окон придает приложениям более систематизированный вид, чего, собственно, и ожидают пользователи. Познакомиться с другими разделами интерфейса API можно в папке SYSTEM. Специалисты Microsoft собрали различные запросы API и поместили их в независимые файлы этой папки, что, по их мнению, упростит модификацию операционной системы в будущем. Применение независимых файлов также облегчает инсталляцию модифицированных программных продуктов и уменьшает объемы памяти жесткого диска, отвлекаемые на хранение невостребованных функций.
Следует сказать несколько слов о том подуровне, который имеет место между двумя интерфейсами API. Windows XP непосредственно не поддерживает 16-разрядные кодовые последовательности, то есть не обеспечивает исполнение 16-разрядных приложений в системе. Кроме того, 16-разрядные запросы и данные несовместимы с 32-разрядными запросами и данными. В результате операционной системе приходится преобразовывать 16-разрядные запросы и данные в 32-разрядные. Файлы 16-разрядных данных интерфейса API содержат коды, необходимые для преобразования и формирования 32-разрядных запросов. При формировании ответов 32-разрядным интерфейсом соответствующие данные передаются 16-разрядному интерфейсу API, который выполняет преобразования и направляет 16-разрядные данные на устройства клиентов.
Базовая система Windows XP
Компонент Базовая система (Base System) Windows XP содержит все внутренние службы системы, или, как их еще иногда называют, специальные службы низкого уровня. В некоторых книгах этот раздел именуется ядром операционной системы (Operating System Kernel). Вы никогда не вступите во взаимодействие с компонентом Базовая система: этот компонент настолько хорошо скрыт внутри системы, что даже опытные программисты редко до него добираются. Ниже приводится подробное описание элементов, входящих в состав компонента:
• подсистема управления файлами (File Management Subsystem). Данный элемент образует своего рода интерфейс для взаимодействия со всеми присутствующими в компьютерной системе устройствами, например жесткими дисками, компакт-дисками, дисками DVD и дискетами. При этом весьма важно, каким образом формируется то или иное соединение (физически или с помощью сети). В результате компьютер может весьма оперативно взаимодействовать с различными устройствами;
• подсистема сетевого взаимодействия (Network Subsystem). ОС Windows for Workgroups стала в свое время первой версией Windows, которая учитывала потребности сетевого взаимодействия пользователей. Она даже включала в себя целый набор сетевых функций, являвшихся разделом самой операционной системы, а не программным продуктом третьей стороны. Windows XP продолжает эту традицию. Здесь предоставляется поддержка не только одноранговых сетей Microsoft, но и большей части программных продуктов для локальных сетей (LAN) с помощью специальных процедур – программных ловушек в защищенном режиме (protected-mode hooks). На практике вы можете одновременно взаимодействовать с несколькими сетями. Кроме того, модульный характер элемента Network Subsystem позволяет другим фирмам-поставщикам наращивать возможности Windows XP. В контексте рассмотренных элементов операционные системы Windows 9х и Windows XP демонстрируют приблизительно одинаковые характеристики, хотя последняя ОС все-таки обладает лучшими показателями безопасности. Обе версии основываются на ядре операционных систем NT/2000/ХР. Корпорация Microsoft распространила версию Windows и на рабочие станции. С другой стороны специалисты Microsoft создали вариант сервера Windows, который действует в качестве файлового сервера. Этот сервер в большей степени напоминает архитектуру клиент/сервер, которая применяется в сети Novell NetWare (см. часть VII);
- Windows Vista. Для профессионалов - Роман Клименко - Программное обеспечение
- Знакомьтесь: Windows 7 - Владимир Пташинский - Программное обеспечение
- Windows Vista - Сергей Вавилов - Программное обеспечение
- Linux From Scratch - Gerard Beekmans - Программное обеспечение