3.2.4. Windows NT
3.2.4. Windows NT
Windows NT (New Technology) — операционная система корпорации Microsoft для использования на мощных персональных компьютерах и серверах. Она поставляется в нескольких вариантах, которые в контексте данного обзора могут рассматриваться как одно целое. Все операционные системы Microsoft с момента упадка Windows ME в 2000 году основываются на технологии Windows NT. Windows 2000 была NT версии 5, a Windows XP (текущая версия в 2003 году) — NT 5.1. Windows NT генетически произошла от операционной системы VMS, с которой она имеет несколько общих важных характеристик.
Windows NT выросла путем приращений, а поэтому испытывает недостаток унифицирующей метафоры, соответствующей идее Unix о том, что "каждый объект является файлом", или идее рабочего стола в MacOS[32]. Поскольку основные технологии не связаны в небольшом наборе устойчивых центральных метафор, они устаревают каждые несколько лет. Каждое из поколений технологии — DOS (1981), Windows 3.1 (1992), Windows 95 (1995), Windows NT 4 (1996), Windows 2000 (2000), Windows XP (2002) и Windows Server 2003 (2003) — требует, чтобы разработчики по-новому повторно изучали фундаментальные принципы, при этом прежний путь объявляется устаревшим и более не поддерживается на достаточном уровне.
Имеются также другие последствия такого подхода.
• Средства GUI неудобно соседствуют со слабым, отжившим интерфейсом командной строки, унаследованным от DOS и VMS.
• Программирование сокетов не имеет унифицирующего объекта данных, аналогичного Unix-идее "каждый объект является файлом", поэтому мультипрограммирование (multiprogramming) и сетевые приложения, являющиеся простыми в Unix, предполагают наличие нескольких более фундаментальных концепций в Windows NT.
Windows NT имеет атрибуты файлов в некоторых типах ее файловых систем. Они используются ограниченным способом для реализации списков доступа в некоторых файловых системах и не очень сильно влияют на стиль разработки. Кроме того, данная система характеризуется тем, что запись текстовых и двоичных файлов осуществляется по-разному, и это приводит к определенным неудобствам (как NT, так и OS/2 унаследовали этот симптом от DOS).
Хотя в системе поддерживается вытесняющая многозадачность, создание дочерних процессов является затратным, правда, не таким, как в VMS, но (на уровне 0,1 с на создание подпроцесса) почти на порядок более затратными, чем в современных Unix-системах. Средства создания сценариев слабые, и операционная система вынуждает широко использовать двоичные форматы. В дополнение к ожидаемым последствиям, которые были рассмотрены выше, рассмотрим ряд менее очевидных.
• Большинство программ вообще невозможно связать в сценарий. Для взаимодействия друг с другом программы опираются на сложные, неустойчивые методы удаленного вызова процедур (Remote Procedure Call — RPC), которые являются причиной многочисленных ошибок.
• Общих инструментов вообще не существует. Документы и базы данных невозможно читать или редактировать без специализированных программ.
• С течением времени CLI-интерфейс все более игнорируется, поскольку все реже используется в среде. Проблемы, связанные со слабым CLI-интерфейсом, скорее усугубляются, нежели решаются. (Отчасти в Windows Server 2003 предпринята попытка изменить данную тенденцию.)
Системные и конфигурационные данные пользователей централизованы в главном системном реестре, а не разбросаны во многих скрытых пользовательских файлах конфигурации и системных файлах данных, как в Unix. Это также имеет несколько последствий для всей конструкции.
• Реестр делает систему полностью неортогональной. Одиночные сбои в приложениях могут повредить данные реестра, часто делая невозможным использование всей системы и вызывая необходимость переустановки.
• Феномен сползания реестра (registry creep): по мере роста реестра увеличивающиеся затраты на доступ замедляют работу всех программ.
NT-системы в Internet печально известны своей уязвимостью для "червей", вирусов, повреждениями и взломами всех видов. Для этого имеется множество причин, некоторые из них более существенные, чем другие. Наиболее фундаментальной причиной является то, что внутренние границы в NT являются чрезвычайно проницаемыми.
В Windows NT предусмотрены списки управления доступом, с помощью которых возможна реализация групп привилегий пользователей, но большое количество унаследованного кода игнорирует их, а операционная система допускает это для того, чтобы не повредить обратной совместимости. Отсутствуют средства управления безопасностью сообщений между GUI-клиентами[33], а их добавление также нарушило бы обратную совместимость.
Несмотря на то, что в NT используется MMU, в версиях данной системы после 3.5, исходя из соображений производительности, графический интерфейс системы встроен в то же адресное пространство, что и привилегированное ядро. Последние версии содержат в пространстве ядра даже Web-сервер в попытке достичь скорости, присущей Web-серверам на основе Unix.
Подобные бреши во внутренних границах производят синергетический эффект, делая действительную безопасность NT-систем фактически невозможной[34]. Если нарушитель может запустить код как практически любой пользователь (например, используя способность программы Outlook обрабатывать почтовые макросы), то данный код может фальсифицировать сообщения через систему окон к любому другому запущенному приложению. Любое переполнение буфера или взлом в GUI-интерфейсе или Web-сервере также может быть использован для захвата контроля над всей системой.
Поскольку Windows должным образом не управляет контролем версий программных библиотек, данная система страдает от хронической конфигурационной проблемы, которая называется "DLL hell" (ад DLL). Данная проблема связана с тем, что при установке новых программ возможно случайное обновление (или напротив, запись более старых версий поверх новых) библиотек, от которых зависят существующие программы. Это относится как к системным библиотекам, поставляемым производителем, так и к библиотекам приложений: нередко приложения поставляются с определенными версиями системных библиотек, и в случае их отсутствия аварийно завершают работу[35].
К важнейшим свойствам Windows NT можно отнести предоставление данной системой достаточных средств для поддержки технологии Cygwin, которая представляет собой уровень совместимости, реализующий Unix как на уровне утилит, так и на уровне API-интерфейсов, с необыкновенно малым количеством компромиссов[36]. Cygwin позволяет C-программам использовать как Unix, так и Windows API-интерфейсы, а поэтому пользуется чрезвычайной популярностью у Unix-хакеров, вынужденных работать на Windows-системах.
Целевой аудиторией операционных систем Windows NT главным образом являются нетехнические конечные пользователи, которые характеризуются низкой толерантностью относительно сложности интерфейса. Windows NT используется как в роли клиентской, так и в роли серверной системы.
В начале своей истории корпорация Microsoft зависела от сторонних разработчиков, поставляющих приложения. Первоначально Microsoft публиковала полную документацию на Windows API и сохраняла невысокий уровень цен на средства разработки. Однако со временем и по мере исчезновения конкурентов, стратегия Microsoft сместилась в сторону поддержки собственных разработок, компания стала скрывать API-функции от внешнего мира, а средства разработки стали более дорогими. С выходом Windows 95 Microsoft стала требовать неразглашения соглашений в качестве условия приобретения профессиональных средств разработки.
Культура разработчиков-любителей и энтузиастов, которая выросла вокруг DOS и ранних версий Windows, была достаточно распространенной, чтобы оставаться самодостаточной вопреки нарастающим усилиям Microsoft, которая пыталась блокировать разработчиков (включая такие меры, как сертификационные программы, разработанные для того, чтобы объявить любителей вне закона). Условно бесплатные программы не исчезали, и политика Microsoft после 2000 года начала отчасти разворачиваться в обратном направлении под давлением рынка операционных систем с открытыми исходными кодами и языка Java. Однако Windows-интерфейсы для "профессионального" программирования с годами становились все более сложными, представляя увеличивающиеся барьеры для любительского (или серьезного) программирования.
В результате произошло предельно четкое разделение стилей разработки практикуемых любителями и профессиональными NT-разработчиками. Две эти группы только общаются. Тогда как любительская культура небольших инструментов и условно бесплатных программ весьма жива, профессиональные NT-проекты склонны к созданию огромных монолитов, даже более громоздких, чем программы, характерные для "элитных" операционных систем, наподобие VMS.
Unix-подобные средства оболочки, наборы команд и библиотечные API-интерфейсы доступны в Windows посредством библиотек сторонних разработчиков, включая UWIN, Interix и библиотеку с открытым исходным кодом Cygwin.
Более 800 000 книг и аудиокниг! 📚
Получи 2 месяца Литрес Подписки в подарок и наслаждайся неограниченным чтением
ПОЛУЧИТЬ ПОДАРОКДанный текст является ознакомительным фрагментом.
Читайте также
Запуск сценария с помощью Проводника Windows (Windows Explorer)
Запуск сценария с помощью Проводника Windows (Windows Explorer) Самым простым является запуск сценария в окнах Проводника Windows или на рабочем столе — достаточно просто выполнить двойной щелчок мышью на имени файла со сценарием или на его значке (рис. 1.6). Рис. 1.6. Запуск сценария с
Добавляем Windows Media Center в меню автозапуска в Windows 7
Добавляем Windows Media Center в меню автозапуска в Windows 7 В Windows 7 меню автозапуска не предоставляет возможности воспроизведения мультимедиа в Windows Media Center. Вы не найдете такого пункта и в настройках параметров автозапуска в панели
1.17. Чем отличаются Windows XP Professional и Windows XP Home?
1.17. Чем отличаются Windows XP Professional и Windows XP Home? Обе эти системы имеют очень много общего, и XP Pro и XP Home построены на одном и том же ядре, NT 5.1. Разница между ними заключается только в том, что XP Home не поддерживает несколько функций, работающих в XP Pro. В XP Home не поддерживаются
2.4.2. Установка Windows 9x, Windows NT/2000 и Linux.
2.4.2. Установка Windows 9x, Windows NT/2000 и Linux. Первый способВ этом способе используется загрузчик NT Loader. Выполните установку Windows 2000 в раздел NTFS, a Windows 9x — в раздел FAT/FAT32. Не забудьте приготовить четыре системных дискеты для восстановления! Напомню, что если вы хотите установить Windows
1.7.2. Установка Windows 9x, Windows NT/2000/XP и Linux
1.7.2. Установка Windows 9x, Windows NT/2000/XP и Linux Первый способВ этом способе используется загрузчик NTLoader. Выполните установку Windows 2000 в раздел NTFS, a Windows 9x — в раздел FAT/FAT32. Не забудьте приготовить четыре системных дискеты для восстановления! Напомню, что если вы хотите установить Windows
5.6 Служба теневого копирования томов в Windows ХР и Windows Server 2003
5.6 Служба теневого копирования томов в Windows ХР и Windows Server 2003 В Windows ХР и Windows Server 2003 компания Microsoft реализовала службу теневого копирования. Таким образом, предоставляется инфраструктура, позволяющая создавать целостные копии дисковых томов в заранее определенный момент
Быстрое завершение работы Windows (Windows NT/2000/XP)
Быстрое завершение работы Windows (Windows NT/2000/XP) Windows NT версии 3.1 и 3.5 позволяла закрыть все процессы за 20 секунд. В Windows NT 3.51 и выше существует возможность определять величину интервала, в течение которого система должна завершить свою работу. Для этого необходимо исправить ключ
Ein Volk, ein Plattform, ein Windows!, или Когда уничтожат Windows RT? Евгений Золотов
Ein Volk, ein Plattform, ein Windows!, или Когда уничтожат Windows RT? Евгений Золотов Опубликовано 04 декабря 2013 В лагере MS Windows зреют большие перемены: не все варианты самой популярной ОС чувствуют себя одинаково хорошо. Windows Phone набирает пользовательскую массу
6.5. Общие команды меню Windows-программ. Буфер обмена Windows
6.5. Общие команды меню Windows-программ. Буфер обмена Windows Практически все Windows-программы имеют главное меню, которое расположено сразу под заголовком окна. В большинстве случаев некоторые команды главного меню совпадают. Например, многие Windows-программы имеют меню Файл,
О чем нужно позаботиться перед установкой Windows XP в режиме Windows
О чем нужно позаботиться перед установкой Windows XP в режиме Windows Итак, на вашем жестком диске уже установлена одна из версий операционной системы Windows и вы хотите инсталлировать Windows XP. С чего начать? Прежде всего – вспомнить (выяснить), какая важная информация содержится на
6.9. Шифрование файлов в Windows Vista и Windows 7
6.9. Шифрование файлов в Windows Vista и Windows 7 Если за компьютером работает несколько пользователей, вы можете зашифровать свои файлы, чтобы другие пользователи не смогли их открыть. Возможности шифрования уже встроены в Windows, нужно их только активировать. Для этого перейдите в
5.3.2. Настройка модема в Windows Vista и Windows 7
5.3.2. Настройка модема в Windows Vista и Windows 7 В Windows Vista/7 настройка подключения через модем значительно упрощена. Откройте панель управления и в Центре управления сетями и общим доступом выберите ссылку Установка подключения или сети (в Windows 7 — Настройка нового подключения или
5.4.2. Настройка локальной сети в Windows Vista и Windows 7
5.4.2. Настройка локальной сети в Windows Vista и Windows 7 В Windows Vista и Windows 7 настройки, в целом, схожи с Windows XP, однако при щелчке правой кнопкой мыши на значке Сеть и выборе в меню пункта Свойства, открывается окно Центр управления сетями и общим доступом (рис. 5.22) — его также можно
7.1. Outlook Express. Почта Windows. Почта Windows Live. Возможности программ
7.1. Outlook Express. Почта Windows. Почта Windows Live. Возможности программ Электронная почта — одна из самых популярных служб Интернета на сегодняшний день. Миллионы людей пишут друг другу электронные письма, которые почти мгновенно доставляются адресату через Интернет. Такая почта
7.2.2. Настройка почтового ящика в программе Почта Windows (Windows Vista)
7.2.2. Настройка почтового ящика в программе Почта Windows (Windows Vista) В программе Почта Windows почтовый ящик настраивается аналогичным образом. Откройте меню опций Сервис и выберите пункт Учетные записи. В открывшемся окне (рис. 7.9) нажмите кнопку Добавить. В открывшемся окне
7.2.3. Настройка почтового ящика в программе Почта Windows Live (Windows 7)
7.2.3. Настройка почтового ящика в программе Почта Windows Live (Windows 7) Чтобы добавить учетную запись почты Windows Live, щелкните на ссылке Добавить учетную запись в рабочем окне программы (см. рис. 7.3). В открывшемся окне (рис. 7.10) введите адрес электронной почты, пароль и отображаемое