- Платформа в информационных технологиях
- 2.2. Операционные системы как составная часть платформы
- Создание ОС Windows. Структура ОС Windows
- Краткая история создания ОС Windows
- Наиболее важные моменты эволюции операционных систем
- Онтогенез повторяет филогенез
- Архитектурные особенности операционных систем.
- Создание ОС Windows
- Возможности системы
Платформа в информационных технологиях
2.2. Операционные системы как составная часть платформы
Операционные системы (ОС) являются важной составной частью платформы в ИТ. Они отражают как развитие аппаратных средств, так и стремление разработчиков улучшить функциональные характеристики, повысить степень комфортности ОС по отношению к пользователям.
Операционная система выполняет функции автоматического управления рядом подсистем персонального компьютера и предоставляет готовые процедуры управления его внутренними и внешними ресурсами, т. е. операционная система является некоей автоматической системой управления работой и ресурсами компьютера, повышающей удобство и эффективность его использования.
Каждый персональный компьютер (аппаратная платформа) обязательно комплектуется операционной системой, для которой создается свой набор прикладных решений (приложений, прикладных программ).
В процессе развития большинство операционных систем модифицируются и совершенствуются в направлении исправления ошибок и включения новых возможностей. В целях сохранения преемственности новая модификация операционной системы не переименовывается, а приобретает название версии.
Операционные системы, подобно аппаратной части компьютеров, на пути своего развития прошли через ряд радикальных изменений, так называемых поколений. Для аппаратных средств смена поколений связана с принципиальными достижениями в области электронных компонентов: вначале вычислительные машины строились на электронных лампах (первое поколение ЭВМ ), затем на транзисторах (второе поколение), интегральных микросхемах (третье поколение), а сейчас — по преимуществу на больших и сверхбольших интегральных схемах (четвертое поколение). Появление каждого из этих последовательных поколений аппаратных средств сопровождалось резким уменьшением стоимости, габаритов, потребляемой мощности и тепловыделения и столь же резким повышением быстродействия и объемов памяти компьютеров.
На одной и той же аппаратной платформе могут функционировать различные операционные системы, имеющие разную архитектуру и возможности. Однако при этом следует учитывать, что различные ОС представляют разную степень сервиса для программирования и работы с прикладными программами пользователей. Кроме того, для их работы необходимы различные ресурсы оперативной памяти.
Современные операционные системы можно классифицировать по различным признакам, представленным в табл. 2.1.
Классификационный признак | Тип операционной системы | |
---|---|---|
1 | Особенности алгоритмов управления ресурсами |
|
2 | Число одновременно решаемых задач |
|
3 | Число одновременно работающих пользователей |
|
4 | Возможность распараллеливания вычислений в рамках одной задачи |
|
5 | Способ распределения процессорного времени между несколькими одновременно существующими в системе процессами или нитями |
|
6 | Наличие средств поддержки многопроцессорной обработки |
|
7 | Ориентация на аппаратные средства |
|
8 | Зависимость от аппаратных платформ |
|
9 | Особенности областей использования |
|
10 | Способ построения ядра операционной системы |
|
11 | Наличие нескольких прикладных сред в рамках одной ОС |
|
12 | Распределение функций операционной системы среди персональных компьютеров сети |
|
13 | Тип пользовательского интерфейса |
В целом функции, выполняемые операционными системами разных классов и видов, достаточно схожи и направлены на обеспечение поддержки работы прикладных программ, организацию их взаимодействия с устройствами, предоставление пользователям возможности работы в сетях, а также управление функционированием персонального компьютера. Поэтому при выборе операционной системы пользователь должен четко представлять, насколько та или иная ОС обеспечит ему решение его задач. Чтобы выбрать ту или иную операционную систему, необходимо знать: Создание ОС Windows. Структура ОС WindowsВ данной лекции говорится о наиболее важных этапах создания ОС Windows наряду с эволюцией операционных систем, структуре системы, а также вводятся некоторые ключевые понятия. Из курсов по теории ОС (см., например, [ Карпов ] , [ Столлингс ] ) известно, что операционная система является базисной системной программой. Обычно аппаратно- программное обеспечение типовой вычислительной системы представляют в виде набора слоев ( рис. 1.1), при этом операционной системе соответствует слой между оборудованием компьютера и остальным программным обеспечением. Такое расположение позволяет ОС обеспечивать возможность рационального использования оборудования компьютера удобным для пользователя образом путем создания среды для функционирования и разработки прикладных программ. Дружественный интерфейс между пользователем и компьютером достигается за счет абстрагирования, которое является важным методом упрощения и позволяет сконцентрироваться на взаимодействии высокоуровневых компонентов системы, игнорируя детали их реализации. В этом смысле об ОС говорят, что операционная система является абстрактной или виртуальной машиной, с которой иметь дело гораздо удобнее, нежели с низкоуровневыми элементами компьютера Альтернативный взгляд на ОС дает представление об ОС как о менеджере ресурсов, который осуществляет упорядоченное и контролируемое распределение процессоров, памяти и других ресурсов между различными программами. Краткая история создания ОС WindowsПервая версия описываемого ряда операционных систем — ОС Windows NT появилась в 1993 г. Краткий исторический экскурс позволяет объяснить ряд ее особенностей и отличительных черт. Наиболее важные моменты эволюции операционных системИзвестно ( [ Карпов ] ), что операционные системы приобрели современный облик в период развития третьего поколения вычислительных машин, то есть с середины 60-х до 1980 года. В это время существенное повышение эффективности использования процессора было достигнуто за счет реализации многозадачности, в том числе вытесняющей ( preemptive ) многозадачности. Для поддержки псевдопараллельной работы нескольких программ и асинхронного режима работы внешних устройств в составе вычислительных систем были реализованы следующие программно-аппаратные новшества и подсистемы:
К этому же периоду эволюции относится идея создания семейств программно совместимых машин различной архитектуры, работающих под управлением одной и той же операционной системы. Прошедший первую апробацию на IBM-360 данный процесс имеет результатом привычную на сегодня картину работы ОС Windows или Linux на компьютерах самой разной архитектуры. В период четвертого поколения вычислительных машин (с 1980 г. до настоящего времени) наступила эра персональных компьютеров (ПК) с дружественным интерфейсом. Первоначально ПК имели ограниченные возможности и предназначались для использования одним пользователем в однопрограммном режиме, что повлекло за собой деградацию архитектуры этих ЭВМ и их операционных систем (в частности, пропала необходимость защиты файлов и памяти, планирования заданий и т.п.). Однако, по мере расширения возможностей ПК, рост сложности и разнообразия задач, решаемых на них, необходимость повышения надежности их работы привели к возрождению практически всех черт, характерных для архитектуры больших вычислительных систем. В середине 80-х стали бурно развиваться сети компьютеров, в том числе персональных, работающих под управлением сетевых или распределенных операционных систем. Онтогенез повторяет филогенезВ книге Таненбаума справедливо отмечено, что развитие операционных систем иллюстрирует известное из биологии правило «Онтогенез повторяет филогенез» — то есть развитие зародыша (онтогенез) повторяет эволюцию видов. Соответственно, каждый новый вид компьютера (мэйнфрейм, мини-компьютер, персональный компьютер, встроенный компьютер, смарт-карта и т.д.) проходит через одни и те же стадии развития. По мере совершенствования архитектуры, программирование на ассемблере сменяется программированием на языках высокого уровня. Затем компьютер обрастает дополнительным оборудованием, средствами поддержки многозадачности, простые операционные системы заменяются все более сложными. Попутно появляются централизованные файловые системы, виртуальная память и другие атрибуты полноценных операционных систем. Такой взгляд на эволюцию компьютерных архитектур имеет известную предсказательную силу. В частности, можно считать, что операционные системы Microsoft, начиная от MS-DOS и кончая современными версиями Windows, развивались по схожему сценарию. Архитектурные особенности операционных систем.В настоящее время подавляющее большинство операционных систем имеет так называемый монолитный дизайн. В этом случае компоненты операционной системы являются не самостоятельными модулями, а составными частями одной большой программы. Монолитное ядро представляет собой набор процедур, каждая из которых может вызвать каждую. Все процедуры работают в привилегированном режиме. Таким образом, монолитное ядро — это такая схема операционной системы, при которой все ее компоненты являются составными частями одной программы, используют общие структуры данных и взаимодействуют друг с другом путем непосредственного вызова процедур. Современная тенденция в разработке операционных систем состоит в перенесении значительной части системного кода на уровень пользователя и одновременной минимизации ядра. Речь идет о подходе к построению ядра, называемом микроядерной архитектурой ( microkernel architecture) операционной системы, когда большинство ее составляющих являются самостоятельными программами. В этом случае взаимодействие между ними обеспечивает специальный модуль ядра , называемый микроядром. Микроядро работает в привилегированном режиме и обеспечивает взаимодействие между программами, планирование использования процессора, первичную обработку прерываний, операции ввода-вывода и базовое управление памятью. Остальные компоненты взаимодействуют путем обмена сообщениями в рамках архитектуры клиент-сервер (см. рис. 1.2). Создание ОС WindowsКак уже отмечалось, эволюция операционных систем Microsoft является хорошей иллюстрацией тезиса о повторении онтогенезом филогенеза. Операционные системы корпорации Microsoft можно условно разделить на три группы:
Однозадачная 16-разрядная ОС MS-DOS была выпущена в начале 80-х годов и затем широко применялась на компьютерах с процессором x86. Вначале MS-DOS была довольно примитивна (деградация ОС), ее оболочка занималась, главным образом, обработкой командной строки, но в последующие версии было внесено много улучшений, заимствованных, главным образом, из ОС Unix. Затем под влиянием успехов дружественного графического интерфейса корпорации Apple для компьютеров Macintosh была разработана система Windows. Особенно широкое распространение получили версии Windows 3.0, 3.1 и 3.11. Первоначально это была не самостоятельная ОС, а скорее многозадачная (с невытесняющей многозадачностью) графическая оболочка MS-DOS, которая контролировала компьютер и файловую систему. В 1995 г. была выпущена 32-разрядная ОС Windows 95, где была реализована вытесняющая многозадачность. ОС Windows 95 включала большой объем 16-разрядного кода, главным образом для обеспечения преемственности с приложениями MS-DOS. 16-разрядный код присутствовал и в последующих версиях этой серии Windows 98 и Windows Me. Другой проблемой данной версии Windows, во многом обусловленной той же причиной, была нереентерабельность существенной части кода ядра. Так, если один из потоков был занят модификацией данных в ядре, другой поток, чтобы не получить эти данные в противоречивом состоянии, вынужден был ждать, то есть не мог воспользоваться системными сервисами . Это, зачастую, сводило на нет преимущества многозадачности. ОС Windows NT (New Technology) — новая 32-разрядная ОС, совместимая с предшествующими версиями Windows по интерфейсу. Работу над созданием системы возглавил Дэвид Катлер, один из ключевых разработчиков ОС VAX VMS . Ряд идей системы VMS присутствует в NT (см рис. 1.3). Заметна преемственность в системе управления большим адресным пространством и резидентным множеством процесса, в системе приоритетов обычных процессов и процессов реального времени, в средствах синхронизации и т.д. Вместе с тем Windows NT — это совершенно новый амбициозный проект разработки системы с учетом новейших достижений в области архитектуры микроядра. Первая версия, названная Windows NT 3.1 для соответствия популярной Windows 3.1, была выпущена в 1993 г. Коммерческого успеха добилась версия Windows NT 4.0, заимствовавшая графический интерфейс Windows 95. В начале 1999 г. была выпущена Windows NT 5.0, переименованная в Windows 2000. Следующая версия этой ОС данной серии — Windows XP появилась в 2001 г., а Windows Server 2003 — в 2003 г. В настоящее время выпущена Windows Vista, ранее известная под кодовым именем Longhorn, — новая версия Windows, продолжающая линейку Windows NT. Объем исходных текстов ядра ОС Windows неизвестен. По некоторым оценкам, объем ядра Windows NT 3.5 составляет приблизительно 10Мб, а с каждой новой версией ОС Windows этот объем неуклонно увеличивается в полтора-два раза. Возможности системыПеред разработчиками системы была поставлена задача создать операционную систему персонального компьютера, предназначенную для решения серьезных задач, а также для домашнего использования. Перечень возможностей системы достаточно широк, вот лишь некоторые из них [ Руссинович ] , [ Рихтер ] . Операционная система Windows:
Успешность реализации этих требований будет продемонстрирована по мере изучения деталей ОС Windows. В рамках курса будут введены и впоследствии уточнены и детализированы различные понятия и термины.. Некоторые из них приведены в приложении. |