Операционная система Windows, история ее развития, ее особенности

Windows (МФА: [ˈmaɪkɹəˌsɔft ˈwɪn.doʊz], произносится [ма́йкрософт ви́ндоус]) — семейство проприетарных операционных систем корпорации Microsoft, ориентированных на применение графического интерфейса при управлении. Изначально были всего лишь графическими надстройками для MS-DOS.

По состоянию на декабрь 2012 года под управлением операционных систем семейства Windows по данным ресурса Netmarketshare (Net Applications) работает около 92 % персональных компьютеров

Операционные системы Windows работают на платформах x86, x86-64, IA-64, ARM. Существовали также версии для DEC Alpha, MIPS, PowerPC и SPARC

Графические интерфейсы и расширения для DOS

Эти версии Windows не были полноценными операционными системами, а являлись надстройками к операционной системе MS-DOS и были по сути многофункциональным расширением, добавляя поддержку новых режимов работы процессора, поддержку многозадачности, обеспечивая стандартизацию интерфейсов аппаратного обеспечения и единообразие для пользовательских интерфейсов программ. Предоставляли встроенные средства (GDI и USER, первые версии Windows вообще состояли из трех модулей — KERNEL, GDI и USER, первый из них предоставлял вызовы управления памятью, запуском .EXE-файлов и загрузкой .DLL-файлов, второй — графику, третий — окна) для создания графического интерфейса пользователя. Они работали с процессорами начиная с Intel 8086.

 

Семейство Windows 9x

Включает в себя Windows 95, Windows 98 и Windows ME.

Windows 95 была выпущена в 1995 году. Её отличительными особенностями являются: новый пользовательский интерфейс, поддержка длинных имён файлов, автоматическое определение и конфигурация периферийных устройств Plug and Play, способность исполнять 32-битные приложения и наличие поддержки TCP/IP прямо в системе. Windows 95 использует вытесняющую многозадачность и выполняет каждое 32-битное приложение в своём адресном пространстве.

Операционные системы этого семейства не являлись безопасными многопользовательскими системами как Windows NT, поскольку из соображений совместимости вся подсистема пользовательского интерфейса и графики оставалась 16-битной и мало отличалась от той, что в Windows 3.x. Так как этот код не был thread-safe, все вызовы в подсистему оборачивались в мьютекс по имени Win16Lock, который, кроме того, ещё и находился всегда в захваченном состоянии во время исполнения 16-битного приложения. Таким образом, «повисание» 16-битного приложения немедленно блокировало всю ОС.

Программный интерфейс был подмножеством Win32 API, поддерживаемым Windows NT, но имел поддержку юникода в очень ограниченном объёме[9]. Также в нём не было должного обеспечения безопасности (списков доступа к объектам и понятия «администратор»).

В составе Windows 95 присутствовал MS-DOS 7.0, однако его роль сводилась к обеспечению процесса загрузки и исполнению 16-битных DOS приложений. Исследователи заметили, что ядро Windows 95 — VMM — обращается к DOS под собой, но таких обращений довольно мало, главнейшая функция ядра DOS — файловая система FAT — не использовалась. В целом же интерфейс между VMM и нижележащей DOS никогда не публиковался, и DOS была замечена (тем же Эндрю Шульманом) в наличии недокументированных вызовов только для поддержки VMM.

 

Семейство Windows NT

Операционные системы этого семейства в настоящее время работают на процессорах с архитектурами x86, x64, и Itanium,ARM. Ранние версии (до 4.0 включительно) также поддерживали некоторые RISC-процессоры: Alpha, MIPS, и Power PC. Все операционные системы этого семейства являются полностью 32- или 64- битными операционными системами, и не нуждаются в MS-DOS даже для загрузки.

Только в этом семействе представлены операционные системы для серверов. До версии Windows 2000 включительно они выпускались под тем же названием, что и аналогичная версия для рабочих станций, но с добавлением суффикса, например, «Windows NT 4.0 Server» и «Windows 2000 Datacenter Server». Начиная с Windows Server 2003 серверные операционные системы называются по-другому.

В основу семейства Windows NT положено разделение адресных пространств между процессами. Каждый процесс имеет возможность работать с выделенной ему памятью. Однако он не имеет прав для записи в память других процессов, драйверов и системного кода.

Семейство Windows NT относится к операционным системам с вытесняющей многозадачностью. Разделение процессорного времени между потоками происходит по принципу «карусели». Ядро операционной системы выделяет квант времени (в Windows 2000 квант равен примерно 20 мс) каждому из потоков по очереди при условии, что все потоки имеют одинаковый приоритет. Поток может отказаться от выделенного ему кванта времени. В этом случае система перехватывает у него управление (даже если выделенный квант времени не закончен) и передаёт управление другому потоку. При передаче управления другому потоку система сохраняет состояние всех регистров процессора в особой структуре в оперативной памяти. Эта структура называется контекстом потока. Сохранение контекста потока достаточно для последующего возобновления его работы.