0 до кольца 3. Кольцо 0 наиболее привилегированно.) Компоненты кольца 0 в
системе Windows 95 отображаются в пространство между 3 и 4 Гбайт. Эти важные
участки кода с максимальным уровнем привилегий содержат подсистему управления
виртуальными машинами (VMM), файловую систему и драйверы VxD.
Область памяти между 2 и 4 Гбайт отображается в адресное пространство каждой
32-разрядной прикладной программы, т. е. оно совместно используется всеми
32-разрядными прикладными программами в вашем ПК. Такая организация позволяет
обслуживать вызовы API непосредственно в адресном пространстве прикладной
программы и ограничивает размер рабочего множества. Однако за это приходится
расплачиваться снижением надежности. Ничто не может помешать программе,
содержащей ошибку произвести запись в адреса, принадлежащие системным DLL, и
вызвать крах всей системы.
В области между 2 и 3 Гбайт также находятся все запускаемые вами 16-разрядные
прикладные программы Windows. С целью обеспечения совместимости эти программы
выполняются в совместно используемом адресном пространстве, где они могут
испортить друг друга так же, как и в Windows 3.1х.
Адреса памяти ниже 4 Мбайт также отображаются в адресное пространство каждой
прикладной программы и совместно используются всеми процессами. Благодаря этому
становится возможной совместимость с существующими драйверами реального режима,
которым необходим доступ к этим адресам. Это делает еще одну область памяти
незащищенной от случайной записи. К самым нижним 64 Кбайт этого адресного
пространства 32-разрядные прикладные программы обращаться не могут, что дает
возможность перехватывать неверные указатели, но 16-разрядные программы,
которые, возможно, содержат ошибки, могут записывать туда данные.
Некоторые системные DLL Windows 95, в частности USER и GDI, все еще содержат
16-разрядный код. Одно из прискорбных следствий этого состоит в том, что 64-
Кбайт локальные хипы модулей USER и GDI и сопутствующие им ограничения системных
ресурсов по-прежнему остаются. К счастью, в Windows 95 некоторые структуры
данных переместились в 32-разрядные хипы, благодаря чему теперь стало намного
сложнее истощить системные ресурсы, чем в среде Windows 3.1х. Другая проблема,
связанная c l6-разрядным системным кодом, - эффект Win16Mutex. Так как
16-разрядный системный код нереентерабелен, только один поток может обращаться к
16-разрядным DLL в каждый момент времени, потенциально затормаживая другие
процессы, которым нужен доступ к этим библиотекам.
Windows NT Workstation
Windows NT Workstation 3.51 по существу представ лает собой операционную систему
сервера, приспособленную для использования на рабочей станции. Этим обусловлена
архитектура, в которой абсолютная защита прикладных программ и данных берет верх
над соображениями скорости и совместимости. Чрезвычайная надежность Windows NT
обеспечивается ценой высоких системных затрат, поэтому для получения приемлемой
производительности необходимы быстродействующий ЦП и по меньшей мере 16-Мбайт
ОЗУ. В системе Windows NT безопасность нижней памяти достигается за счет отказа
от совместимости с драйверами устройств реального режима. В среде Windows NT
работают собственные 32-разрядные NT-прикладные программы, а также большинство
прикладных программ Windows 95. Так же как и Windows 95, система Windows NT
позволяет выполнять в своей среде 16-разрядные Windows- и DOS-программы.
Схема распределения памяти Windows NT разительно отличается от распределения
памяти системы Windows 95. Собственным прикладным программам выделяется 2 Гбайт
особого адресного пространства, от границы 64 Кбайт до 2 Гбайт (первые 64 Кбайт
полностью недоступны). Прикладные программы изолированы друг от друга, хотя
могут общаться через буфер обмена Clipboard, механизмы DDE и OLE.
В верхней части каждого 2-Гбайт блока прикладной программы размещен код,
воспринимаемый прикладной программой как системные библиотеки DLL кольца 3. На
самом деле это просто заглушки, Выполняющие перенаправление вызовов, называемые
DLL клиентской стороны (client-side DLLs). При вызове большинства функций API из
прикладной программы библиотеки DLL клиентской стороны обращаются к локальным
процедурам (Local Process Communication - LPC), которые передают вызов и
связанные с ним параметры в совершенно изолированное адресное пространство, где
содержится собственно системный код. Этот сервер-процесс (server process)
проверяет значение параметров, исполняет запрошенную функцию и пересылает
результаты назад в адресное пространство прикладной программы. Хотя
сервер-процесс сам по себе остается прикладного уровня, он полностью защищен от
вызывающей его программы и изолирован от нее.
Между отметками 2 и 4 Гбайт расположены низкоуровневые системные компоненты
Windows NT кольца 0, в том числе ядро, планировщик потоков и диспетчер
виртуальной памяти. Системные страницы в этой области наделены привилегиями
супервизора, которые задаются физическими схемами кольцевой защиты процессора.
Это делает низкоуровневый системный код невидимым и недоступным по записи для
программ прикладного уровня, но приводит к падению производительности во время
переходов между кольцами.
Для 16-разрядных прикладных Windows-программ Windows NT реализует сеансы Windows
on Windows (WOW). Windows NT дает возможность выполнять 16-разрядные программы
Windows индивидуально всобственных пространствах памяти или совместно в
разделяемом адресном пространстве. Почти во всех случаях 16- и 32-разрядные
прикладные программы Windows могут свободно взаимодействовать, используя OLE
(при необходимости через особые процедуры thunk) независимо от того, выполняются
они в отдельной или общей памяти. Собственные прикладные программы и сеансы WOW
выполняются в режиме вытесняющей многозадачности, основанной на управлении
отдельными потоками. Множественные 16-разрядные прикладные программы Windows в
одном сеансе WOW выполняются в соответствии с кооперативной моделью
многозадачности. Windows NT может также выполнять в многозадачном режиме
несколько сеансов DOS. Поскольку Windows NT имеет полностью 32-разрядную
архитектуру, не существует теоретических ограничений на ресурсы GDI и USER.
Windows NT 4.0
С целью увеличить производительность и снизить требования к памяти разработчики
Windows NT 4.0 решили переместить многие службы API операционной системы из
подсистемы Win32 в ядро ОС. На рис. 6, 7 показано, как это отразилось на
архитектуре операционной системы. В новом модуле Win32K Executive располагаются
три важных элемента операционной системы: диспетчер окон, интерфейс графических
устройств (GDI) и драйверы графических устройств, передающие результаты работы
GDI на экран и на принтер. В Windows NT 3.x эти компоненты были частью
подсистемы Win32 ( см. рис. 8, 9). В ОС Windows NT 4.0 они вошли в состав модуля
Windows NT Executive, где доступ к ним, как и к другим службам ядра, можно
получить в контексте вызывающих процессов.
Новая архитектура обещает резко повысить производительность, особенно при работе
с графикой. Все операции вывода на экран выполняются через обращения к функциям
GDI. Теперь, когда GDI стала частью ядра, прикладные программы могут
непосредственно обращаться к функциям GDI, избегая сопряженных с большими
накладными расходами переключений контекста, видеодрайверы могут быстрее
получать доступ к аппаратным средствам, а службы Win32 API - обращаться к
службам в модуле Windows NT Executive, не переходя через границы колец.
Обращение к служебным функциям GDI и диспетчера окон из прикладной программы
кольца 3 по-прежнему приводит к переходу через границы колец, но фирма Microsoft
вновь нашла несколько остроумных способов оптимизации, позволяющих добиться
максимальной производительности. Один пример: если несколько функций GDI
вызываются последовательно одна за другой, то они организуются в очередь в
пользовательском режиме и затем направляются в ядро единым пакетом, что сводит к
минимуму число переходов через границу кольца. По утверждению Microsoft, новая
архитектура GDI позволит программам, интенсивно использующим графические
средства, таким, как PowerPoint, выводить изображения на экран на 15-20%
быстрее.
Производительность в остальных областях также улучшилась. Перемещение диспетчера
окон в ядро исключает основное узкое место, ограничивавшее скорость передачи
информации между диспетчером окон и прикладными программами, которые обращаются
к службам диспетчера окон.
Теперь, когда основная часть программ и данных, реализующих службы Win32 API
операционной системы, отображается в адресное пространство каждого процесса,
необходимость в серверных потоках и совместных буферах памяти исчезает.
Следовательно, требования системы к памяти снижаются. Однако полученная экономия
почти полностью "съедается" увеличившимся размером оболочки пользовательского
интерфейса. Поэтому хотя утверждение, что Windows NT 4.0 использует память более
эффективно, чем версия 3.x, правильно, однако верно и то, что для достижения
приемлемой производительности по-прежнему понадобится по меньшей мере 16-Мбайт
ОЗУ.
Фрагменты операционной системы, перенесенные из подсистемы Win32 в модуль
Windows NT Executive, сейчас защищены не хуже, чем раньше, хотя теперь это
сделано по-иному. Критики указывают на то, что плохо отлаженный видеодрайвер или
драйвер принтера теперь может привести к краху ядра, тогда как раньше он мог ли
лишь вызвать сбой подсистемы Win32. Фирма Microsoft возражает - и обоснованно, -
что как Windows NT 3.x, так и версия 4.0 стабильны в той мере, насколько это
обеспечивается драйверами устройств, используемыми вместе с ОС. Вот почему фирма
Microsoft проводит тестирование драйверов для Windows NT, в том числе
разработанных независимыми поставщиками, и сертифицирует лишь безупречные
продукты. Если качество графических драйверов Windows NT 4.0 окажется таким же
или превзойдет качество графических драйверов версии 3.x, то нет причин, по
которым Windows NT может оказаться менее надежной, чем 3.x. С другой стороны,
инсталляция несертифицированного графического драйвера в системе Windows NT 4.0
теоретически более рискованна, чем инсталляция того же драйвера в системе 3.x,
поскольку графические драйверы Windows NT 4.0 работают в привилегированном
режиме ядра ЦП.
Что касается безопасности, то Windows NT 4.0 спроектирована с учетом требований
стандартов безопасности точно так же, как и ее предшественники. Архитектурные
изменения не затронули подсистему защиты информации, которая, как и другие
подсистемы, выполняется в виде отдельного процесса в пользовательском режиме.
Тонкие изменения, внесенные в архитектуру Windows NT в версии 4.0, отражают
новое отношение к системе со стороны ее разработчиков. Первоначально Windows NT
замышлялась как операционная система "равных возможностей", способная выполнять
прикладные программы других ОС так же легко, как и свои собственные. Но теперь,
когда центральное место отводится службам Win32 API, система Windows NT
оптимизирована на выполнение программ Win32 с большей скоростью, чем раньше.
Windows NT 4.0 работает гораздо быстрее, чем ее предшественники, и при этом,
очевидно, не поступается теми качествами, которые сделали ее знаменитой. Взвесив
все обстоятельства, можно сказать, что пользователи вряд ли могут пожелать
чего-то лучшего.
Заключение
Конечно же Windows наиболее распространенная операционная система, и для
большинства пользователей она наиболее подходящая ввиду своей простоты,
неплохого интерфейса, приемлемой производительности и огромного количества
прикладных программ для нее. Однако Windows, естественно, не единственная
операционная система и далеко не самая лучшая. Я имел возможность работать не
только с операционными системами Microsoft ( от DOS и Windows 3.0 до beta-версии
Windows 97 ), но и с ОС IBM OS/2 Warp версии 3.0 и 4.0, несколькими реализациями
UNIX. По моему мнению наиболее удачной является OS/2 Warp, которая предоставляет
наиболее совершенную защиту, чем Windows 95, более быстродействующая нежели
Windows NT, более продуманный интерфейс и много разных других мелочей, делающих
эту ОС более привлекательной ( хотя бы интеграция с Internet и встроенная
поддержка распознавания речи ). Насчет UNIX можно сказать то, что она является
прообразом для многих современных ОС и до сих, на мой взгляд, до сих пор держит
первенство, особенно там, где требуется высокая надежность систем. Большим
недостатком OS/2 и UNIX является довольно скудный выбор программных средств. Я,
в принципе, являюсь противником Microsoft и Windows, Windows - не та
операционная система, которую мне бы хотелось использовать, я бы предпочел OS/2
Warp фирмы IBM, но из-за огромного количества программ для Windows и в ввиду
того, что все новейшие программы работают только под Windows 95, у меня
установлена Windows 95.
Приложение А.
Сравнительные характеристики.
Windows 3.11Windows 95Windows NT 3.51Windows NT 4.0
Рекомендуемый объем ОЗУ, Мбайт281616
Требуемый процессор386SX486DX486DXPentium-60
Минимально необходимое пространство на диске, Мбайт73090120
Файловые системыFATFAT, FAT32FAT, NTFS, HPFSFAT, NTFS, HPFS
Поддержка Plug&Playнетда
Поддержка APMнетданетнет
Пароль при запуске ПКнетдадада
Программы DOSдададада
Программы Windows 3.1 дададада
вместе в одной виртуальной DOS-машинедаданетнет
каждая в своей виртуальной DOS-машиненетнетдада
32-разрядные программы Windows 95нетдадада
Стандартные клиенты сети и протоколыMicrosoft Windows Network, Microsoft
Mail, Shedule+Microsoft Exchange, Microsoft Network, Novell Netware 3.x,
4.x, IPX/SPX, Microsoft DLC, NetBEUI, TCP/IPClient Service for NetWare,
FTP Server, FTP telnet, SLIP, PPP, TCP/IP, Remote Access, AppleTalk, DLC,
NetBEUI, IPX/SPX, TCP/IPClient Service for NetWare, FTP Server, FTP
telnet, SLIP, PPP, TCP/IP, Remote Access, AppleTalk, DLC, NetBEUI,
IPX/SPX, TCP/IP
Приложение В.
Цены ( согласно прайс-листу фирмы "Контакт")
Windows NT 4.0 WorkstationWindows NT 4.0 ServerWindows 95Microsoft
Plus!Windows 3.11
Цена, $3839821655792
Upgrade, $19149298N/AN/A
Литература
Стефан Фойц "Windows 3.1" , Киев, BHV
Камилл Ахметов "Windows 95 для всех", Москва, Кпмпьютерпресс
Журнал "КомпьютерПресс" 6'93.
"Решения Microsoft", Microsoft
Журнал "PC Magazine/Russian Edition" 8'95, 1'96, 10'96, 1'97
Журнал "Мир ПК" 7-8'96, 9'96, 11-12'96
... Web-оглядача, - точно так само, як він доповнив ними Windows 95, хоча, строго говорячи, ці можливості тепер вбудовані, оскільки є частиною стандартної установки Windows 98 і ви не можете відмовитися від них. Правда, Microsoft поступила дуже розумно, активізувавши по умовчанню лише найменш радикальні удосконалення і залишивши хитромудрий стиль роботи з використанням одного щиглика миші і жадібний ...
... Server. Установка Windows 2000 Advanced Server завершена, и Вы вошли в систему под учетной записью Administrator. [11] 5.5.3. Управление в среде Windows 2000 Advanced Server После успешной установки Windows 2000 Server выполняется настройка пользователей. Основным элементом централизованного администрирования в Windows 2000 Server является домен. Домен - это группа серверов, работающих под ...
... ему нужно загрузить, значит, он смотрит не на экран, а в другую сторону. Переход к использованию динамических дисков Динамический диск — это новый инструмент, появившийся в Windows 2000 и позволяющий создавать динамические тома. В процессе преобразования дисков NT 4.0 в динамические диски Windows 2000 все существующие разделы трансформируются в тома. Преимущество нового механизма состоит в ...
... для построения информационной системы любого масштаба: от простейшей сети из нескольких персональных компьютеров до сложной гетерогенной системы на сотни тысяч пользователей. Система безопасности Windows NT Server обеспечивает защиту информации и системных служб от несанкционированного доступа и от неквалифицированных действий пользователей. Операционные системы Windows NT Server и Windows NT® ...
0 комментариев