
- •Операционные системы
- •5. Процессы и потоки
- •Мультипрограммирование
- •Мультипрограммирование в системах пакетной обработки
- •Мультипрограммирование в системах разделения времени
- •Мультипрограммирование в системах реального времени
- •Мультипроцессорная обработка
- •Планирование процессов и потоков
- •Понятие «процесс» и «поток»
- •Создание процессов и потоков
- •Планирование и диспетчеризация потоков
- •Состояния потока
- •Вытесняющие и невытесняющие алгоритмы планирования
- •Алгоритмы планирования, основанные на квантовании
- •Алгоритмы планирования, основанные на приоритетах
- •Планирование с абсолютными и относительными приоритетами
- •Смешанные алгоритмы планирования
- •Планирование в системах реального времени
- •Моменты перепланировки
- •6. Мультипрограммирование на основе прерываний Назначение и типы прерываний
- •Механизм прерываний
- •Программные прерывания
- •Диспетчеризация и приоритезация прерываний в ос
- •Функционирование централизованного диспетчера прерываний на примере Windows nt
- •Системные вызовы
- •7. Процессы в ос unix Введение
- •Компоненты процесса
- •Атрибуты процесса Идентификатор процесса (pid)
- •Идентификатор родительского процесса (ррid)
- •Идентификатор пользователя (uid) и эффективный идентификатор пользователя (euid)
- •Идентификатор группы (gid) и эффективный идентификатор группы (egid)
- •Приоритет и значениеnice
- •Жизненный цикл процесса
- •Сигналы
- •Дамп памяти
- •Список процессов:ps
- •ВерсияBsd
- •Версия System V
- •Установка приоритета процесса при запуске:nice
- •Изменение приоритета запущенного процесса:renice
- •Отправка сигнала:kill
- •Отправка сигналов командам: killall
- •Прекращение процесса
- •Временная приостановка процесса
- •Список заданий:jobs
- •Фоновый режим работы
- •Перевод задания на передний план:fg
- •Отправка задания на задний план:bg
- •Список литературы
- •ОГлавление
- •Часть 2 1
Операционные системы
Конспект лекций
ЧАСТЬ 2
процессы и потоки. Мультипрограммирование на
основе прерываний
Для студентов дистанционной формы обучения
специальности 220200 – Автоматизированные системы обработки
информации и управления
Екатеринбург 2005
УДК 681.3.06
Составитель О.М. Зверева
Научный редактор: д-р техн. наук Л.Г. Доросинский
Операционные системы. Конспект лекций. Часть 2:Процессы и потоки. Мультипрограммирование на основе прерываний / О.М. Зверева. Екатеринбург: Изд-во УМЦ-УПИ, 2005.
В конспекте лекций приведены полное описание одной из центральных подсистем любой операционной системы: подсистемы управления процессами, рассмотрен вариант ее работы на основе использования прерываний. В качестве примера реализации подсистемы приведена подсистема управления процессами в операционной системе UNIX.
Библиогр .4 назв. Табл.2 Рис.14.
Подготовлено кафедрой «Автоматизированные системы управления».
ГОУ ВПО «Уральский Государственный Технический
Университет»-УПИ, 2005г.
5. Процессы и потоки
Важнейшей функцией операционной системы является организация рационального использования всех ее аппаратных и информационных ресурсов. К основным ресурсам могут быть отнесены процессоры, память, внешние устройства, данные и программы. Располагающая одними и теми же аппаратными ресурсами, но управляемая различными ОС, вычислительная система может работать с разной степенью эффективности. Поэтому знание внутренних механизмов операционной системы позволяет косвенно судить о ее эксплуатационных возможностях и характеристиках. Хотя и в однопрограммной ОС необходимо решать задачи управления ресурсами (например, распределение памяти между приложением и ОС), главные сложности на этом пути возникают в мультипрограммных ОС, в которых за ресурсы конкурируют сразу несколько приложений. Именно поэтому большая часть всех проблем, рассматриваемых в этой лекции, относится к мультипрограммным системам.
Мультипрограммирование
Мультипрограммирование, илимногозадачность (multitasking) – это способ организации вычислительного процесса, при котором на одном процессоре попеременно выполняются сразу несколько программ. Эти программы совместно используют не только процессор, но и другие ресурсы компьютера: оперативную и внешнюю память, устройства ввода-вывода, данные. Мультипрограммирование призвано повысить эффективность использования вычислительной системы, однако эффективность может пониматься по-разному. Наиболее характерными критериями эффективности вычислительных систем являются:
пропускная способность - количество задач, выполняемых вычислительной системой в единицу времени;
удобство работы пользователей, заключающееся, в частности, в том, что они имеют возможность интерактивно работать одновременно с несколькими приложениями на одной машине;
реактивность системы- способность системы выдерживать заранее заданные (возможно, очень короткие) интервалы времени между запуском программы и получением результата.
В зависимости от выбранного критерия эффективности ОС делятся на системы пакетной обработки, системы разделения времени и системы реального времени. Каждый тип ОС имеет специфические внутренние механизмы и особые области применения. Некоторые операционные системы могут поддерживать одновременно несколько режимов, например, часть задач может выполняться в режиме пакетной обработки, а часть - в режиме реального времени или в режиме разделения времени.