Архитектура Аудит Военная наука Иностранные языки Медицина Металлургия Метрология
Образование Политология Производство Психология Стандартизация Технологии


Операционные системы: их развитие и основные функции



Особое место среди программных средств всех типов занимают операционные системы, являясь ядром программного обеспечения. Операционная система - это комплекс программ, обеспечивающих:

• управление ресурсами, т.е. согласованную работу всех аппаратных средств компьютера;

• управление процессами, т.е. выполнение программ, их взаимодействие с уст­ройствами компьютера, с данными;

• пользовательский интерфейс, т.е. диалог пользователя с компьютером, выпол­нение определенных простых команд- операций по обработке информации.

За время существования компьютеров операционные системы претерпели значи­тельную эволюцию. Первые операционные системы были однопользователь­скими и однозадачными. Эффективность использования ресурсов компьютера в этом случае оказывалось невысокой из-за простоев всех, кроме одного работающе­го периферийного устройств компьютера. По мере роста возможностей, производительности и изменениях в соотношении стоимости устройств компьютера положение стало нетерпимым, что привело к появлению многозадачных операционных систем, остававшихся однопользователь­скими. Наиболее совершенны и сложны многопользовательские многозадачные опера­ционные системы, которые предусматривают одновременное выполнение многих заданий многих пользователей, обеспечивают разделение ресурсов компьютера в соответствии с приоритетами пользователей и защиту данных каждого пользовате­ля от несанкционированного доступа. В этом случае операционная система работа­ет в режиме разделения времени, т.е. обслуживает многих пользователей, работаю­щих каждый со своего терминала.

Развитие ОС. ОС MVS, OS/390, z/OS. : первые две ОС этого семейства вышли в 1966 г - РСР (первичная управляющая программа) и DOS/360 (второе поколение) — это были пакетные мониторы, рассчитанные на работу одной прикладной программы без защиты памяти. 1967 г. – РСР: MVT (многопрограммная [система] с переменным числом задач) и MFT (многопрограммная [система] с фиксированным числом задач). Позднее, к MVT была добавлена подсистема работы с несколькими терминалами в режиме разделения времени TSO (возможность разделения времени), ASP (асимметричная многопроцессорность) и ряд других прикладных подсистем.1972 г. –переходная система OS/SVS (единая виртуальная память), которая позволяла использовать страничную подкачку, но не защиту заданий друг от друга 1974 г. – MVS (множественная виртуальная память), которая предоставляла каждой задаче собственное виртуальное адресное пространство объемом до 2 Гбайт. Большая часть дополнительных подсистем MVT была включена в стандартную поставку MVS. 1999 г., в связи с началом выпуска 64-разрядного семейства компьютеров z900, вышла 64-разрядная версия системы z/OS Системы под управлением OS/390 и z/OS применяются главным образом в качестве серверов транзакций и СУБД масштаба предприятия и составляют становой хребет вычислительных систем большинства крупных компаний. Обширное и бурно развивающееся семейство Unix оказало огромное влияние на развитие ОС в 80-е и 90-е годы XX столетия. Применения систем семейства крайне разнообразны, начиная от встраиваемых приложений реального времени, включая графические рабочие станции для САПР и заканчивая серверами класса предприятия и массивно параллельными суперкомпьютерами. Родоначальником семейства следует считать не первую версию Unix, a Multics, совместно разрабатывавшуюся в 1965—1969 гг. General Electric и Bell Laboratories. За это время General Electric выделило подразделение, занимавшееся работами над Multics и аппаратной платформой для нее (GE-645), в отдельную компанию Honeywell. Multics была первой из промышленных систем, предоставлявших: создание процессов системным вызовом fork; страничную виртуальную память; отображение файлов в адресное пространство ОЗУ; вложенные каталоги; неструктурированные последовательные файлы; многопользовательский доступ в режиме разделения времени; управление доступом на основе ограниченных ACL (колец доступа).

В 1969 г. Bell Laboratories отказалась от работ над Multics и начала разработку собственной ОС для внутренних нужд. В Bell Laboratories был объявлен внутренний конкурс на разработку переносимой ОС, способной работать на миникомпыотерах различных поставщиков. К проекту были предъявлены следующие основные требования: многоплатформенность; вытесняющая многозадачность; многопользовательский доступ в режиме разделения времени; развитые телекоммуникационные средства.Один из участников работ над Multics, К. Томпсон, разработал крайне упрощенное ядро ОС, названное UNIX, для миникомпьютера PDP-7. К 1972 г. К. Томпсон и Д. Ритчи переписали ядро системы в основном на языке С и продемонстрировали возможность переноса ОС на миникомпьютеры PDP-11. Это обеспечило выполнение всех требований конкурса, и UNIX была признана основной платформой для вычислительных систем, эксплуатируемых в AT& T.Первые версии UNIX были рассчитаны на машины без диспетчера памяти.

· В 1991 г. Л. Торвальдс, в тот момент — студент университета Хельсинки, приступил к разработке того, что ныне известно как Linux — полноценной ОС, основанной на исходных кодах Minix. В 1992 г. выпущена первая публичная версия системы.

Linux перенесен практически на все 32- и 64-разрядные машины, имеющие диспетчер памяти, начиная от Amiga и Atari и заканчивая IBM. Ядро Linux быстро развивается и еще не достигло той степени " зрелости" и стабильности, которая характерна для SVR4 и ветвей BSD. В частности, поэтому среднее количество опасных ошибок, обнаруживаемых в системе за фиксированный интервал времени, существенно выше, чем в двух указанных ОС; производительность отдельных подсистем также оставляет желать лучшего. Однако положение довольно быстро улучшается и, по-видимому, в обозримом будущем Linux может стать одним из технологических лидеров отрасли.

Рассмотрим дисковую операционную систему СР/М фирмы Digital Research. Первая версия системы была разработана в 1974 г. для использования в инструментальных микропроцессорных системах. Инструментальные микрокомпьютеры, популярные в 70-е годы, использовались как средство кросс-разработки и отладки программ для встраиваемых микропроцессорных систем. Типичная система такого типа состояла из микропроцессорной платы, устройства чтения/записи магнитных или перфолент, а позднее — накопителя гибких дисков и, наконец, видеотерминала. Можно считать их предками персональных компьютеров, но в описываемый период такие системы были слишком громоздки и дороги для домашнего и офисного использования. СР/М была первой ОС для машин такого рода, обеспечившей возможность использования гибких дисков, поэтому она быстро приобрела огромную популярность и стала стандартом де-факто для микрокомпьютеров. Система была перенесена практически на все 8- и 16-разрядные и многие 32-разрядные микропроцессоры. Появившиеся в конце 70-х персональные компьютеры обычно также были ориентированы на использование СР/М. В начале 80-х были реализованы многозадачная и сетевая версии СР/М. Появилось также немало клонов системы, программно совместимых с ней и в целом аналогичных по архитектуре. С архитектурной точки зрения, СР/М представляет собой довольно типичную однозадачную ДОС, предназначенную для работы на процессоре без диспетчера памяти и средств базовой адресации. Отличительные особенности СР/М следующие:

· Своеобразный командный язык, представляющий собой подмножество командного языка систем RT-11, RSX-11, VAX/VMS. Так команды являются полными словами английского языка, но разрешено их сокращение: DIRECTORY, например, может быть сокращена до DIR или даже до DI — в СР/М же команда называется DIR.

· Устройства последовательного ввода-вывода обозначаются трехбуквенными аббревиатурами, например TTY: обозначает телетайп, a LPT: — строчный принтер. Некоторые устройства, например, CON: (консоль), LST: (устройство вывода листинга) могут динамически переназначаться.

· Диски обозначаются буквами латинского алфавита.

СР/М имеет модульную архитектуру и состоит из трех основных подсистем: командного процессора ССР (Console Command Processor), базовой дисковой операционной системы BDOS (Basic Disc Operating System) и базовой системы ввода-вывода BIOS (Basic Input/Output System). Командный процессор и базовая дисковая операционная система представляют собой неизменные компоненты системы, BIOS содержит драйверы физических устройств и подлежит перекомпоновке при каждой перегенерации системы для новой конфигурации аппаратуры. Память, не занятая компонентами системы и таблицей векторов прерываний, называется областью пользовательских [дословно — преходящих] программ.

Вскоре после анонса Apple Macintoch в 1984 г., Microsoft выпустила электронную таблицу Excel и текстовый процессор Word для этой системы. Создается впечатление, что основной задачей при разработке Win 16 было максимальное облегчение переноса приложений Mac OS на IBM PC.

Версии Windows 2.x—3.x воспроизводят почти все характерные черты Mac OS.

· Событийно-ориентированную кооперативно многозадачную архитектуру

· Единое адресное пространство

· Сборку программ в момент загрузки с использованием DLL

· Соглашение о вызовах у системных процедур: параметры помещаются в стек, начиная с первого, стек очищается вызываемой процедурой

Ядро системы было собрано в виде загрузочного модуля DOS (win.exe). После загрузки этот модуль брал на себя управление памятью и осуществлял загрузку собственных и пользовательских модулей формата NE (так называемые сегментированные модули). DOS, однако, сохранялась в оперативной памяти и использовалась в качестве дисковой подсистемы. Первые версии системы были совершенно неудовлетворительными не только с точки зрения надежности, но и по производительности. Довольно большие требования к ресурсам не позволяли запустить сколько-нибудь ресурсоемкое приложение в 640К ОЗУ, системы же с большим объемом памяти были в то время редкостью. Больший объем памяти был доступен только на машинах IBM PC AT с процессором 80286. На таких компьютерах обращения к DOS требовали переключения в реальный режим процессора и поэтому происходили очень медленно.

Значительный прорыв в эксплуатационных характеристиках Windows 3.x обеспечил процессор 80386, на котором можно было создать для DOS виртуальный 8086. Это позволило избежать переключений режима процессора на каждом системном вызове и резко повысило производительность. Еще большее повышение производительности было достигнуто в Windows 3.11 с появлением так называемого 32-разрядного доступа к диску — собственной дисковой подсистемы, которая работала целиком в защищенном режиме. Тем не менее, надежность даже этих версий системы оставляла желать много лучшего.

В Win 16 впервые была реализована технология, без упоминания которой описание этой системы было бы не полным — не только потому, что это одна из немногих оригинальных концепций, впервые реализованных в системах семейства СР/М, но и потому, что эта технология оказала значительное влияние на современные методики разработки прикладного программного обеспечения. Речь идет о технологии COM (Common Object Model — общая объектная модель).

Идея, лежащая в основе СОМ, довольно проста и решает весьма насущную проблему: точки входа DLL не хранят сведений не только о семантике соответствующих процедур, но даже о количестве и типах параметров, передаваемых этим процедурам. Различные системы программирования используют разные соглашения о способе передачи параметров — заголовок DLL не хранит информации и об этом. Отсутствие перечисленных сведений затрудняет взаимодействие между подсистемами, реализованными на разных языках, и делает невозможным синтаксическую проверку допустимости вызова внешних процедур из интерпретируемых языков.

СОМ предполагает снабжение DLL внешним описателем, который перечисляет все процедуры, реализуемые данной DLL, и типы данных, используемые этими процедурами. Описание формируется на специальном языке IDL (язык описания интерфейса), который затем компилируется в двоичное представление, используемое объектными средами и интерпретирующими системами программирования. Современные системы программирования выполняют автоматическую генерацию IDL и " болванок» (заготовок) кода, реализующего данный интерфейс, на конкретном языке программирования.

Объектно-ориентированный стиль описания интерфейсов является популярной методологией описания и разработки сложных программных систем, поэтому, несмотря на многочисленные недостатки технологии СОМ (например, не поддерживается контроль версии интерфейса и наследование) она была хорошо принята сообществом разработчиков. Впрочем, заявленная в начале работ над этой технологией цель — переход от монолитных приложений к компонентным средам, составляемым из взаимозаменяемых объектов СОМ — достигнута не была. Достижению этой цели не способствовала также техническая политика Microsoft, состоявшая в низкокачественной и неполной документации и хаотических сменах флагманской объектной среды (версии OLE, ActiveX, OCX и т. д.).

В первой половине 90-х годов XX столетия практически всем разработчикам и техническим специалистам было очевидно, что наличествующие ОС доживают последние дни: они не удовлетворяли запросам пользователей практически ни по одному из параметров: приложения требовали больших объемов памяти и перехода к 32-разрядной архитектуре, пользователям требовались большая надежность, многозадачность, более развитые сетевые средства. Напротив, преимущества DOS, такие, как небольшая потребность в памяти, становились все менее и менее критичными. Основным препятствием на пути перехода пользователей на другие платформы было требование совместимости с существующими приложениями и драйверами нестандартных внешних устройств для DOS. Наилучшим образом удовлетворяла этому требованию IBM OS/2, в виртуальной машине которой можно было запустить не только практически любое приложение DOS, но и использовать многие модули ядра DOS, в том числе — загружая в разных виртуальных машинах разные версии DOS и разные наборы драйверов. Однако высокие требования этой системы к ресурсам и ориентированная на корпоративных пользователей схема лицензирования приводили к тому, что система не получила большого распространения на массовом рынке. В 1992-1993 гг. Microsoft занялась разработкой системы, которая должна была заполнить перспективную рыночную нишу " многозадачной DOS защищенного режима". Подобно марксизму, разрабатываемая ОС имела три источника и три составные части.

Windows NT

2. Многозадачные среды для DOS

Windows 3.x

От Windows NT новая система получила интерфейс системных вызовов — Win32 API — и формат загружаемого модуля РЕ (Portable Executable — переносимый исполняемый [модуль]). У многозадачных сред разработчики новой ОС позаимствовали идею преобразования DOS в многозадачную среду защищенного режима. Такая архитектура была довольно-таки трудоемка в реализации и создавала специфические проблемы (так, DOS не отдавала управления при обращениях к приводу гибких дисков, поэтому работа с дискетами из любой сессии приводила к остановке всех остальных сессий), но не представляла непреодолимых концептуальных сложностей и была в целом работоспособна. Windows 3.x представляла собой пример системы, реализовавшей интерфейс между пользовательскими программами, работающими в защищенном режиме, и ядром DOS. К 1993-1994 гг. на рынке существовало более десятка других продуктов, предоставляющих аналогичный интерфейс, так называемых расширителей DOS. С точки зрения разработчиков новой ОС Windows 3.x представляла наибольший интерес в качестве отправной точки, потому что, в отличие от остальных расширителей DOS, она предоставляла динамическую сборку в момент загрузки и реализовывала также событийно-ориентированную архитектуру, пусть и более примитивную, чем асинхронная очередь сообщений Win32. К тому же, Windows 3.11 имела собственную дисковую подсистему, позволявшую работать с жестким диском в обход DOS (так называемый 32-битный доступ к диску). После длинной последовательности публичных бета-версий, многократного переноса сроков и большой шумихи в прессе новая система, получившая название Windows 95, вышла на рынок в 1995 г. Система с самого начала задумывалась как переходная, предназначенная для облегчения перевода пользовательской базы DOS на Windows NT, однако прошло не менее 4—5 лет, прежде чем совместимость с приложениями DOS перестала быть решающим параметром при выборе ОС для настольного компьютера. За это время успело выйти несколько версий " переходной" системы ( OSR2, 98, 98SE, Millennium Edition ) и даже после выхода ХР Microsoft еще не готова объявить о прекращении поддержки этой линии ОС.


Поделиться:



Популярное:

Последнее изменение этой страницы: 2016-04-10; Просмотров: 1086; Нарушение авторского права страницы


lektsia.com 2007 - 2024 год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! (0.023 с.)
Главная | Случайная страница | Обратная связь