Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лупин / Лекции_2007 / Лекции 2 Концепция процесса.ppt
Скачиваний:
112
Добавлен:
16.04.2013
Размер:
100.86 Кб
Скачать

Операционные системы

Лекция 2 - 1

Типы ОС. Мультипрограммирование; режим разделения времени; многопользовательский режим работы; режим работы и ОС реального времени. Способы реализации мультипрограммирования

Типы ОС

Однозадачные (MS-DOS)

Многозадачные (Unix, OS/2, Windows)

Пакетные системы - запуск одной программы из пакета за другой

Системы разделения времени (time-sharing) – процессор переключается между задачами не только на время операций ввода – вывода но и по прошествии определенного времени, что позволяет пользователю интерактивно взаимодействовать с программой

Системы реального времени – для управления различными технологическими процессами – система должна обрабатывать данные быстрее, чем они могут поступать, причем от разных источников => влияние на архитектуру, например может не быть виртуальной памяти, так как она дает непредсказуемые задержки в выполнении программ

Типы ОС

Поддержка многопользовательского режима:

Многопользовательские (Windows NT, Unix) –механизмы защиты персональных данных каждого пользователя

Однопользовательские (MS-DOS, Windows 3.x)

Многопроцессорная обработка:

Многопроцессорные ОС (Linux, Solaris, Windows NT)

Симметричные – на каждом процессоре функционирует одно и то же ядро, и задача может быть выполнена на любом процессоре, т.е. обработка децентрализована

Ассиметричные – процессоры не равноправны (master и slave) – загрузку и характер работы определяет главный процессор

Мультипрограммирование

- пока одна программа выполняет операцию ввода-вывода, процессор не простаивает как при однопрограммном режиме, а выполняет другую программу

При мультипрограммировании повышается пропускная способность системы, но отдельный процесс никогда не сможет быть выполнен быстрее, чем бы он был выполнен при однопрограммном режиме.

ВС для реализации режима мультипрограммирования:

Программы не должны иметь самостоятельного доступа к распределению ресурсов, что приводит к появлению

привилегированных и непривилегированных команд

Наличие прерываний:

-Внешних (оповещение ОС о том что произошло асинхронное событие, например завершилась операция ввода-вывода) -Внутренних (ситуации) возникают когда выполнение программы требует вмешательства ОС, например деление на 0 или попытка нарушения защиты

Параллелизм в архитектуре:

прямой доступ к памяти и организация каналов ввода-вывода

ОС для реализации режима мультипрограммирования:

Организация интерфейса между прикладным ПО и ОС реализуется при помощи системных вызовов

Организация очереди из заданий в памяти требует планирования использования процессора

Переключение с одного задания на другое требует сохранения содержимого регистров и структур данных (контекста)

Поскольку память – ограниченный ресурс, используются стратегии управления памятью

Для обеспечения санкционированного обмена данными между программами средства коммуникации

Для разрешения конфликтных ситуаций средства синхронизации

Операционные системы

Лекция 2 - 2

Понятие процесса и ядра ОС; ресурсы ВС, управление процессами; структура контекста процесса; идентификатор и дескриптор процесса; иерархия процессов.

Понятие процесса и ресурсы ВС

Процесс – программа во время исполнения или объект, которому выделяются ресурсы ВС (процессор, память и ….)

Процесс – динамический объект

Программа и задание – статические объекты

Процесс характеризует:

Набор исполняемых команд

Выделенная для исполнения память (адресное пространство)

Адрес и состояние стеков

Используемые файлы

Устройства ввода-вывода

Значения регистров

Программный счетчик

Значение переменных

Программа и процесс

программа процесс

не существует взаимно-однозначного соответствия

Одна программа - несколько процессов

Один процесс – исполняет последовательно несколько программ

И даже в случае обработки только одной программы в рамках одного процесса: процесс – не просто динамическое описание кода исполняемого файла, данных и выделенных для них ресурсов. Процесс находится под управлением операционной системы , поэтому в нем может выполнятся часть кода ее ядра, не находящегося в исполняемом файле (предусмотренные случаи: системные вызовы, непредусмотренные: внешние прерывания)

Состояния процесса

Порождение – создаются условия для первого запуска Готовность – у процесса есть все необходимые ресурсы, кроме ЦП Активное – выделение процессора

Ожидание – (блокировка) нужный ресурс занят, процесс ждет его освобождения

Завершение – штатное или аварийное окончание работы программы

Основная функция ОС - управление процессами.

ОС должна обеспечить контроль над процессами в любом из возможных состояний.

Текущее состояние процесса описывается в системе с помощью PCB

(Process Control Block)