Операционные системы (ОС) — совокупность программ, предназначенных для управления ресурсами ЭВМ, исполнения программ пользователя и организации диалога пользователя и ЭВМ. ОС управляет работой других программ и выделяет им ресурсы ЭВМ — память, время и т.д. Она обеспечивает работу машины как единого целого, связь между устройствами. В то же время ОС выступает посредником между человеком и ЭВМ и скрывает от пользователя много трудных элементарных операций, создает удобный интерфейс. То есть, как бы обволакивает аппаратуру компьютера, чтобы пользователю не приходилось общаться с этой аппаратурой.
Рассмотрим два основных направления развития ОС, которые связаны соответственно с фирмами разработчиками Microsoft (MS) и IBM.
В 1981 году фирма MS выпустила первую ОС MS DOS 1.0 (дисковая операционная система) Работа с ОС осуществлялась с помощью командной строки в символьном режиме. ОС обслуживала 64 Кб памяти, могла использовать дискеты 5,25’’ емкостью 160 Кб.
В том же году фирма IBM разработала свою ОС PC DOS — полный аналог MS DOS.
В 1983 году вышла в свет MS DOS 2.0. Она работала с дискетами 360 Кб и жесткими дисками 10 Мб. Появилась древовидная система каталогов диска, а также возможность загружать драйверы.
Перечисленные ОС обладали рядом принципиальных недостатков: примитивный пользовательский интерфейс (в виде командной строки и символьного режима), однозадачность, ограниченность объема адресуемой памяти. От версии к версии эти ОС усовершенствовались, но принципиальные недостатки оставались.
С 1984 года началась работа над графической ОС, которая обладала бы возможностью полного использования памяти, была многозадачной. К 1985 году фирма MS разработала графическую оболочку Windows 2.0 к MS DOS. Появился графический интерфейс, но ограничение прямой адресации всего 640 Кб памяти оставалось. Вся остальная память считалась расширенной, и работа с ней осуществлялась с помощью драйверов расширенной памяти.
В 1987 году фирма IBM разработала ОС OS/2 1.0, которая могла адресовать до 16 Мб памяти, обладала многозадачностью до 12 программ.
В 1990 году фирма MS выпустила оболочку Windows 3.x. Для неё характерно использование всего адресного пространства и виртуальной памяти, кооперативная многозадачность. Однако, это была не ОС, а только графическая программная оболочка для MS-DOS.
К 1992 году фирмой IBM была разработана OS/2 2.0 — 32- разрядная, многозадачная, однопользовательская ОС. Поддерживались многопоточные программы, совместимость с продуктами фирмы MS. Но она более требовательна к ресурсам — 386 процессор, 8Мб памяти, 50Мб свободного места на диске. Но в дальнейшем разработчики этой линии ОС отказались от поддержки программного обеспечения фирмы MS.
В 1993 году появилась Windows NT — 32-разрядная, многопользовательская, многозадачная ОС с сетевыми возможностями и графическим интерфейсом.
В 1995 году увидела свет 32-разрядная, однопользовательская ОС Windows 95. Она обладает вытесняющей многозадачностью для 32-разрядных приложений и кооперативной — для 16 разрядных.
Требуемые ресурсы: 386 процессор и 4 Мб памяти, 40 Мб свободного места на диске.
В 1998 году появилась Windows 98, а в 2000 году — Windows Millennium Edition — ОС по характеристикам аналогичные предыдущей версии 1995 года, но внутренне более совершенные.
К 2000 году выпущены две версии Windows 2000: Professional и Server, которые являются 32-разрядными многозадачными, а Server ещё и многопользовательской ОС. Эти две ОС основаны на технологии NT и являются прямыми потомками Windows NT.
Объединение операционных систем линии Windows 95,98, ME с семейством ОС, основанных на технологии NT привело к созданию 32-разрядной однопользовательской ОС Windows XP в трех редакциях: Home, Professional, Media Center, а также 32-разрядной многопользовательской ОС Windows 2003 Server.
Отдельно от перечисленных ОС развивалась еще одна линия ОС — UNIХ, созданная фирмой Bell Laboratories. Она разрабатывалась под эгидой переносимости программ между компьютерами с разной архитектурой. В итоге появились много UNIXоподобных ОС — многопользовательские, многозадачные, 32-разрядные.
Свойства операционной системы:
1. НАДЕЖНОСТЬ. Операционная система должна быть надежна, как и аппаратура на которой работает. Она должна быть в состоянии определения и диагностирования ошибок, а также восстановления после большинства характерных ошибок, произошедших по вине пользователя. Она должна защищать пользователя от его же собственных ошибок или, по крайней мере, минимизировать вред, который они могут оказать на все программное окружение, находящиеся в ЭВМ.
2. ЗАЩИТА. Операционная система должна защищать выполняемые задачи от взаимного влияния их друг на друга.
3. ПРЕДСКАЗУЕМОСТЬ. Операционная система должна отвечать на запросы пользователя предсказуемым образом. Результат выполнения команд пользователя должен быть одним и тем же вне зависимости от последовательности, в которой эти команды посылаются на исполнение (при соблюдении установленных в системе правил).
4. УДОБСТВО. Операционная система предлагается пользователю потому, что она намного облегчает его работу и освобождает его от бремени задач по определению различных ресурсов и задач по управлению этими ресурсами. Система должна быть спроектирована с учетом основных факторов человеческой психологии.
5. ЭФФЕКТИВНОСТЬ. При распределении ресурсов операционная система должна максимально повысить использование системных ресурсов пользователем. Сама система не должна использовать большое количество ресурсов, так как эти ресурсы становятся недостаточными для удовлетворения запросов пользователя.
6. ГИБКОСТЬ. Системные операции могут настраиваться для согласования поведения пользователя. Ресурсы могут быть увеличены (уменьшены) для того, чтобы улучшить эффективность и доступность.
7. РАСШИРЯЕМОСТЬ. В процессе эволюции к операционной системе могут быть добавлены новые программные средства.
8. ЯСНОСТЬ. Пользователь может оставаться в неведении относительно вещей, существующих ниже уровня интерфейсной системы. В тоже время он должен иметь возможность узнать о системе столько, сколько он хочет. В данном случае интерфейсной системой являются правила и функциональные характеристики средств подключения и взаимодействия устройств вычислительной машины.
Классификация операционных систем:
по количеству одновременно обрабатываемой информации — 16- и 32-разрядные;
по количеству одновременно работающих пользователей — однопользовательские и многопользовательские;
по количеству одновременно выполняемых программ операционная система может обеспечить функционирование ЭВМ в одном из трех режимов: однопрограммный; многопрограммный; многозадачный.
ОДНОПРОГРАММНЫЙ РЕЖИМ - режим, в котором все ресурсы ЭВМ представляются лишь одной программе, которая выполняет обработку данных.
МНОГОПРОГРАММНЫЙ РЕЖИМ – мультипрограммный режим, в котором несколько независимых друг от друга программ выполняют обработку данных одновременно. При этом программы делят ресурсы ЭВМ между собой. Основой мультипрограммного режима является совмещение во времени работы центрального процессора и выполнение операций периферийных устройств. Достоинство этого режима перед однопрограммным режимом более эффективное использование ресурсов ЭВМ и повышение ее пропускной способности.
МНОГОЗАДАЧНЫЙ РЕЖИМ - мультизадачный режим, предусматривающий параллельное, т. е. одновременное выполнение более чем одной программы по разным задачам, но использующий результат одной задачи как исходные данные для другой, другими словами в операционной системе должны быть средства, позволяющие задачам взаимодействовать друг с другом. В отличие от многопрограммного режима, где используется принцип разделения времени между программами, в этом режиме идет параллельное вычисление по всем задачам.
Операционная система является посредником между ЭВМ и пользователем. Операционная система осуществляет анализ запросов пользователя и обеспечивает их выполнение. Запрос представляется последовательностью команд на особом языке директив операционной системы.
Операционная система может выполнять запросы в разных режимах, поэтому операционную систему можно разделить на следующие типы:
- операционная система пакетной обработки;
- операционная система разделения времени;
- операционная система реального времени;
- операционная система диалоговая.
1. ОПЕРАЦИОННАЯ СИСТЕМА ПАКЕТНОЙ ОБРАБОТКИ - это система, которая обрабатывает пакет заданий, т. е. несколько заданий, подготовленных одним или больше пользователями. Пакет заданий поступает в ЭВМ и взаимодействие между пользователем и его заданием во время вычислительного процесса невозможно. Данная операционная система может функционировать в однопрограммном и мультипрограммном режимах.
2. ОПЕРАЦИОННАЯ СИСТЕМА РАЗДЕЛЕНИЯ ВРЕМЕНИ - обеспечивает одновременное обслуживание многих пользователей, позволяет любому пользователю взаимодействовать со своим заданием. Эффект одновременной работы достигается разделением процессорного времени и других ресурсов между несколькими вычислительными процессами, которые заданны разными пользователями. Операционная система выстраивает очередь из поступающих заданий, выделяет квант времени для доступа к центральному процессору каждому заданию согласно очереди. Выполнив первое задание, операционная система отсылает его в конец очереди и переходит ко второму и т. д.
3. ОПЕРАЦИОННАЯ СИСТЕМА РЕАЛЬНОГО ВРЕМЕНИ - это система, которая гарантирует оперативное выполнение запросов в течение заданного интервала времени. При этом скорость вычислительных процессов в ЭВМ должна согласоваться со скоростью временных процессов, т.е. с ходом реального времени. ЭВМ с данной операционной системой чаще всего работает в однозначном режиме.
4.ДИАЛОГОВЫЕ ОПЕРАЦИОННЫЕ СИСТЕМЫ - предназначены для индивидуального пользования и обеспечивают удобную форму диалога ЭВМ с пользователем через дисплей при вводе и выполнении команд. Функционирует операционная система обычно в однопрограммном режиме.
Независимо от типа операционная система чаще всего состоит из относительно компактного ядра - монитора (супервизора) и набора системных программ и данных. Состав операционной системы представлен на рис.6.3.
ДРАЙВЕР - программа, управляющая физической работой внешнего - периферийного устройства.
УТИЛИТЫ - программы, служащие для выполнения вспомогательных операций обработки данных или обслуживания компьютеров (диагностики, тестирования аппаратных и программных средств, оптимизация использования дискового пространства, восстановления разрушенной на магнитном диске информации и т.п.).
БИБЛИОТЕКА ПРОГРАММ - набор файлов, связанных одним каталогом, в который могут входить объектные модули (программы), макроопределения языка программирования и др.
Операционная система |
|||||
|
|
|
|
|
|
Монитор |
Системные программы и данные |
||||
|
Драйверы |
Утилиты |
Библиотеки программ |
||
Рис. 6.3. Состав операционной системы
Драйвер устройства - программа операционной системы для управления работой периферийными устройствами: дисководами, дисплеем, клавиатурой, принтером, манипулятором мышь и пр.
Драйвер устройства должен учитывать специфику работы внешнего устройства, все тонкости его функционирования. Поэтому каждому устройству должен соответствовать свой драйвер.
Функции драйвера устройства состоят в следующем:
прием и обработка запроса (управляющего сигнала), который поступает к данному периферийному устройству;
преобразование запроса о необходимости связи с этим устройством в серию команд управления им, с учетом всех деталей конструкции и особенностей его работы;
обработка сигнала прерывания, который поступает от соответствующего этому драйверу периферийного устройства.
Драйверами также считаются программы, обеспечивающие управление расширенной памятью, а также создание и обслуживание виртуальных устройств, например электронного диска - имитации гибкого диска в оперативной памяти.
Драйверы могут быть либо стандартными, либо загружаемыми.
Стандартные (внутренние) драйверы - это программы, которые служат для управления внешними устройствами, входящими в стандартный комплект поставки персонального компьютера. Эти драйверы подключаются к системе автоматически после перехода компьютера в нормальное рабочее состояние.
Загружаемые (внешние, устанавливаемые) драйверы - это программы, хранящиеся на диске и предназначенные для управления внешними устройствами, которые отличаются от стандартных либо по своим техническим параметрам, либо особыми режимами эксплуатации. Загружаемые драйверы подключаются к системе только тогда, когда они указаны в файле конфигурации. Возможность использования загружаемых драйверов облегчает адаптацию операционной системы новым внешним устройствам.
Важнейшим достоинством MS-DOS является модульность. Это свойство позволяет изолировать друг от друга отдельные части большой и сложной программы, облегчая ее разработку, а также позволяет объединить в каждом модуле определенные логически связанные группы функций. Если возникает необходимость в замене или расширении такой группы функций, то это можно сделать путем замены или модификации лишь одного модуля, а не всей системы.
MS-DOS состоит из следующих основных модулей:
- базовая система ввода/вывода (BIOS - Basic Input Uotrut SYSTEM);
- блок начальной загрузки (Boot Record);
- модуль расширения базовой системы ввода/вывода (IO.SYS);
- модуль обработки прерываний (MSDOS.SYS);
- командный процессор (COMMAND.COM);
- внешние команды (файлы);
- драйверы устройств (файлы).
Функции модулей MS-DOS:
1)Базовая система ввода/вывода (BIOS) размещается в постоянной памяти компьютера и является одновременно аппаратной частью и частью операционной системы.
Первая функция BIOS - автоматическое тестирование основных компонентов компьютера при его включении. Основная часть времени тестирования тратится на проверку ОЗУ (на экране во время тестирования выводятся цифры, которые отражают количество проверенных блоков памяти). При обнаружении ошибки на экран выводится сообщение о найденном сбое оборудования.
Вторая функция BIOS - вызов блока первоначальной загрузки операционной системы с диска, выполняется по окончании тестирования. Загрузив в ОЗУ блок первоначальной загрузки, BIOS передает ему управление, а он в свою очередь, загружает другие модули операционной системы.
Третья функция BIOS - обслуживание прерываний. Основным принципом работы компьютера является принцип, базирующийся на системе прерываний.