Операционные системы Процессы и потоки Скрипов Сергей Александрович skripov@csu.ru 2009.

Презентация:



Advertisements
Похожие презентации
Операционные системы Процессы и потоки Скрипов Сергей Александрович 2009.
Advertisements

Классификация ОС. Операционные системы могут различаться особенностями реализации внутренних алгоритмов управления основными ресурсами компьютера (процессорами,
Операционные системы, среды и оболочки Процессы в операционных системах.
Мультипрограммировани е Тема 4 Процессы и потоки Лекция 4 Учебные вопросы: 1. Основные режимы работы операционной системы 2. Понятие процесса и потока.
Функции, назначение и состав операционной системы 2010 г. Часть 2.
Выполнили: Мартышкин А. И. Кутузов В. В., Трояшкин П. В., Руководитель проекта – Мартышкин А. И., аспирант, ассистент кафедры ВМиС ПГТА.
Операционная система MS Windows* Развитие ОС: пакетная обработка, интерактивные системы, ОС реального времени, системы с разделением времени. Истинная.
1. Этапы развития вычислительной техники и программного обеспечения. 2.Структура вычислительной системы. Ресурсы ВС- физические ресурсы, виртуальные ресурсы.
Лекция 3. Исключения и прерывания в встроенных системах.
Прерывания Определение прерывания Прерывания представляют собой механизм, позволяющий координировать параллельное функционирование отдельных устройств.
Планирование процессов БОП БВП Обработка ЦП Завершение 1 4 Ожидание начала обработки 0 Ожидания операции в/в 2 3 Очередь на выполнение 5 6 Диск свопинг.
Лекция 6 Понятие операционных систем Учебные вопросы: 1. Характеристики ОС 2. Свободные и проприетарные ОС.
Операционные системы Введение в операционные системы Бленда Николай Андреевич 2009.
Учебный курс Операционные среды, системы и оболочки Лекция 5 Лекции читает доктор технических наук, профессор Назаров Станислав Викторович.
Классификация ОС Классификация ОС Выполнила : студентка 2 курса «ФИТ» Смирнова Е. Г.
Понятие об операционной системе (ОС). Что происходит сразу после включения питания ПК? При включении питания процессор обращается в микросхему ПЗУ (постоянное.
Лекция 4. Режимы работы микропроцессора. Взаимодействие микропроцессора с остальными устройствами Взаимодействие МП с остальными устройствами МПС происходит.
Операционные системы. 2 Операционная система Основная управляющая программа компьютера, которая постоянно находится в памяти компьютера и занимается всеми.
Учебный курс Основы операционных систем Лекция 3 кандидат физико-математических наук, доцент Карпов Владимир Ефимович.
Встроенные Системы Часть 3. Прерывания Кафедра Информатики, мат-мех СПбГУ Copyright © 2004 Victor Vengerov
Транксрипт:

Операционные системы Процессы и потоки Скрипов Сергей Александрович 2009

Мультипрограммирование Критерии эффективности вычислительных систем: Пропускная способность – количество задач, выполняемых за единицу времени Удобство работы пользователей – степень интерактивности вычислительной системы Реактивность системы – способность выдерживать заранее заданные интервалы между запуском программ и получением результата

Мультипрограммирование Классификация вычислительных систем по критериям эффективности: Системы пакетной обработки Системы разделения времени Системы реального времени

Мультипрограммирование Пропускная способность – количество задач, выполняемых за единицу времени Критична для решения задач вычислительного характера Используются системы пакетной обработки. Для увеличения пропускной способности необходимо минимизировать время простоя процессора

Мультипрограммирование Системы пакетной обработки Совмещение операций ввода-вывода: 1. Использование каналов - специальных процессоров для управления внешними устройствами

Мультипрограммирование Системы пакетной обработки Совмещение операций ввода-вывода: 2. Использование контроллеров устройств, автономно выполняющих команды центрального процессора

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

Мультипрограммирование Системы пакетной обработки Задачи выполняются одна за другой Под управлением системы пакетной обработки общее время работы уменьшилось

Мультипрограммирование Системы пакетной обработки Недостатки: 1.Такие системы неинтерактивны, пользователь не может вмешиваться в процесс вычисления 2.Одна задача способна надолго занять все ресурсы.

Мультипрограммирование Системы разделения времени Пользователю предоставляется возможность интерактивной работы сразу с несколькими приложениями Всем приложениям попеременно выделяется квант процессорного времени ОС ААА БББ

Мультипрограммирование Системы разделения времени + Интерактивность + Оптимальное использование ресурсов. (Возможность одновременно с вычислениями осуществлять ввод-вывод) - Накладные расходы на переключение между задачами - Интерактивность (когда системой управляет альтернативно-одаренный пользователь)

Мультипрограммирование Системы реального времени Мультипрограммная смесь состоит из фиксированного набора заранее разработанных программ Выбор программы на выполнение происходит или по прерываниям или по расписанию плановых работ При проектировании закладывается некоторый «запас» вычислительной мощности

Процессы и потоки Понятия «процесс» и «поток» Процесс – заявка на потребление всех видов ресурсов, кроме процессорного времени Поток – последовательность команд, работающих в рамках некоторого процесса

Процессы и потоки Понятия «процесс» и «поток» Процесс – память, файлы, сокеты, семафоры Поток – квант процессорного времени, контекст

Процессы и потоки

Понятия «процесс» и «поток» Процесс firefox.exe Память – Кб Окна – 321 шт Временный файл Сокет1 tcp/ip yandex.ru Coкет2 tcp/ip afisha.mail.ru Поток 1 – перемещение данных из сокета1 в память Поток 2 – перемещение данных из сокета1 в память Поток 3 – отображение содержимого активной закладки

Процессы и потоки Планирование и диспетчеризация потоков Планирование Определение момента времени для смены текущего активного потока Выбор для выполнения потока из очереди Диспетчеризация Сохранение контекста текущего потока Загрузка контекста нового потока Запуск нового потока на выполнение

Процессы и потоки Алгоритмы планирования потоков Невытесняющие – потоку позволяется выполняться, пока он сам, по собственной инициативе не отдаст управление операционной системе (файл-серверы Net Ware) Вытесняющие – решения о смене и выборе активного потока принимаются операционной системой (UNIX, Windows начиная с Windows 95, OS/2)

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

Алгоритмы планирования Алгоритмы, основанные на квантовании Каждому потоку в порядке очереди предоставляются ограниченные непрерывные периоды процессорного времени - кванты Кванты могут быть одинаковыми для всех потоков, или различными

Алгоритмы планирования Алгоритмы, основанные на квантовании

Алгоритмы планирования Алгоритмы, основанные на приоритетах 1. Относительные приоритеты

Алгоритмы планирования Алгоритмы, основанные на приоритетах 1. Абсолютные приоритеты

Мультипрограммирование на основе прерываний Прерывание переводит процессор на выполнение потока команд, отличного от того, который в данный момент выполнялся с последующим возвратом к исходному. Прерывание происходит в произвольной точке потока команд, которую программист не может прогнозировать.

Мультипрограммирование на основе прерываний Типы прерываний Внешние (аппаратные). Возникают в результате действий пользователя или сигналов от внешних устройств. (нажатие клавиши на клавиатуре, передвижение мыши, сигнал от жесткого диска об окончании операции записи)

Мультипрограммирование на основе прерываний Типы прерываний Внутренние (исключения). Происходят при аварийной ситуации в ходе выполнении некоторой инструкции(деление на ноль, обращение по несуществующему адресу в памяти, попытка выполнить привилегированную инструкцию)

Мультипрограммирование на основе прерываний Типы прерываний Программные. Не являются «настоящими» прерываниями. По сути имитация прерывания (запрос на выделение памяти, запись данных в файл, открытие сетевого соединения, создание нового потока).

Мультипрограммирование на основе прерываний Аппаратные прерывания от таймера позволяют системе вмешиваться в вычислительный процесс и проводить перепланировку

Мультипрограммирование на основе прерываний Неупорядоченная обработка прерываний

Мультипрограммирование на основе прерываний Диспетчеризация и приоритезация прерываний в ОС Использование диспетчера прерываний Произошло Прерывание 1.Вызов диспетчера прерываний 2.Запрещение всех прерываний 3.Принятие решения: постановка прерывания в очередь либо выполнение прерывания

Мультипрограммирование на основе прерываний Диспетчер прерываний на примере Windows NT

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

Синхронизация процессов и потоков Блокирующие переменные

Синхронизация процессов и потоков Семафоры Для объекта семафор вводятся две неделимые операции: V(S): переменная S увеличивается на 1 единым действием. P(S): уменьшение S на 1, если это возможно. Если S=0, то в этом случае поток, вызывающий операцию Р, ждет, пока это уменьшение станет возможным.