Шпаргалка по "Операционным системам"

Автор работы: Пользователь скрыл имя, 29 Марта 2011 в 00:47, шпаргалка

Описание работы

Работа содержит ответы на вопросы по дисципине "Операционные системы".

Файлы: 1 файл

шпора(My)2.doc

— 204.00 Кб (Скачать файл)

Тождественные – эквивалентные процессы работающие по одной и той же программе, но с различными трассами.

Равные –  тождественные процессы с одинаковыми  трассами. Все остальные процессы различны.

6.по связности. 

Два процесса являются взаимосвязанными, если между ними поддерживаются, с помощью системы управления процессами, функциональные пространственно-временные управляющие информационные или другие связи, иначе процессы изолированные. Изолированные со слабой связью могут влиять друг на друга. Если два взаимосвяз процесса используют вместе некоторые ресурсы, но информационно не связаны, те не обмениваются инф, то эти процессы информационно независимы. При наличии информацион связей, процессы взаимодействуют.

7 . Понятие потока. Способы реализации. Планирование.

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

Элементы  процесса Элементы потока
Адресное  пространство Счетчик команд
Глобальные  переменные Регистры
Открытые  файлы Стек
Дочерние  процессы Состояние потока
Необработан. аварийные сигналы  

 Аргументы в пользу использования потоков. 1) выполнение большинством программных приложений действий, которые могут временно блокироваться. 2) легкость создания потоков и их уничтожение, поскольку с потоком не связано никаких ресурсов. 3)  Возможность совмещения во времени операций ввода – вывода  или вычислений, когда в них имеется одновременная потребность. 4) концепция потоков удобна в системах с несколькими процессорами.

Способы реализации потоков

3 способа реализации пакета потоков

1)В пространстве  пользователя.

Процесс

Поток

Таблица потоков

Ядро   Таблица процессов

Ядро о потоках  ничего не знает  и управляет обычными однопоточными процессами. Каждому  процессу необходима собственная таблица  потоков для отслеживания потоков в процессе

Достоинства: Переключение потоков происходит быстрее, чем между процессами. Каждый процесс имеет свой алгоритм планирования 

Недостатки. Проблема реализации блокир. системных  запросов. Пока не обработается один поток не будет запущен другой

2) В пространстве  ядра.

Процесс

Поток

Ядро   Таблица процессов

            Таблица потоков

Достоинства Все запросы, которые блокируют поток реализуются как системные. Когда поток блокируется, ядро  запускает поток из этого или другого процесса.   Недостатки Все системные запросы требуют значит. больше времени так как связаны с переключением потоков

3)Смешанная

Потоки

Ядро               Поток ядра

Ядро знает  только о потоке своего уровня. Некоторые  из этих потоков могут содержать  по несколько потоков пользовательского  уровня. Потоки пользователя используют потоки ядра по очереди

Планирование  потоков

При планировании потоков определяется поддерживание  потоков на уровне пользователя или  ядра.  Рассмотрим процесс А  с  потоками (А1, А2… ) и процесс В с потоками (В1, В2…). При планировании потоков на уровне пользователя, ядро не знает о существовании потоков, выполняет обычное планирование. Выбирает процесс А и предоставляет ему квант времени. Планировщик потоков внутри процесса А выбирает поток А1. Если квант времени  для процесса А (50 нс) > чем квант времени  для потока А1 (5нс), то планироваться будет выполнение (А1, А2 …)

При реализации потоков на уровне ядра, ядро не обязательно  принимает во внимание какой поток  принадлежит какому процессу. По истечении кванта времени управление передается потоку другого процесса (А1, В1, А2, В2….).  
 

8. Планирование и диспетчеризация процессов. Стратегии планирования.

Есть три уровня планирования процесса:

1.долгосрочное  планирование или планирование  задач – определяет в каком порядке задачи поступают в систему и будут пораждены соответствующими процессами. Этим занимается планировщик.

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

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

2. если выполняющийся  процесс завершился.

3. если использ  невытесняющ планиров. При невытесняющ  – только когда заканчивается  выполнение процесса или же  он переходит в состояние ожидания. Краткосрочное выполняется часто.

3. среднесрочное  планирование – тесно связано  с управлением памяти (виртуальной). Среднесроч планир отвечает за  выбор процессов которые при  необходимости можно скинуть  во вторичную память (жесткий диск) причем эти процессы должна быть максимально долго не нужны системе. Механизм называется swapping.

Стратегии диспетчеризации.

Требования:

1. главное требование  справедливость выделения времени  всем процессам.

2. ограниченного  ожидания. Процесс не должен ожидать  своей очереди бесконечно.

3. минимизация полного времени оборотов – время от поступления задачи в систему, до момента когда покинет систему.

Минимизация времени  ожидания в очереди waiting time.

Вытесняющее и  не вытесняющее планирование.

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

9. Планирование  в системах пакетной обработки данных. Дисциплины FCFS, SJN, SRN.

FCFS - First-Come, First-Served - первым пришел, первым обслужен. Процессы обслуживаются в строгом порядке своего поступления в систему. Не вытесняющий алгоритм. Достоинство: простота. Недостатки: большая зависимость эффективности работы вычислительной системы от порядка поступления процесса. В случает если длительные процессы поступили раньше, то коротких проц нужно слишком долго ждать. Следовательно увеличивается полное время оборота, а также время ожидания.

SJN - Shortest Job Next — следующим выполняется самое короткое задание. На выполнение поступает процесс которому  необходимо наименьшее время выполнения. За счет этого минимизируется полное время оборота и время ожидания. Не вытесняющий алгоритм. Достоинства: очень хороший алгоритм. Недостатки: не применяется ибо нереален.

SRN – Shortest Remain Next –Вытесняющая модификация предыдущего алгоритма. Время выполнения представляет собой абсолютный приоритет. При поступлении в систему нового процесса сравнивается время, которое необходимо новому процессу  и оставшееся время выполнения текущего проц. Выполняться будет тот процесс, у которого значение меньше. Алгоритм мочень хорош и столь же нереален. 

10. Планирование в интерактивных системах. Дисциплина RR (круговое планирование), дисциплины приоритетного планирования.

RR(Round Robin)- карусель. Каждому процессу выделяется квант времени. В случае если за выделен квант времени процесс завершается ,следующий процесс не простаивает. Ему выдел след квант врем. Размер кванта времени – главные вопрос. Если квант времени большой, то короткие процессы успевают завершиться и алгоритм выражается в FCFS. Если квант времени слишком маленький, то существенно возрастают накладные расходы между процессами. Может использоваться приоритетное планирование в зависимости от приоритета , после выполнения процесс может становиться не в конец очереди. Алгоритм активно используется в современных ОС.

11. Планирование в системах реального времени

, где m – кол-во событий, Ti- время которое уходит на обработку событий. Pi- периодичность, с которой поступает событие.

 Для того, чтобы планировать однородные процессы (время на обработку и периодичность у всех процессов равны) можно использовать циклической планирование. Но для реальных систем это не подходит, потому, что процессы неоднородны. Чтобы планировать реальные процессы, планировщик должен знать частоту с которой должен работать каждый процесс. Первый алгоритм планирования. Статический RMS (Rate Monotonic Scheduling) – процессы должны бытии удовлетворять следующ условиям: процесс должен был быть завершен за время его периода; один проц не должен зависеть от другого; каждому процессу требуется одинаковое процессорное время на каждом интервале. У непериодичн процессов нет жестких сроков. Требования проц происходят мгновенно. Недостаток: он не учитывает момент поступления следующего события.

Динамический  алгоритм планирования EDF(Earliest Deadline First) – учитывает ближайший момент поступления события. Приоритет каждого процесса выставляется в соответствии с тем, сколько времени осталось дедлайна. Таким образом процессы с течением времени изменяются. Способен планировать сильно загруженную систему в отличии от статистического алгоритма.

12. Системные вызовы. Схема 12. Системные вызовы. Схема обработки системных вызовов

Системный вызов (С.В.)  - обращение прикладной программы  к ядру ОС для выполнения какой-либо операции

Требования  к реализации С.В.:

  1. обеспечить переключение в привилегированный режим
  2. обладать высокой скоростью вызова процедур ОС
  3. обеспечивать единообразное обращение к системным вызовам для аппаратных платформ на которых работает ось
  4. допускать легкое расширение вызова набора системных вызовов
  5. обеспечить контроль со стороны ОС

При любом системном  вызове выполняется программное  прерывание int80h. Передаётся номер системного вызова, затем параметры и вызывается обработчик данного прерывания – диспетчер С.В., который сохраняет содержимое в системном стеке, проверяет попадает ли запрошенный номер вызова в диапазон, по номеру находят соответствующие процедуры и передает ей управление

Типы  С.В.:

  1. синхронное –процесс приостанавливается и ждет завершения выполнения системного вызова
  2. асинхронное – процесс продолжает выполняться II с действием системного вызова

fork –создание нового процесса

exec – подмена текущего процесса другим исполняемым файлом

open, close, read, write –  работа с файлами 

Схема обработки системных  вызовов:

Текущий процесс  shell делает  вызов fork порождая вторую копию shell, которая вызывает exec, указывая в качестве параметра имя используемого файла, образ которого необходимо загрузить в память. Утилита ls начинает выполняться, по завершении работы ls созданный процесс исчезает (exit). Системный вызов wait позволяет заблокировать выполнение процесса, пока кто-нибудь из потомков не завершит работу.   

13. Назначение и классы  прерываний. Механизм  обработки прерываний. Учет приоритета прерываний

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

Mov ax,1

Mov bx,2

Jre x

Информация о работе Шпаргалка по "Операционным системам"