Чтение онлайн

ЖАНРЫ

Windows XP для бывалого бойца

Ахметов Камилл

Шрифт:

Дэйв Катлер работал в фирме Digital Equipment Corporation (DEC) и был известен тем, что создал ряд операционных систем фирмы DEC и руководил разработками VAX/VMS. Но летом 1988 года Билл Гейтс предложил Дэйву Катлеру обсудить идею создания новой операционной системы Microsoft для персональных компьютеров!

«В то время меня не очень интересовала работа с персональными компьютерами, но я подумал, что это хорошая возможность встретиться с Биллом и обсудить его идеи, – написал Катлер впоследствии. – То, что предлагал Билл, сводилось к созданию новой ОС – переносимой и отвечающей требованиям, которые предъявляются к ПК при выполнении критически важных задач. Для меня это был шанс создать еще одну операционную

систему!» В октябре 1988 года Катлер перешел в Microsoft.

Оригинальная спецификация нового проекта, датированная 1989 годом, гласила: «Система NT OS/2 представляет собой переносимую реализацию OS/2, разработанную на языке высокого уровня. Начальная версия NT OS/2 предназначена для работы на Intel 86-совместимом оборудовании, включая как персональные компьютеры, так и серверы…». Операционная система, разработанная под руководством Дэвида Катлера, получила наименование Windows NT.

Уровни защиты процессоров Intel 80386

Intel 80386-совместимые процессоры поддерживают четыре уровня, или кольца, привилегированности, обеспечивающих различные степени защиты и привилегий исполняемых программ. В каждый момент времени процессор может работать только на одном уровне привилегий.

При любой передаче управления с одного уровня на другой процессор выполняет десятки операций. Например, смена уровня привилегий на 486-м процессоре занимает 69 тактов. Но современной ОС разные уровни привилегий необходимы, чтобы обеспечить защиту жизненно важных участков кода системы.

Для выполнения кода системного уровня Windows NT[7] стала использовать нулевое кольцо защиты процессоров Intel. Программы, выполняемые в нулевом кольце, могут все. Они работают с аппаратурой напрямую, ничто в системе от них не укроется, и ни одно постороннее приложение не помешает выполнению кода с «нулевым допуском». Сервисом нулевого уровня защиты процессора 80386 пользуются файловая система защищенного режима, диспетчер виртуальных машин и аппаратно-ориентированные драйверы, в том числе написанные независимыми разработчиками и производителями аппаратного обеспечения. Разумеется, компоненты ОС, предназначенные для работы в нулевом кольце, должны быть тщательно проверены и отлажены – ошибка в таком драйвере может запросто вызвать крах системы.

Приложения и многие части ОС выполняются только в третьем кольце процессора 80386, а значит, не имеют таких прав, как программы нулевого уровня, и не могут напрямую работать с устройствами компьютера – им приходится обращаться к драйверам устройств, выполняющимся в нулевом кольце. Зато они относительно безопасны для системы в целом.

Реестр Windows NT

Windows NT была первой операционной системой Microsoft, которая хранила всю информацию о настройке системы и программ не в текстовых файлах (config.sys, autoexec.bat и файлы с расширением ini), а в реестре (registry), что имеет следующие преимущества:

• данные не разбросаны по различным файлам, а логически собраны в одной базе;

• информация в реестре имеет не плоскую, типа параметр = значение, а древообразную структуру, благодаря чему каждый параметр может иметь множество подзначений разного типа;

• возможен доступ к реестру локального компьютера по сети для диагностики и администрирования.

Реестр – это «древообразная» иерархическая база данных. Пять разделов реестра Windows NT/2000 – HKEY_CLASSES_ROOT, HKEY_CURRENT_USER, HKEY_LOCAL_MACHINE, HKEY_USERS и HKEY_CURRENT_CONFIG (в реестре Windows 95/98/ME имеется также шестой раздел – HKEY_DYN_DATA), в свою очередь, ветвятся на множество подразделов и т. д. Например, данные, описывающие параметры работы программы Windows Me System Agent, хранятся в разделе HKEY_LOCAL_MACHINE\ Software\Microsoft\Plus!\System Agent:

• HKEY_LOCAL_MACHINE – информация о компьютере: оборудование, параметры программ;

• HKEY_CURRENT_CONFIG –

текущая конфигурация устройств;

• HKEY_CLASSES_ROOT – информация по OLE, межпрограммным связям, данные о ярлыках, параметры рабочего стола и т. п.; это практически та же информация, которая в Windows 3.x хранилась в файле reg.dat;

• HKEY_USERS – информация обо всех пользователях компьютера;

• HKEY_CURRENT_USER – информация о параметрах текущего пользователя: внешний вид рабочего стола, используемая звуковая схема и т. п.

Данные реестра хранятся в виде переменных, которые имеют имена и бывают трех типов: строчные (например, «vgaoem.fon», «Microsoft Network», «Kamill Akhmetov»), двоичные (например, 00 00 00 00 0e 00 00 00) и формата «двойное слово» (например, 0x00000001). Так, переменная, от которой зависит, будет ли на панели задач отображаться значок программы System Agent, называется EnableTrayIcon, имеет формат «двойное слово» и для отображения значка должна быть равна 0x00000001.

Для редактирования реестра в комплект поставки Windows входит программа Registry Editor.

Первое поколение «новых технологий»

Первая версия Windows NT вышла осенью 1993 года, сразу с номером 3.1 – таким же, как у параллельной версии Windows. Основными особенностями Windows NT стали переносимость между аппаратными платформами, поддержка многопроцессорных систем, полная 32-разрядность, «истинная» (вытесняющая) многозадачность, полная интеграция сетевых компонентов и средств администрирования с графической рабочей средой, выполнение программ разных ОС, защита по уровню C2 и поддержка Unicode. Усовершенствованная версия Windows NT 1994 года получила номер 3.5, а версия 1995 года – 3.51.

Windows NT сразу создавалась для профессионального использования и компромиссов не допускала. Это первая ОС Microsoft, предъявившая высокие (по тем временам) требования к аппаратуре: не менее 12 Мбайт «оперативки» при работе на микропроцессорах Intel. Для Windows NT был разработан новый API Win32. Чтобы в полной мере задействовать преимущества 32-разрядной ОС, приложения должны были быть написаны в соответствии с Win32 API. Наряду с ранними файловыми системами FAT (MS-DOS) и HTFS (OS/2) Windows NT могла работать с новой, более надежной файловой системой NTFS.

Из пяти основных целей, поставленных перед группой разработчиков Windows NT – переносимость, устойчивость, расширяемость, совместимость, производительность, – в первой версии Windows NT были определенно достигнуты, по словам Марка Луковски, второго «отца-основателя» Windows NT, переносимость и расширяемость. «Нельзя заниматься всем сразу, – говорил он. – Мы намеренно поставили производительность после расширяемости и не обращали особого внимания на размер используемой памяти до версии 3.5». В Windows NT 3.5 по плану работ следовало обеспечить, в частности, повышение производительности системы и совместимость с процессорами Power PC. Воплощение нового пользовательского интерфейса, который в то время разрабатывался для операционной системы Windows, дальнейшее повышение производительности системы и реализация Plug and Play были отложены – «для более поздних версий». Или, как мы теперь знаем, для Windows XP.

Долгая дорога к Windows XP

Тем временем Microsoft вела работы над новой ОС потребительского уровня (проект Chicago). Нужно было создать ОС для Win32 API с современным GUI, не хуже новых версий IBM OS/2 и UNIX, обеспечив разумный компромисс между производительностью, стабильностью и степенью совместимости системы со старыми MS-DOS– и Windows-программами. И вот 24 августа 1995 года появилась Windows 95.

Windows 95

Эту первую чисто пользовательскую ОС от Microsoft отличали улучшенная работа в многозадачном режиме, повышенная отказоустойчивость и более рациональное использование системных ресурсов.

Поделиться с друзьями: