Вопрос 30.Операционные системы
Операционная система (ОС) - система программ, предназначенная для управления устройствами ЭВМ, управления обработкой и хранением данных, обеспечения пользовательского интерфейса.
Операционная система обычно хранится во внешней памяти компьютера — на диске. При включении компьютера она считывается с дисковой памяти и размещается в ОЗУ.
Этот процесс называется загрузкой операционной системы.
В функции операционной системы входит:
• осуществление диалога с пользователем;
• ввод-вывод и управление данными;
• планирование и организация процесса обработки программ;
• распределение ресурсов (оперативной памяти и кэша, процессора, внешних устройств);
• запуск программ на выполнение;
• всевозможные вспомогательные операции обслуживания;
• передача информации между различными внутренними устройствами;
• программная поддержка работы периферийных устройств (дисплея, клавиатуры, дисковых накопителей, принтера и др.).
В зависимости от количества одновременно обрабатываемых задач и числа пользователей, которых могут обслуживать ОС, различают четыре основных класса операционных систем:
1. однопользовательские однозадачные, которые поддерживают одну клавиатуру и могут работать только с одной (в данный момент) задачей;
2. однопользовательские однозадачные с фоновой печатью, которые позволяют помимо основной задачи запускать одну дополнительную задачу, ориентированную, как правило, на вывод информации на печать. Это ускоряет работу при выдаче больших объёмов информации на печать;
3. однопользовательские многозадачные, которые обеспечивают одному пользователю параллельную обработку нескольких задач. Например, к одному компьютеру можно подключить несколько принтеров, каждый из которых будет работать на "свою" задачу;
4. многопользовательские многозадачные, позволяющие на одном компьютере запускать несколько задач нескольким пользователям. Эти ОС очень сложны и требуют значительных машинных ресурсов.
В различных моделях компьютеров используют операционные системы с разной архитектурой и возможностями. Для их работы требуются разные ресурсы. Они предоставляют разную степень сервиса для программирования и работы с готовыми программами.
Операционная система для персонального компьютера,ориентированного на профессиональное применение, должна содержать следующие основные компоненты:
• программы управления вводом/выводом;
• программы, управляющие файловой системой и планирующие задания для компьютера;
• процессор командного языка, который принимает, анализирует и выполняет команды, адресованные операционной системе.
Каждая операционная система имеет свой командный язык, который позволяет пользователю выполнять те или иные действия:
• обращаться к каталогу;
• выполнять разметку внешних носителей;
• запускать программы;
• ... другие действия.
Анализ и исполнение команд пользователя, включая загрузку готовых программ из файлов в оперативную память и их запуск, осуществляет командный процессор операционной системы.
Для управления внешними устройствами компьютера используются специальные системные программы — драйверы. Драйверы стандартных устройств образуют в совокупности базовую систему ввода-вывода (BIOS), которая обычно заносится в постоянное ЗУ компьютера.
Современные операционные системы для ПЭВМ отличаются друг от друга, прежде всего ориентацией на машины определенного класса, поддерживаемыми ими режимами обработки, предоставляемыми сервисными возможностями. Примерами ОС для ПЭВМ являются СР/М, MS DOS, OS/2 Warp (IBM), Windows 95 (Microsoft).
Режим функционирования - это совокупность параметров и условий функционирования, обеспечивающие предусмотрено технологией создания продукта, а также сохранение и текущее воспроизведение элементов операционной системы.
Режим операционной системы состоит из:
Технологической дисциплины - это минимально необходимая совокупность процедур для обеспечения основной и технологии, соблюдение важнейших прямых параметров данной технологии;
Уровня использования ресурсов;
Согласование основных функций в пространстве и времени;
Соблюдение норм вспомогательного обеспечения основной технологии;
Поддержки рабочего состояния основных элементов операционной системы;
Уровня организационного обеспечения единства основных параметров (информационное, документальное и кадровое обеспечение единства).
Для надежного управления ходом работы компьютера ОС должна иметь определенные привилегии по отношению к другим задачам (приложениям). Иначе некорректно работающее приложение может вмешаться в работу ОС и испортить часть ее кода.
Обеспечить привилегии ОС невозможно без специальных средств аппаратной поддержки. Аппаратура компьютера должна поддерживать, как минимум, два режима работы:
- Пользовательский режим (usermode)
- Привилегированный режим, режим ядра (kernelmode)
Так как ядро выполняет все основные функции ОС, то ядро работает в привилегированном режиме. Приложения работают в пользовательском режиме.
Приложение ставиться в подчиненное положение за счет запрета выполнения в пользовательском режиме команд, связанных с управлением ресурсами компьютера. Например, команда доступа к памяти для приложения разрешается, когда команда обращается к области памяти, отведенной данному приложению, и запрещается при обращении к областям памяти, занятых самой ОС или другими приложениями. Может быть создано несколько уровней привилегий, процессор Intel поддерживает четыре уровня.
Ядро и приложения могут работать в одном режиме, без поддержки привилегированного режима, например процессор Intel 8088/86, первый процессор для персональных компьютеров фирмы IBM. Некорректно написанные приложения для MS DOS могли разрушить модули самой ОС, что иногда и происходило, но область использования ОС MS DOS не предъявляла высоких требований к надежности.
Часть операционной системы, которая работает в режиме пользователя, так же называется операционным окружением (вспомогательные модули). Операционное окружение предназначено для связи приложений и самой операционной системы.
При выполнении приложений, как правило, требуется обращение к ОС, для выполнения определенных действий, например получения системного времени. Приложение обращается к функциям ОС с помощью системных вызовов. Таким образом, операционное окружение должно обеспечить:
1. Организацию диалога пользователя;
2. Выполнение системных вызовов;
3. Обращение к библиотечным функциям;
4. Вызов стандартных обслуживающих программ.