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




Логотип первых Windows

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

1. Windows 1.0 (1985)

2. Windows 2.0 (1987) — в системе появилась возможность запуска DOS-приложений в графических окнах, причём каждому приложению предоставлялись полные 640 Кб памяти. Улучшена поддержка процессоров 80286. В версии 2.03 (2.0/386) появилась поддержка процессоров 80386.

3. Windows 2.1 (1988) — полная поддержка всех особенностей процессоров 80286 и 80386.

4. Windows 3.0 (1990) — улучшена поддержка процессоров 80386 и защищённого режима.

5. Windows 3.1 (1992) — серьёзно переработанная Windows 3.0: устранены UAE (фатальные ошибки прикладных программ), добавлен механизм OLE, печать в режиме WYSIWYG («что видишь, то и получишь»), шрифты TrueType, изменён диспетчер файлов, добавлены мультимедийные функции. Процессор 8086 и реальный режим перестали поддерживаться.

6. Windows for Workgroups 3.11 (1993) — Windows для рабочих групп, первая версия ОС семейства с поддержкой локальных сетей. В системе также испытывались отдельные усовершенствования ядра, применённые позднее в Windows 95. С этой версии прекратилась поддержка процессора 80286 и стандартного режима.

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

Основная статья: Windows 9x

Логотип первой системы семейства Windows 9x

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

Логотип второй системы семейства Windows 9x

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

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

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

Семейство Windows NT

Основная статья: Windows NT

Логотип семейства Windows NT 4.x

Операционные системы этого семейства в настоящее время работают на процессорах с архитектурами x86, x86-64, и 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 серверные операционные системы называются добавлением суффикса «Server» и года выпуска.

Логотип Windows 8

Логотип Windows 10

1. Windows NT 3.1 (1993)

2. Windows NT 3.5 (1994)

3. Windows NT 3.51 (1995)

4. Windows NT 4.0 (1996)

5. Windows 2000 — Windows NT 5.0 (2000)

6. Windows XP — Windows NT 5.1 (2001)

7. Windows XP 64-bit Edition — Windows NT 5.2 (2003)

8. Windows Server 2003 — Windows NT 5.2 (2003)

9. Windows XP Professional x64 Edition — Windows NT 5.2 (2005)

10. Windows Vista — Windows NT 6.0 (2006)

11. Windows Home Server — Windows NT 5.2 (2007)

12. Windows Server 2008 — Windows NT 6.0 (2008)

13. Windows Small Business Server — Windows NT 6.0 (2008)

14. Windows 7 — Windows NT 6.1 (2009)

15. Windows Server 2008 R2 — Windows NT 6.1 (2009)

16. Windows Home Server 2011 — Windows NT 6.1 (2011)

17. Windows 8 — Windows NT 6.2 (2012)

18. Windows Server 2012 — Windows NT 6.2 (2012)

19. Windows 8.1 — Windows NT 6.3 (2013)

20. Windows Server 2012 R2 — Windows NT 6.3 (2013)

21. Windows 10 — Windows NT 10.0 (2015)[4][5][6]

22. Windows Server 2016 — Windows NT 10.0 (2016)

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

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



Поделиться:




Поиск по сайту

©2015-2024 poisk-ru.ru
Все права принадлежать их авторам. Данный сайт не претендует на авторства, а предоставляет бесплатное использование.
Дата создания страницы: 2017-04-20 Нарушение авторских прав и Нарушение персональных данных


Поиск по сайту: