процессов систем - dmitry zaitsevdaze.ho.ua/nos-trass.pdf · систем....

37
3 Д.А. Зайцев, С.М. Вороной, Т.Р. Шмелёва Трассировка процессов функционирования сетевых операционных систем Методические указания к лабораторным и практическим занятиям Донецьк ІПШІ «Наука і освіта» 2007 4 УДК 004.4’6 Т 65 Рецензенти: Кандидат технічних наук, доцент Донецького національного технічного університету О.А. Дмітрієва Кандидат технічних наук, доцент Донецького державного інституту штучного інтелекту Р.М. Бабаков Зайцев Д.А. , Вороной С.М., Шмелёва Т.Р. Т 65 Трассировка процессов функционирования сете- вых операционных систем: Методические указания к лабораторным и практическим занятиям. Донецьк: ІПШІ «Наука і освіта», 2007. – 68 с. Представлены индивидуальные задания для проведения лабораторных и практических занятий по основным разделам теории сетевых операцион- ных систем. Каждая тема начинается кратким из- ложением теоретического материала, затем следу- ет общее описание задания, пример его выполнения, контрольные вопросы; в приложениях приведены варианты заданий. УДК 004.4’6 Рекомендовано до видання Вченою радою Донецького державного інституту штучного інтелекту © ІПШІ «Наука і освіта», 2007

Upload: others

Post on 13-Jul-2020

8 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: процессов систем - Dmitry Zaitsevdaze.ho.ua/nos-trass.pdf · систем. Каждая тема ... кратким из-ложением теоретического

3

Д.А.

Зайц

ев, С

.М. В

ороной

, Т.Р

. Шмелёва

Трассировка процессов

функционирования сетевых

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

Мето

диче

ские

ука

зани

я

к ла

бора

торн

ым и

пра

ктич

ески

м за

няти

ям

Донецьк

ІПШІ «Наука

і освіта

» 20

07

4 УДК

004

.4’6

Т

65

Рецензенти

: Кандидат технічних наук

, доцент

Донецького національного технічного

університету

О.А

. Дмітрієва

Кандидат технічних наук

, доцент

Донецького держ

авного

інституту штучного інтелекту

Р.М

. Бабаков

Зайц

ев Д

.А. ,

Вороной

С.М

., Шмелёва Т

.Р.

Т

65

Трассировка процессов фу

нкционирования

сете-

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

: Методические указания

к

лабораторным

и практическим

занятиям.

– Д

онецьк

: ІПШІ «Наука

і освіта

», 2

007.

– 6

8 с.

Представлены

индивидуальные

задания

для

проведения

лабораторны

х и практических

занятий

по

основны

м разделам

теории сетевы

х операцион-

ных систем

. Каж

дая тема

начинается кратким из

-ложением

теоретического материала,

затем

следу

-ет

общ

ее описание задания,

пример его вы

полнения

, контрольны

е вопросы

; в прилож

ениях

приведены

варианты

заданий.

УДК

004

.4’6

Рекомендовано до

видання

Вченою

радою

Донецького

державного

інституту штучного

інтелекту

©

ІПШІ «Наука

і освіта

», 2

007

Page 2: процессов систем - Dmitry Zaitsevdaze.ho.ua/nos-trass.pdf · систем. Каждая тема ... кратким из-ложением теоретического

5

Д.А.

Зайц

ев, С

.М. В

ороной

, Т.Р

. Шмелёва

Трассировка процессов

функционирования сетевых

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

Мето

диче

ские

ука

зани

я

к ла

бора

торн

ым и

пра

ктич

ески

м за

няти

ям

Рекомендовано

Учены

м советом ДонГИ

ИИ

, протокол

№ 8

от

29.0

5.20

07 г

.

Донецк

ИПИИ

«Наука

і освіта

» 20

07

6

Навчальне

видання

Дми

трий

Анатольевич

Зайцев

Сергей Михайлович Вороной

Татьяна Рудольфо

вна Шмелёва

ТРАСС

ИРО

ВКА

ПРО

ЦЕС

СОВ

ФУНКЦ

ИОНИРО

ВАНИЯ СЕ

ТЕВЫ

Х

ОПЕР

АЦИОННЫХ

СИСТ

ЕМ

Методические указания

к лабораторным

и практическим занятиям

Відповідальний редактор

С.Б

. Іванова

Технічний редактор

В.М

. Пігуз

Ком

п’ютерна верстка Т.Є

. Нікітіна

Коректор К

.С. Х

листа

Здано до

набору

00.0

0.20

07. П

ідписано

до друку

00.

00.2

007.

Формат 6

0×84

/16.

Обл

.-вид

. арк

. 0,0

0. Тираж

000

прим.

Зам

. 00

/07 від

00.0

0.20

07.

Ціна д

оговірна

__

____

____

____

____

____

____

____

____

____

____

____

____

___

Віддруковано в Інституті проблем

штучного інтелекту МОН

і НАН

України

Свідоцтво

№ 4

44, серія

ДК

від

08.

05.2

001 р.

Україна

, 830

50, м

. Донецьк

, пр.

Б. Х

мельницького

, 84

тел.

(06

2) 3

37-0

1-70

e

doff

ice@

iai.d

onet

sk.u

a w

ww

.iai.d

onet

sk.u

a

Page 3: процессов систем - Dmitry Zaitsevdaze.ho.ua/nos-trass.pdf · систем. Каждая тема ... кратким из-ложением теоретического

7

Содержание

Введение

4 Структура

и организация

функционирования

современны

х сетевы

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

5

Общ

ая характеристика заданий по

трассировке

процессов фу

нкционирования

сетевых ОС

7

Раздел

1. У

правление процессами

9

Занятие

1.1.

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

рование

10

Занятие

1.2.

Циклическое

квантование

времени

14

Занятие

1.3.

Приоритетны

е дисциплины

18

Раздел

2. У

правление памятью

22

Занятие

2.1.

Динамические разделы

22

Занятие

2.2.

Свопинг

процессов

27

Занятие

2.3.

Страничная память

31

Раздел

3. У

правление устройствами

39

Занятие

3.1.

Циклическая

буф

еризация

39

Занятие

3.2.

Планирование дисковых операций

42

Занятие

3.3.

Взаим

одействие комп

ьютеров в сети

47

Раздел

4. У

правление инфо

рмацией

52

Занятие

4.1.

Файловая структура диска

52

Приложения

60

Приложение

1. В

арианты

заданий

60

Приложение

2. О

писание алгоритмов

работы

комп

онентов ОС

64

Список основной

реком

ендуемой

литературы

70

Список дополнительной

литературы

70

8

Введени

е Большинство

современны

х сетевы

х операционных

систем

обладаю

т практически одинаковым

набором

воз-

можностей

и отличаю

тся лишь особенностями их

реали

-зации,

а также организацией

интерфейсов

пользователя и

адми

нистратора

. Кроме

того,

конкретны

е операционные

системы

зачастую

вводят собственную

терми

нологию

, что

затрудняет

понимание общих

принципов

функциониро-

вания сетевы

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

. В

настоящ

ем методическом пособии изучение

основ

-ны

х возмож

ностей

современных

сетевы

х операционных

систем

выполнено в соответствии

с классической терм

ино-

логией

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

, что

позволяет

затем

прим

енить

полученные

знания

и

навы

ки к

анализу

конкретных

операционных

систем

на

лабораторных

занятиях

. Рекомендуемы

ми к

дальнейшему изучению

на

лабораторных занятиях

являю

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

семейств

MS

Win

dow

s, U

nix,

QN

X. К

роме

того,

возмо

жно

изучение

специализированны

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

ком

-му

таторов,

маршрутизаторов и других

сетевых устройств,

наприм

ер операционных

систем

IO

S комп

ании

C

isco

. Целесообразны

м представляется

также проведение

семи-

нарских занятий по

ретроспективном

у изучению

опера

-ционны

х систем

, внесш

их значительны

й вклад в развитие

теории

операционных

систем

, таких

как

MU

LTIC

S,

OS/

360,

RSX

11M

, VA

S/V

MX

. Сущ

ествую

т различны

е уровни

освоения предмета

«С

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

», такие

как

уровень

ква

-лифи

цированного пользователя

, уровень

адм

инистратора и

уровень проектировщика

(разработчика)

. Базовым уровнем

для направления

«Телеком

муникации»

является уровень

адми

нистратора

. Однако квалиф

ицированное адми

нистри

-рование в настоящее

время

практически

невозмо

жно

без

освоения

основ

проектирования

операционных

систем

, предполагающих

знание структур

данны

х и алгоритмов

Page 4: процессов систем - Dmitry Zaitsevdaze.ho.ua/nos-trass.pdf · систем. Каждая тема ... кратким из-ложением теоретического

9

работы

ком

понентов

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

. Задания по

трассировке

процессов

функционирования

ОС

представляют

собой

основу

для

изучения

алгоритмов

работы

ком

понентов

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

.

Структура

и организация

функц

иони

ровани

я современны

х сетевы

х операционн

ых систем

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

– это комп

лекс

программ для

управления

ресурсами

комп

ьютера

, организации

интер-

фейсов

с пользователем

и обеспечения

защиты

ресурсов.

Таким образом,

ОС

, реш

ает две группы

задач:

− управление

ресурсами

; − организация интерф

ейсов.

Различаю

т 4 типа

ресурсов:

процессоры

; −

оперативная

память;

устройства ввода/вы

вода

; −

инф

ормация.

Рассматриваю

т 4 типа

операций по

управлению

ре-

сурсом

: −

выделение;

освобож

дение;

отслеживание

; −

планирование.

Таким образом,

управление ресурсами представлено

16

компонентами операционной

системы

(4 типа ресурсов

х 4

типа

операций)

. Кр

оме того

, ввиду существенны

х отличий

устройств ввода/вы

вода

(например,

сетевая

карта

и магнит-

ный

диск

) вы

полняю

т дальнейш

ее структурирование

средств управления

устройствами.

Ком

понент

операцион

-ной системы

, организующий

ввод/вы

вод для конкретного

типа

устройств

называют драйвером.

Среди

интерфейсов

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

наиболее

известны

м является

интерфейс

с пользователем

. Как

пра

-

10

вило

, современны

е ОС

реализую

т две

разновидности

пользовательского интерф

ейса

: текстовы

й командны

й ин

-терф

ейс и графический.

Лаконичность текстового

ком

анд-

ного

интерфейса обусловливает его широкое

применение в

сетях для удалённого

доступа

. Запущенная программ

а представляет

собой

единицу

работы

для

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

и именуется

процессом

. Интерфейсы

процессов

и оборудования

недоступны

непосредственно

конечном

у пользователю

. Интерфейс

процессов представляет

собой

набор

системн

ых вы

зовов,

с

помо

щью

которых вы

полняемая программ

а обращается за

сервисом

к операционной системе,

например,

для

выпол-

нения

операций

ввода/вы

вода

. Исполняя

системны

е вы

зовы

, операционная система взаимо

действует с оборудо-

ванием

, используя его фи

зический

интерфейс

, представ

-ленный в архитектуре комп

ьютера

, например,

множеством

портов

ввода

/вывода

и аппаратны

ми преры

ваниями.

Таким

образом,

операционная

система

запрещ

ает

непосредственное

обращ

ение

пользовательских программ

к оборудованию

и выступает в качестве

посредника,

вы

-полняя

конкретны

е операции

на устройствах

от и

мени

пользовательских

процессов

. Описанная

технология явля

-ется

основой

для

реализации фу

нкций защиты

пользова-

тельских

процессов

друг от

друга

и самой

операционной

системы

от

пользовательских

процессов.

Обеспечение

защиты

возмо

жно

лиш

ь при соответствую

щей

аппаратной

поддержке

: наличии нескольких

реж

имов

работы

процес-

сора

с

различны

м мн

ожеством

доступны

х команд

. В

простейшем

случае используется

2 реж

има:

«система»

для

исполнения

ОС

и

«пользователь»

для

исполнения

процессов пользователя

. Попытка вы

полнения

процессом

пользователя

привилегированной

команды

(например,

записи

в порт устройства

) вы

зывает

специальное

преры

-вание,

перехватываемое

ОС

. Классической

является

реализация

комп

онентов

операционной

системы

в форме

ядра и мн

ожества систем

-

Page 5: процессов систем - Dmitry Zaitsevdaze.ho.ua/nos-trass.pdf · систем. Каждая тема ... кратким из-ложением теоретического

11

ных процессов.

Ядро представляет

собой

часть

операцион

-ной системы

, которая

постоянно

находится

в оперативной

памяти

и не является

процессом

. Фактически ядро

пред-

ставляет

собой

множ

ество

обработчиков

прерываний:

аппаратных

– для управления

вводом/вы

водом,

памятью

и

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

; программ

ных

– для реализации

системн

ых

вызовов.

В системн

ые процессы

выделяют комп

оненты

ОС

, требую

щие

значительны

х временны

х затрат

в про

-цессе вы

полнения

, например,

файловы

е операции

, ком

анд-

ный и графический интерф

ейсы

пользователя.

Как

правило

, при загрузке

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

в

оперативную

память загруж

ается ядро

, перехватывающее

все прерывания,

и таким

образом

захватывающее

полны

й контроль

над

оборудованием

, а также несколько начальны

х процессов,

обеспечиваю

щих

интерфейс

с пользователем

. Далее

, пользователь

мо

жет

запускать

собственны

е процессы

, а операционная

система

инициировать запуск

требуемы

х системны

х процессов.

Общ

ая характеристик

а задани

й по

трассировке

процессов функц

иони

ровани

я сетевы

х ОС

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

в

соответствии

с основны

ми ресурсами

операционной систе-

мы: процессоры

(процессы

), оперативная память

, устройства,

информация

. Большинство

занятий

предполагает изучение

простейш

их операций

ОС

: вы

деление

и освобождение

соответствую

щих

ресурсов

. При

изучении

средств

управления

инфо

рмацией

особое

вним

ание

уделено

операциям отслеж

ивания

состояния

ресурса

, реализуемым

с помо

щью

специальной

файловой

структуры

диска.

Наиболее слож

ная операция

планирования ресурса изучена

на примере

планирования очереди запросов

к магнитном

у диску.

12

В качестве набора

основны

х возмож

ностей

современ-

ных

операционных

систем

, изучаемы

х в

настоящем

пособии,

выбраны

следующие

: −

мультипрограмми

рование;

циклическое

квантование

времени

; −

приоритетны

е дисциплины

; −

динамические разделы

; −

свопинг

; −

виртуальная

(страничная)

память;

буф

еризация

ввода

/вывода

; −

технология клиент

-сервер;

планирование дисковых операций

; −

файловая структура диска.

Ти

повое задание состоит в вы

полнении

ручной трас

-сировки процессов фу

нкционирования

ком

понентов

ОС

, реализую

щих

указанны

е возмож

ности,

при

обработке

заданной

последовательности процессов

(запросов)

. Запол

-няемые

трассировочные

таблицы

представляют

собой

упрощённое представление фр

агментов

базы

данны

х опе-

рационной системы

. Трассировочная

таблица

отображ

ает

процессы

изменения

базы

данны

х ОС

во времени в резуль

-тате

вы

полнения

операций

. Она

является

основой

для

дальнейш

его

анализа

преиму

ществ

и

недостатков

изучаемы

х возмож

ностей

операционны

х систем

. В

процессе вы

полнения

заданий

студент

выполняет

действия

в точности таким

же

образом

, как это делает

операционная

система

, что

позволяет

ему

понять слож

ные

алгоритмы

функционирования современны

х операционных

систем

. Ручная трассировка мо

жет

рассматриваться

также

как

первый

шаг

к

изучению

основ

проектирования

операционных

систем

. Её

логическим

продолжением

является

описание алгоритмов

функционирования комп

о-нентов

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

, взаим

освязей комп

онентов

и детализированного

представления

базы

данных

ОС

. Примеры

описания алгоритмов

и объектов базы

данны

х ОС

приведены

в Приложении

2.

Page 6: процессов систем - Dmitry Zaitsevdaze.ho.ua/nos-trass.pdf · систем. Каждая тема ... кратким из-ложением теоретического

13

Раздел

1. У

правлени

е процессами

Клю

чом

к пониманию

фу

нкционирования

средств

управления

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

(процессами)

современных ОС

является

диаграмма

состояний

процесса.

Модули ОС

обес-

печивают изменение состояний процессов в соответствии

с

диаграмм

ой,

переключение

контекста

процессора

для

запуска текущего процесса

, вызов подсистемы

ввода

-выво

-да

для

инициирования

операций на

внешних устройствах.

Основны

ми состояниями

процесса являются:

представление

; −

готовность;

выполнение

; −

блокировка;

заверш

ение

. В

состоянии

представления

запущ

енному

процессу

выделяются требуемы

е ресурсы

; в состоянии готовности

процесс обладает

всеми

необходим

ыми

для

выполнения

ресурсами за

исклю

чением

центрального процессора

(ЦП

); в

состоянии

выполнения

программ

ный

код

процесса

фактически

выполняется на

процессоре;

в состоянии

бло

-кировки процесс ож

идает собы

тия

(например,

завершения

ввода-вы

вода

); в

состоянии

заверш

ения

процесс

осво

-бождает

ресурсы

ОС

. Абстрактная

диаграмма

состояний

им

еет следую

щий

вид

:

представление

выполнение

заверш

ение

готовность

блокировка

14

При

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

ОС

абстрактная

диаграмм

а дополняется мн

ожеством

состояний

, отображаю

щих

раз

-личные причины

блокировок и этапы

выделения

(осво-

бождения)

ресурсов.

Занятие

1.1.

Мультип

рограм

мирование

Цель занятия

: освоить основы

организации

мультипро

-граммн

ого режим

а работы

операционны

х систем

, оценить

преиму

щества му

льтипрограмм

ирования

Краткое изложение

теоретического

материала

Первы

е вы

числительные системы

(ВС

) работали

в

однопрограмм

ном режим

е. ОС

начинала вы

полнение

ново-

го задания

лиш

ь в случае

полного

завершения

текущ

его

задания.

Схематически это мо

жно

представить

следующим

образом:

ВС

задания

Это

приводило

к неэфф

ективном

у использованию

ресурсов

вычислительной

системы

в связи

с простоем оборудования

. Только

одно из

многочисленны

х устройств

(процессор

, магнитны

й диск

, принтер,

магнитная

лента

) работало

в

конкретный мо

мент

времени

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

ые ОС

позволяют загрузить мн

оже-

ство

устройств

вычислительной

системы

за счёт

одновре

-менного вы

полнения

нескольких заданий,

что

приводит к

сокращ

ению

сумм

арного

времени

выполнения

смеси

заданий.

Схематически

ОС

, вы

полняю

щую

N

заданий,

мо

жно

представить

следующим

образом

:

ВС

задания

1 N

Page 7: процессов систем - Dmitry Zaitsevdaze.ho.ua/nos-trass.pdf · систем. Каждая тема ... кратким из-ложением теоретического

15

Число

N называют коэффициентом мультипрограмм

ирования

. Сокращ

ение

суммарного времени выполнения

достигается

за

счёт

совмещ

ении

работы

процессора

с

работой

внеш

них

устройств. В то

время

как

Процесс

2 вып

олняется

на процес

-соре

, Процесс

1 может

обслужи

ваться

на м

агнитном

диске

:

Следует

отметить,

что

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

ый

режим

работы

требует

соответствующей

аппаратной поддержки

. Оборудование долж

но обеспечивать автономн

ую работу

внеш

них

устройств,

управляемы

х своим

контроллером

(каналом

), а такж

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

внеш

них устройств о заверш

ении

операции.

Задание

Выполнить ручную

трассировку

работы

средств

управ

-ления процессами

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

ой О

С. Оценить

эф-

фективность работы

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

ой ОС

. Структура

ВС

:

Завершение

процесса

Запуск

процесса

Обм

ен с

МД

Обм

ен с

МЛ

ЦП

МД

П2

П1

Параллельная

работа

ЦП

и М

Д

Время

Операция П

1 чтения

с М

Д

Центральный

процессор

(ЦП

)

Магнитный диск

Д)

Магнитная

лента

Л)

16

Порядок

выполнения

1.

Выполнить ручную

трассировку

выполнения

указанной

смеси процессов:

а)

в однопрограммн

ой вычислительной

системе

; б)

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

ой вычислительной

системе

. 2.

Заполнить

трассировочны

е таблицы

3.

Вып

олнить

анализ эффективности мультипрограмм

ного

режим

а: 3.1.

Оценить

ускорение

вып

олнения смеси процессов

3.2.

Рассчитать и сравнить

коэфф

ициенты

загрузки

устройств

4. Сфо

рмулировать

преиму

щества

мультипрограмм

ного

режим

а Пример выполнения

Характеристики вы

полняемы

х процессов

Ном

ер

Время

поступления

Последовательность действий

1 0

ЦП

(40)

-МД

(100

)-ЦП

(20)

2

10

ЦП

(20)

-МД

(100

)-ЦП

(80)

3

20

ЦП

(60)

-МД

(100

)-ЦП

(10)

Пример трассировки

Время

Очередь

гото

-вых процессов

Процес

-сор

Очередь

к М

Д

МД

0

П1(

40)

10

П2(

20)

П1(

30)

20

П3(

20),П

2(20

) П

1(20

)

40

П

3(20

) П

2(20

)

П1(

100)

60

П3(

60)

П2(

100)

П

1(80

) 12

0

П

3(10

0), 2

(100

) П

1(20

) 14

0

П1(

20)

П3(

100)

П

2(10

0)

160

П3(

100)

П

2(80

) 24

0

П2(

80)

П

3(10

0)

320

П

3(20

) 34

0

П3(

10)

350

Page 8: процессов систем - Dmitry Zaitsevdaze.ho.ua/nos-trass.pdf · систем. Каждая тема ... кратким из-ложением теоретического

17

Ускорение

выполнения

смеси

процессов

Время

выполнения

смеси

в однопрограммн

ом

режим

е:

Т1=(

40+1

00+2

0)+(

20+1

00+8

0)+(

60+1

00+1

0)=5

30

Время

выполнения

смеси

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

ом

режим

е:

Тм=3

50

Ускорение

А

=Т1

/ Тм

= 53

0 / 3

50=1

,51

Коэфф

ициенты

загрузки

устройств

K=T

устр

/ Tобщ

Однопрограммн

ый

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

ый

Kпроц

= 2

30 /

530=

0,45

Кмд

=300

/ 53

0=0,

57

Kпроц

= 2

30 /

350=

0,66

Кмд

=300

/ 35

0=0,

86

Варианты

заданий

– Приложение

1.1

. Контрольные вопросы

1. В чём состоит мультипрограмм

ный режим

работы

ОС?

2. За

счёт чего

сокращается время выполнения

смеси

процессов в мультипрограмм

ном режим

е?

3. Каковы

требования

к

аппаратным

средствам

комп

ьютера

для

организации

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

ого режим

а?

4. Каковы

накладны

е расходы

организации

мультипрограмм

ного

режим

а?

18

Занятие

1.2.

Цик

лическое

квантование

времени

Цель занятия

: освоить

основы

организации

реж

има

разделения

времени

работы

операционны

х систем

, оценить

преиму

щества режим

а разделения

времени

Краткое изложение

теоретического

материала

Первы

е му

льтипрограмм

ные ОС

функционировали

в

пакетном режиме,

в котором

пользователь отделялся от

процесса

выполнения

его

заданий

. Предварительно подго-

товленны

е задания организовы

вались

в очереди

на перф

о-картах

либо

магнитном

диске.

Затем

смесь

заданий

подавалась

на вход

вычислительной

системы

:

ВС

Входная очередь заданий

Очередь

вып

олненных

заданий

Необходим

ость

взаим

одействия пользователя

с вы

-полняю

щим

ися программ

ами,

автом

атизация

процессов

подготовки

заданий

с пом

ощью

текстовых редакторов

, а

такж

е появление дисплеев

с электронно-лучевой трубкой

обусловили

появление

ВС

с диалоговым режимом

работы

. В

этом

режим

е несколько пользователей

одновременно

взаимо

действую

т с ВС

с пом

ощью

терми

налов:

Для

обеспечения

работы

нескольких пользователей

в диалоговом

реж

име особенно

важ

ным становится

время

реакции ОС

на команды

пользователя.

При

использовании

классического му

льтипрограмм

ирования

один из

процес-

сов мо

жет

захватить

процессор

на неопределённое

время

и,

таким

образом,

блокировать

работу

остальны

х пользо

-вателей.

Эфф

ективный диалоговый режим

возмо

жен

при

гарантированном времени реакции ОС

не превышаю

щем

несколько секунд

.

Page 9: процессов систем - Dmitry Zaitsevdaze.ho.ua/nos-trass.pdf · систем. Каждая тема ... кратким из-ложением теоретического

19

ВС

Т1

Т2 Тn

Для

обеспечения

диалоговой работы

был

предлож

ен

режим

разделения

времени,

обеспечивающий

совместную

работу

нескольких пользователей.

Основой

для

обеспечения

режима разделения

времени

является циклическое кванто-

вание времени центрального

процессора. Каждому

процессу

при получении процессора

выд

еляется определённый

интер

-вал времени

– квант

, в течение

которого он

вып

олняется

на

процессоре

; затем

процесс возвращается в конец

очереди

готовых процессов.

Таким

образом

, процессор циклически

переключается

между

готовым

и процессами

и каждый из

пользователей считает, что ОС работает

только с ним одним;

далее представлен фрагмент

диаграммы

состояний

процесса,

обеспечивающий

циклическое

квантование

:

Конец

кванта выполнение

готовность

20

Следует

отметить,

что

организация

квантования

вле

-чёт за

собой

некоторое

снижение

производительности ВС

. Переклю

чение между

процессами требует определённого

времени,

в течение

которого работают программ

ы О

С, и

представляет

собой

накладные расходы

ресурсов ОС

при

организации режим

а разделения

времени

. При

реализации

циклического

квантования

встаёт вопрос

о выборе

опти-

мального

размера

кванта.

Больш

ой размер кванта

снижает

время

реакции

ОС

, малы

й –

увеличивает

накладны

е расходы

из-за

частого

переклю

чения.

Реальны

е ОС

приме

-няют адаптивные механизмы

выбора

размера

кванта.

П2

П1

ОС

ОС

ОС

ОС

ЦП

Время

П3

П2

П1

Квантование

трёх процессов

Для

реализации квантования времени используется

аппаратный тайм

ер. Т

аймер устанавливается на

продолж

и-тельность

кванта

при

выделении

процессора

процессу

; прерывание тайм

ера по

истечении

времени

кванта иниции

-рует

переклю

чение.

Задание

Выполнить ручную

трассировку

работы средств управления

процессами

. Заполнить

трассировочную

таблицу.

Характеристики ОС

: циклическое

квантование

времени

, му

льтипрограмм

ирование

Порядок

выполнения

1.

Выполнить ручную

трассировку

выполнения

указанной

смеси процессов

2. Заполнить

трассировочны

е таблицы

3.

Выполнить анализ

эфф

ективности

реж

има разделения

времени:

Page 10: процессов систем - Dmitry Zaitsevdaze.ho.ua/nos-trass.pdf · систем. Каждая тема ... кратким из-ложением теоретического

21

а) при

мгновенном переключении процессов;

б)

при

времени

переклю

чения равном

1

4. С

форм

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

щества и недостатки

реж

има

разделения

времени

Пример выполнения

Размер

кванта

– 10

Характеристики вы

полняемы

х процессов

Ном

ер

Время

поступления

Последовательность действий

1 0

ЦП

(40)

-МД

(100

)-ЦП

(20)

2

10

ЦП

(20)

-МД

(100

)-ЦП

(80)

3

20

ЦП

(60)

-МД

(100

)-ЦП

(10)

Пример заполнения

трассировочной таблицы

Время

Очередь

гото

-вы

х процессов

Процессор

Очередь

к

МД

МД

0

П1(

40)

10

П1(

30)

П2(

20)

20

П2(

10),

П1(

30)

П3(

60)

30

П3(

50),П

2(10

) П

1(30

)

40

П

1(20

),П3(

50)

П2(

10)

50

П1(

20)

П3(

50)

П

2(10

0)

60

П3(

40)

П1(

20)

П

2(90

) 70

П

1(10

) П

3(40

)

П2(

80)

80

П3(

40)

П1(

10)

П

2(70

) 90

П3(

40)

П1(

100)

П

2(60

) 10

0 …

Варианты

заданий

– Приложение

1.2

. Контрольные вопросы

1.

В чём

состоит

реж

им разделения времени?

2.

Как

влияет режим

разделения времени на

производи

-тельность ВС

?

22

3. Каковы

требования к аппаратным средствам комп

ьютера

для организации квантования?

4.

Какие

критерии используют при вы

боре

оптим

ального

размера кванта

?

Занятие

1.3.

Приоритетны

е дисцип

лины

Цель занятия

: освоить

основы

организации

приоритетны

х дисциплин работы

операционны

х систем

, оценить

преиму

щества приоритетных дисциплин

Краткое изложение

теоретического

материала

Множество

процессов,

исполняемы

х в

среде

ОС,

можно

разделить

на системные и прикладные

. Си

стемны

е процессы

являются

частью

операционной

системы

и обеспечивают работу

ВС в целом.

Таким

образом

, во мн

огих

случаях требуется обеспечить

преим

ущественное выделение

им ресурсов,

в особенности

, центрального процессора

. Кр

оме

того

, прикладные

процессы

такж

е следует

различать на

основе предпочтительного выделения ресурсов

, особенно

при

использовании

ВС в технологическом управ-

лении.

Ввиду

жёстких

ограничений

на время реакции

и связанны

х с этим

особенностей построения

, операционные

системы

, предназначенны

е для технологического

управле

-ния,

выд

еляю

т в специальны

й класс,

именуемый

операцион

-ные системы

реального

времени

(ОСР

В).

Приоритетны

е дисциплины

планирования процессов

были

предлож

ены

как

для

оптим

изации

выполнения

смеси

заданий,

так

и для

обеспечения

оперативности

исполнения

системны

х процессов и процессов реального времени.

Уровень

приоритета во

многих случаях мо

жет

быть

представлен целы

м числом

. Различают два типа

приорите-

тов процессов:

относительные и абсолютные.

Относи-

тельны

е приоритеты

использую

тся только

при

постановке

Page 11: процессов систем - Dmitry Zaitsevdaze.ho.ua/nos-trass.pdf · систем. Каждая тема ... кратким из-ложением теоретического

23

процессов в очередь,

таким

образом

, появление

процесса с

более вы

соким относительны

м приоритетом не

преры

вает

исполнение

на процессоре

текущ

его процесса

. Абсолют-

ный приоритет сравнивается

с приоритетом

текущ

его вы

-полняемо

го процесса и,

в случае превышения

, прерывает

исполнение

текущ

его процесса

до заверш

ения

его

кванта:

Относительный приоритет

Абсолютный приоритет

Таким

образом ,

абсолютные приоритеты

использу-

ются для мгновенного переключения на

новый процесс,

и

прим

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

П2

П1

Ожидание

конца кванта

Готовность

п роцесса

Время

ЦП

Готовность

процесса

Дообслуживание

Время

Ожидание

П2

П1

ЦП

24

важны

х системны

х процессов,

например,

самой

подсис-

темы

управления процессами

. Различаю

статические и динамические

приоритеты

. Статические

приоритеты

назначаются вручную

адм

ини-

стратором

ОС

, либо

пользователем

в определённых

отведенных ему адми

нистратором ОС

границах и не

изме-

няются во

время

исполнения процессов.

Динамические

приоритеты

назначаются и изменяются ОС

во время вы

-полнения

процессов

в целях

оптими

зации

функциони-

рования ВС

. Например,

ОС

мож

ет повысить

приоритет

процесса

, часто

выполняю

щего

ввод

/вывод

и понизить

приоритет процесса

, продолжительно занимающего про-

цессор

, для

повышения

загрузки

устройств

ВС

. Статические

абсолю

тные

приоритеты

обеспечивают

минимальное время

реакции

ОС

РВ в

технологическом

управлении

. Сл

едует отметить

, что прим

енение

приоритет

-ны

х дисциплин не

всегда оптимально

с точки

зрения крите-

рия обеспечения максим

альной

загрузки устройств ВС

. Для

ОС РВ

на первое

место

выд

вигаются критерии

миним

ального

времени

реакции,

что

оправдано,

так

как

потери

из

-за

неоперативного

технологического

управления

могут

значительно превыш

ать потери

из-за

простоя

устройств

ВС.

Задание

Выполнить ручную

трассировку

работы

средств

управления

процессами

. Заполнить

трассировочную

таблицу.

Характеристики ОС

: приоритетная дисциплина

, му

льтипрограмм

ирование

Порядок

выполнения

1.

Выполнить ручную

трассировку

выполнения

указанной

смеси процессов

2. Заполнить трассировочные таблицы

3.

Выполнить анализ

эфф

ективности

приоритетной дис-

циплины

Page 12: процессов систем - Dmitry Zaitsevdaze.ho.ua/nos-trass.pdf · систем. Каждая тема ... кратким из-ложением теоретического

25

4. Сфо

рмулировать

преиму

щества

и недостатки

прио

-ритетной

дисциплины

планирования

Пример выполнения

Характеристики вы

полняемы

х процессов

Ном

ер

Время

поступления

Приоритет

Последовательность

действий

1

0 1

ЦП

(40)

-МД

(100

)-ЦП

(20)

2

10

2 ЦП

(20)

-МД

(100

)-ЦП

(80)

3

20

3 абс.

ЦП

(60)

-МД

(100

)-ЦП

(10)

Пример заполнения

трассировочной таблицы

Время

Очередь

готовы

х процессов

Процессор

Очередь

к МД

МД

0

П1(

40)

10

П2(

20)

П1(

30)

20

П1(

20),П

2(20

) П

3(60

)

80

П

1(20

) П

2(20

)

П3(

100)

10

0 …

Варианты

заданий

– Приложение

1.3

. Контрольные вопросы

1.

Для

чего используют приоритеты

в операционны

х системах

? 2.

Какие

специфи

ческие

требования предъявляю

т ОС

реального времени?

3.

В

чём

состоят

различия относительны

х и

абсолю

тных приоритетов?

4.

Для

чего прим

еняю

т динами

ческие

приоритеты

?

26

Раздел

2. У

правлени

е памятью

Оперативная

память

(ОП

) является

вторым

после ЦП

ресурсом

по своей значимости

для

исполнения процесса

. Мно

-жество способов

управления памятью

конкретны

х ОС можно

классифицировать

по следую

щим

основны

м признакам:

- полное либо

частичное

размещение

процесса в ОП

; - связное

либо несвязное вы

деление оперативной памяти

; - выделение участков

памяти фи

ксированной либо

переменной

длины

. Многие слож

ные методы

управления ОП

, обуслов-

ленные исторически вы

сокой стоимо

стью

и ограничениями

объёма

фи

зической

памяти

, наприм

ер,

оверлейные

структуры

, практически

не используются

в настоящее

время в связи с развитием концепции виртуальной памяти

. Стандартом

де-факто

для

современны

х ОС

является

виртуальная сегментно-страничная

память.

Занятие

2.1.

Дин

амич

ески

е разделы

Цель занятия

: освоить основы

организации

управления

памяти

динамическими

разделами

, оценить

эфф

ективность

управления

памяти динами

ческим

и разделами

Краткое изложение

теоретического

материала

Управление

оперативной

памятью

(ОП

) дина

-мическими разделами прим

енялось в ОС

ранних поколе

-ний;

однако и в настоящее

время

этот способ

управления

памятью

остаётся актуальным,

так

как

используется для

управлением

пулом

памяти

базы

данны

х ОС

, в котором

размещ

аются управляю

щие

блоки

ОС

: блок

управления

Page 13: процессов систем - Dmitry Zaitsevdaze.ho.ua/nos-trass.pdf · систем. Каждая тема ... кратким из-ложением теоретического

27

процессом,

блок управления

устройством

, блок управления

файлом

и другие.

В

ранних поколениях

ОС

оперативная

память рас-

сматривалась

как

одном

ерны

й массив

байтов

(слов)

. Для

вы

деления

процессу

ЦП

требовалось вы

полнение

двух

условий:

полное

размещ

ение

процесса

(исполнимо

го

файла)

в оперативной

памяти;

связное

выделение памяти

процесса

в виде одного

непреры

вного участка.

В

этом

случае

текущ

ее распределение

памяти пол-

ностью

описывается

массивом

границ

(начальный

и конечный адреса

либо начальны

й адрес и длина)

памяти

процессов.

Аналогичный описатель мо

жно

использовать и

для оставш

ихся

свободных участков

ОП

:

200

300

500

650

800 0

ОП

ОС

Процесс

1

Свободный

участок

Процесс

3

Свободный

участок

Память процессов

Процесс

Начало

Длина

П1

200

100

П3

500

150

Свободная

память

Начало

Длина

300

200

650

150

Первоначально

загруж

енны

е процессы

занимают

один

непреры

вный участок памяти

вслед

за кодом

ОС

. Однако ввиду случайного

времени

их заверш

ения

, сво-

28

бодные и занятые участки становятся

разбросанны

ми в

массиве байтов

ОП

:

200

300

500

650

800 0

ОП

ОС

Процесс

1

Процесс

2

Процесс

3

Процесс

4

0

После

заверш

ения

П

2 и П4

200

300

500

650

800

ОП

ОС

Процесс

1

Свободный

участок

Процесс

3

Свободный

участок

Такую

ситуацию

называют фрагментацией памяти.

При

вы

боре

требуемо

го участка

памяти

для

нового

процесса

ОС

мо

жет

прим

енять

критерии

первого

подходящ

его участка либо

наиболее подходящ

его участка.

Однако возмож

на ситуация,

при

которой

общ

ий объем

свободной памяти

удовлетворяет

требованиям

процесса,

но

составлен

сумм

ой

размеров

несмеж

ных

свободны

х участков

. В

этом

случае

бы

л предложен

специальны

й метод

реорганизации

ОП

, называемый

перемещением.

Запускается специальны

й мо

дуль

управления памяти

ОС

, которы

й сдвигает

(копирует)

все

процессы

в

ОП

для

устранения

фр

агментации

и

образования

одного

непрерывного участка свободной ОП

:

Page 14: процессов систем - Dmitry Zaitsevdaze.ho.ua/nos-trass.pdf · систем. Каждая тема ... кратким из-ложением теоретического

29

После

пере

мещ

ения

200

300

500

650

800 0

ОП

ОС

Процесс

1

Свободный

участок

Процесс

3

Свободный

участок

200

300

450

800 0

ОП

ОС

Процесс

1

Свободный

участок

Процесс

3

Следует отметить,

что

перемещ

ение

неизбежно

влечёт за

собой

накладны

е расходы

ОС

в виде

дополнительного

времени

копирования процессов в ОП

. Хотя архитектура

многих

процессоров

предлагает

специальны

е операции

бы

строго

копирования

блоков памяти

, эти

расходы

могут

быть

существенны

ми для

общ

ей производительности ВС

. Мультипрограммный

режим

делает актуальным

и аппа

-ратные

средства защиты

памяти

для

предотвращения

(ош

и -бочного либо

намеренного

) изменения кодов одного

процесса

некоторым другим

процессом

. Заметим

, что

средства защиты

памяти

крайне необходимы

и однопрограммным

ОС для защи-

ты раздела

памяти самой ОС от

вмешательства исполняемого

процесса

. В больш

инстве

ОС с управлением памятью

динами-

ческими разделами эта проблема

реш

ается путём

использо

-вания аппаратных регистров границ

текущ

его процесса

. При

обращении

к адресам

памяти вне границ

генерируется

аппарат

-ное

прерывание

по

защите

памяти

, которое

затем

обра

-батывается

ОС.

30

Задание

Выполнить ручную

трассировку

средств

управления опе-

ративной

памятью

. Заполнить трассировочную

таблицу

. Оценить

эфф

ективность

управления памятью

. Характеристики ОС

: динамические разделы

, му

льтипрограмм

ирование

, приоритетная дисциплина

. Порядок

выполнения

1.

Выполнить ручную

трассировку

работы

средств

управ

-ления ОП

2.

Заполнить

трассировочны

е таблицы

3.

Выполнить анализ

накладных расходов

на перемещение

процессов

4. Сфо

рмулировать

преиму

щества

и недостатки

управ-

ления памяти

динамическими

разделами

Пример выполнения

Размер

ОП

– 7

0 Характеристики вы

полняемы

х процессов

Ном

ер Время

поступления

Время

вы

полнения

Размер

в ОП

Приоритет

1 0

30

30

2 2

20

40

20

1 3

30

50

40

3 Пример заполнения

трассировочной таблицы

Время

Состояние

ОП

Примечание

0 Процесс

П

1 (акт

.) Своб.

Начало

0 30

Длина

30

40

20

Процесс

П

1 (акт

.) П

2 Своб.

Начало

0 30

50

Длина

30

20

20

Page 15: процессов систем - Dmitry Zaitsevdaze.ho.ua/nos-trass.pdf · систем. Каждая тема ... кратким из-ложением теоретического

31

Время

Состояние

ОП

Примечание

30

Процесс

Своб.

П

2 Своб.

Начало

0 30

50

Длина

30

20

20

Фрагментация

30

Процесс

П

2 Своб.

Начало

0 20

Длина

20

50

Перемещ

ение

30

Процесс

П

2 П

3 (акт

.) Своб.

Начало

0 20

60

Длина

20

40

10

80

Варианты

заданий

– Приложение

1.4

. Контрольные вопросы

1.

Каким

образом

описывается

распределение

памяти при

использовании динами

ческих

разделов?

2.

Почему возникает фр

агментация

памяти при

использовании динами

ческих

разделов?

3.

Каким

образом

ликвидируется

фрагментация памяти

? 4.

Какие

аппаратны

е средства

применяются для защиты

оперативной памяти

?

Занятие

2.2.

Свопи

нг процессов

Цель занятия

: освоить

основы

организации

свопинга

процессов,

оценить

эфф

ективность

применения свопинга

процессов

Краткое изложение

теоретического

материала

Методы

свопинга

(замещ

ения

) широко используются

в управлении

ОП

современных ОС

. Подвергаться свопингу

(вытесняться)

мо

гут

как

процессы

целиком,

так

и

32

отдельны

е участки памяти

процессов

. Современные ОС

прим

еняю

т свопинг страниц и сегментов процессов,

пре

-ды

дущие

поколения

ОС

замещ

али процессы

целиком

, либо

организовы

вали

специальный набор замещаемы

х участков

(оверлеи

) внутри процесса

. Изучим

наиболее

простую

разновидность

: свопинг

процессов

при

управлении

памятью

динами

ческим

и разделами.

Во время длительной

операции ввода-вы

вода

на

медленном

устройстве

процессор

может

вы

полнить

несколько

других

процессов,

но

оперативная

память

занята

. Аналогичная

ситуация возникает при появлении

нового

процесса с абсолю

тным приоритетом.

Хотя процесс

может

захватить

процессор

, ему

недостаточно

места

в

оперативной памяти

. Предлож

ено простое решение

: находится процесс с

наим

еньш

им приоритетом

среди

загруж

енны

х в

ОП

; участок памяти

процесса целиком копируется

на бы

строе

внеш

нее устройство

(магнитны

й диск

) и освобождается

; вы

сокоприоритетный

процесс

загруж

ается

в память

и

исполняется.

При

создании благоприятны

х условий

(соот-

ношение

приоритетов

) вытесненны

й процесс возвращается

в ОП

и продолж

ает вы

полнение

:

450

300

300

Возвращается

в ОП

МД

750

Процесс5

,приоритет 3

абс.,

длина 4

00

200

300

450

800 0

ОП ОС

Процесс

1 (проритет 2

)

Свободны

й участок

Процесс

3 (приоритет

1)

Вытесняется

на М

Д

200

800

ОП ОС

Процесс1

Свободны

й участок

Процесс5

Процесс3

200

450

800 0

ОП

ОС

Процесс1

Свободны

й участок

Процесс3

Свопинг

неизбеж

но связан с накладными

расходами

на

выполнение

операций вы

грузки

и загрузки процессов,

Page 16: процессов систем - Dmitry Zaitsevdaze.ho.ua/nos-trass.pdf · систем. Каждая тема ... кратким из-ложением теоретического

33

но в

ОС

РВ

такие

накладные расходы

оправданы

. Кроме

того

, в диалоговой или пакетной

ОС

свопинг

мож

ет повы

-шать общую

эффективность работы

ВС

. В особенности

, в

сочетании

с динами

ческим

и приоритетами

, когда

вытесняется

«плохой»

процесс

с уровнем

приоритета,

став-

шим

ниж

е некоторой границы

, а во

время

пребы

вания в

вытесненном

состоянии

приоритет процесса

постепенно

повы

шается ОС

. Отметим

, что для обеспечения свопинга

на время

выполнения

длительной операции

ввода

-вывода

(принтер,

магнитная лента)

требуется

организация

буф

еров

в памяти

ОС

для

промежуточного

хранения данных процесса

. Задание

Выполнить ручную

трассировку

работы

средств

свопинга

процессов.

Заполнить

трассировочную

таблицу

. Характеристики ОС

: свопинг

процессов

, динамические

разделы

, мультипрограмми

рование,

приоритетная

дисциплина

Порядок

выполнения

1.

Выполнить

ручную

трассировку

работы

средств

управления

ОП

и свопинга

2. Заполнить

трассировочны

е таблицы

: а)

без

учета

времени

загрузки

/выгрузки

; б)

указать

корректировки

при

учёте

времени

загрузки

/выгрузки

3.

Выполнить

анализ

накладны

х расходов

на

свопинг

процессов

4. Сфо

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

щества и недостатки

свопинга

процессов

34

Пример выполнения

Размер

ОП

– 7

0. Время

загрузки

/выгрузки

процесса

– 10

. Характеристики вы

полняемы

х процессов

Ном

ер

Время

поступления

Время

вы

полнения

Размер

в ОП

Приоритет

1 0

100

50

1 2

10

100

40

3 абс.

3

20

100

20

2 Пример заполнения

трассировочной таблицы

Вре

-мя

Состояние

ОП

Состоя-

ние ВП

Приме

- чание

0 Процесс

П

1 (акт

.) Своб.

Начало

0 30

Длина

50

40

10

Процесс

Своб.

Начало

0 Длина

70

П1

(90)

Выгруз

ка П

1

10

Процесс

П

2 (акт

.) Своб.

Начало

0 40

Длина

40

30

П1(

90)

20

Процесс

П

2 (акт

.) П

3

Своб.

Начало

0 40

60

Длина

40

20

10

П1(

90)

110

Процесс

Своб.

П

3

Своб.

Начало

0 40

60

Длина

40

20

10

П1(

90)

Завер-

шение

П

2 11

0 Процесс

П

3 (акт

.) П

1 Начало

0 20

Длина

20

50

Подка

-чка П

1

210

Варианты

заданий

– Приложение

1.5

. Контрольные вопросы

1.

В

чём

заключается

свопинг

процессов

? 2.

Для

чего прим

еняю

т свопинг процессов?

3.

В

каких

случаях

процесс

вытесняется во

внешню

ю

память

? 4.

Как

влияет свопинг на

производительность ВС

?

Page 17: процессов систем - Dmitry Zaitsevdaze.ho.ua/nos-trass.pdf · систем. Каждая тема ... кратким из-ложением теоретического

35

Занятие

2.3.

Страничная память

Цель занятия

: освоить

основы

организации

виртуальной

страничной

памяти,

оценить

эфф

ективность

страничного

управления

памятью

Краткое изложение

теоретического

материала

Страничная память

основана на

несвязном

выделении

ОП

процессу.

Оперативная

память комп

ьютера

разбивается

на

участки

фиксированной

длины

, им

енуемы

е стра

-ницами

. Адресное

пространство

процесса

такж

е разбивается на

страницы

той

же само

й длины

. Каж

дая из

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

мож

ет быть

размещена в произвольной

странице

оперативной

памяти:

Физические

страницы

ОП

Страницы

адресного

пространства

Процесса1

П1,С1

своб

П1,С3

своб

своб

П1,С2

П1,С0

ОС

ОС

П1,С4

С3

С2

С1

С0

С4

ФС

8

ФС

7

ФС

6

ФС

5

ФС

9

ФС

3

ФС

2

ФС

1

ФС

0

ФС

4

36

Кроме

того

, прим

еняется

концепция виртуальной

памяти.

Виртуальная

(моделируемая ОС

) память процесса

мо

жет

превы

шать размеры

физической ОП

и ограничена

лишь сумм

ой объёмов

ОП

и внешней

(дисковой)

памяти

комп

ьютера

:

своб

.

П1,С

1

своб

.

П1,С

2

своб

.

П1,С

7

П1,С

4

П1,С

6

П1,С

3

своб

Физические

страницы

ОП

Виртуальное

адресное

пространство

Процесса1

своб

.

П1,С

5

ОС

ОС

П1,С

4

ВС

3

ВС

2

ВС

1

ВС

0

ВС

4

ФС

3

ФС

2

ФС

1

ФС

0

ФС

4

ВС

7

ВС

6

ВС

5

Страницы

раздела

свопинга

МД

ДС

3

ДС

2

ДС

1

ДС

0

ДС

4

ДС

7

ДС

6

ДС

5

ДС

8

Для

обеспечения

виртуальной

памяти бы

ло реш

ено

отказаться

от принципа

полного

размещения

процесса в

ОП

. В

ОП

загружается лишь начальная страница

(нес-

колько

начальных страниц)

процесса;

остальные страницы

подкачиваю

тся по

мере обращения

к ним

в процессе сво-

пинга страниц.

Свопинг

обеспечивает замещение

страниц

процессов,

если свободная страница

ОП

отсутствует

. Возникает

проблема

отображения

адресов.

При

каждом обращении

к ОП

требуется

вычислить фи

зический

адрес памяти

по заданном

у виртуальному

адресу.

Указан-

ная проблема

реш

ается с помо

щью

набора специальны

х страничных таблиц,

обеспечиваю

щих

отображ

ение

:

Page 18: процессов систем - Dmitry Zaitsevdaze.ho.ua/nos-trass.pdf · систем. Каждая тема ... кратким из-ложением теоретического

37

Смещение

в страничной

таблице

Страничная таблица

Процесса1

2 1 0

Номер

ВС

3 6 5 4

МД

МД

ОП

Располо-

жение

МД

МД

ОП

МД

0 2 4

Номер

ФС

5 6 2 7

7 МД

8

Номер

ВС

Смещение

Номер

ВС

Смещение

120

02

120

05

Виртуальный адрес

Физический адрес

0212

0

0512

0

Множества

свободны

х страниц

оперативной

и внеш

ней памяти

описываются аналогичны

ми таблицами

:

Таблица страниц МД

2 1 0

Номер

страницы

3 6 5 4

зан.

своб

.

зан.

Занятость

своб

.

зан.

зан.

своб

.

1 - 1

Номер

процесса

- 1 1 -

7 зан.

1

1 - 4

Номер

ВС

- 6 3 - 4

8 зан.

1

7

38

Таблица страниц ОП

2 1 0

Номер

страницы

3 4

зан.

зан.

зан.

Занятость

своб

.

зан.

1 0 0

Номер

процесса

- 1

4 1 0

Номер

ВС

- 0

При

реализации

свопинга

встаёт

вопрос

вы

бора

страницы

процесса для вы

теснения

в случае,

если

все

физические

страницы

ОП

заняты

. Наиболее распростра

-нённым

является

алгоритм

LRU

вытеснения страницы

, которая дольше всего не

использовалась.

Непосредствен

-ная

реализация

алгоритма

требует

хранения

значения

тайм

ера

последнего

обращения

к

странице

, однако

практически

прим

еняю

тся более простые мо

дифи

кации,

использующие

лиш

ь несколько битов инфо

рмации

. Следует

отметить,

что

страничная память

мож

ет быть

реализована ОС

только в случае

специальной

архитектуры

ВС

и,

в

особенности,

ЦП

. Для

бы

строго

аппаратного

отображения

адресов

использую

тся страничные регистры

, обеспечивающие

параллельный

ассоциативный

поиск

требуемо

й страницы

и

последую

щее

вы

числение

фи

зического адреса

:

Page 19: процессов систем - Dmitry Zaitsevdaze.ho.ua/nos-trass.pdf · систем. Каждая тема ... кратким из-ложением теоретического

39

Параллельный

поиск

по

всем

строкам

Ассоциативны

е регистры

страниц ОП

2 1 0

Номер

ФС 3 4

зан.

зан.

зан.

Занятость

своб

.

зан.

1 0 0

Номер

процесса

- 1

5 1 0

Номер

ВС - 0

Процеесс

ВС

См

ещение

0 1 1 Бит

записи

- 0

1 1 1Бит

обраще

н.

своб

.

0

Виртуальны

й адрес

01:0

5:12

0

Свопинг

страниц

инициируется страничным преры

-ванием

, которое генерируется

процессором

в том

случае,

если

требуемая

страница отсутствует в ОП

. Для

экономн

ой

реализации

алгоритма

LR

U, как

правило

, применяют пару

бит

страничных

регистров,

которы

е мо

дифи

цируются

автоматически:

бит

обращ

ения

A и

бит

записи

W. Биты

A

W всех страниц периодически

сбрасываются;

затем

биты

некоторы

х страниц устанавливаю

тся процессором во

время

вы

полнении

процессов

. В

первую

очередь

вытесняется

страница

со значениями

битов

00,

если такие страницы

отсутствую

т, то

с

01, иначе

любая

из страниц

со

значениями

битов

11.

Операция вы

теснения

страницы

с

битами

00 не

требует

её записи

во внеш

нюю

память и

является

наиболее бы

строй.

При

реализации страничной

памяти важны

м является

также вопрос

выбора размера страницы

. Малая

длина

стра-

ницы

приводит к увеличению

частоты

свопинга, большая

– к

увеличению

процента хранимого в ОП

, но

неиспользуемого

кода

. Реальная длина страниц

колеблется от

4 до

16 Кбайт

. Современные

ОС

использует

более

слож

ную

сегментно-страничную

организацию

памяти

. Процесс

разбиваю

т на

несколько

логических частей

переменной

длины

, им

енуемы

х сегментами

. Каж

дый

из сегментов

разбивается

на

страницы

фи

ксированной

длины

.

40

Использую

тся

двухуровневы

е таблицы

сегментов

и их

страниц.

Задание

Выполнить ручную

трассировку

средств

управления

виртуальной памятью

. Заполнить

трассировочную

таблицу

. Оценить

эфф

ективность

управления памятью

. Характеристики ОС

: страничная память

, LR

U,

мультипрограмм

ирование

Порядок

выполнения

1.

Выполнить

ручную

трассировку

работы

страничной

виртуальной памяти

2.

Заполнить

трассировочны

е таблицы

3.

Выполнить анализ

эфф

ективности

свопинга страниц

4. Сфо

рмулировать

преиму

щества

и недостатки

страничного управления

памятью

Пример выполнения

Количество страниц ОП

– 3

Количество страниц ВнП

– 1

1 Характеристики вы

полняемы

х процессов

Ном

ерВремя

поступления

Количество

страниц

Последовательность

действий

1

0 2

0(30

)-1(

20)-

0(20

) 2

20

2 0(

20)-

1(20

)-0(

30)

3 30

3

0(20

)-1(

20)-

2(20

)-0(

20)

Пример заполнения

трассировочной таблицы

t

Страницы

ОП

Страницы

ВнП

Пр.

0

ФС

Процесс

ВС

0

П1

0(30

)а1

2

ФС

Процесс

ВС

0

1

Page 20: процессов систем - Dmitry Zaitsevdaze.ho.ua/nos-trass.pdf · систем. Каждая тема ... кратким из-ложением теоретического

41

20

ФС

Процесс

ВС

0

П1

0(20

) 1

П2

0(20

2

ФС

Процесс

ВС

0

1

30

ФС

Процесс

ВС

0

П1

0(20

) 1

П2

0(10

) 2

П3

0(20

ФС

Процесс

ВС

0

1

50

ФС

Процесс

ВС

0

1 П

2 0(

10)

2 П

3 0(

20)а

ФС

Процесс

ВС

0

П1

0(20

) 1

А

50

ФС

Процесс

ВС

0

П3

1(20

1 П

2 0(

10)

2 П

3 0

ФС

Процесс

ВС

0

П1

0(20

) 1

В

70

ФС

Процесс

ВС

0

П3

1 1

2 П

3 0

ФС

Процесс

ВС

0

П1

0(20

) 1

П2

0(10

) 2

С

70

ФС

Процесс

ВС

0

П3

1 1

П3

2(20

2 П

3 0

ФС

Процесс

ВС

0

П1

0(20

) 1

П2

0(10

) 2

D

90

Обозначения

примечаний:

А

- Запрос

П3 ВС

1, выгрузка

П1 ВС

0;

В - Загрузка

П3 ВС

1;

С Запрос П

3 ВС

2, выгрузка

П2 ВС

; D

- Загрузка

П3 ВС

2 Варианты

заданий

– Приложение

1.6

.

42

Контрольные вопросы

1.

В

чём

состоит

концепция

виртуальной

памяти?

2.

Что такое страница

ОП

? 3.

Где мо

гут размещ

аться страницы

процесса?

4.

Каким

образом

выполняется отображение

страниц

? 5.

Каким

образом

ОС

учитывает

свободные и занятые

страницы

? 6.

Для

чего используется

свопинг

страниц

? 7.

Каким

образом

ОС

выбирает

страницу для

вытеснения

? 8.

Каковы

требования к аппаратным средствам ВС

для

организации страничной

памяти?

9.

Что такое сегмент?

10

. Какие

алгоритмы

вытеснения

страниц

применяются

в ОС

? 11

. В чем

состоит

идея

LRU

алгоритма

?

12. К

аковы

требования к аппаратным средствам ВС

для

реализации

LR

U алгоритма

вытеснения

страниц

? 13

. Приведите

пример сегментной

таблицы

. 14

. Приведите

пример страничной

таблицы

.

Page 21: процессов систем - Dmitry Zaitsevdaze.ho.ua/nos-trass.pdf · систем. Каждая тема ... кратким из-ложением теоретического

43

Раздел

3. У

правлени

е устройствами

Фактическое

выполнение

операций ввода-вы

вода

для

внеш

них устройств реализуется специальны

ми моду-лями

ОС

, им

енуемы

ми драйверами

. Ввиду

существенны

х отличий внеш

них устройств кажды

й из

типов

внешних

устройств,

подключенных к ВС

, им

еет свой

собственный

драйвер в составе ОС

. Кроме

того,

значительно отличаются

драйверы

устройств

с блочны

м (М

Д) либо

байтовым

(клавиатура)

вводом-вы

водом.

В своей

работе драйверы

используют фи

зические

регистры

контроллеров внеш

них

устройств либо

канальные программ

ы (при подклю

чении

устройств посредством каналов)

, а также аппаратные пре-

рывания внеш

них устройств.

Драйверы

, как

правило

, име

-ют несколько точек входа и одна

из них

– по

аппаратному

прерыванию

. Подробное

изучение организации драйверов

выходит за

рамки

настоящ

его пособия.

В

базе данных ОС

каж

дое устройство

представлено

специальны

м блоком

управления,

в котором

хранится его

описание

. Кроме

того,

создаются блоки управления

кон

-троллером

(каналом

), которы

е содерж

ат указатели

на бло-

ки управления подклю

ченных к ним устройств и рабочие

данные текущей

операции.

В

настоящ

ем разделе

изучаются наиболее

распро-

странённые методы

, используемы

е большинством мо

дулей

управления

устройствами,

такие

как

буф

еризация

, кэш

иро-

вание,

планирование

операций

, а

такж

е особенности

организации взаимо

действия

ВС

в сети.

Занятие

3.1.

Цик

лическая

буф

еризация

Цель занятия

: освоить

основы

буф

еризации

ввода

-вывода

, оценить эффективность прим

енения

буф

еризации

44

Краткое изложение

теоретического

материала

Буферизация

является стандартны

м средством совре-

менных ОС

для

согласования скоростей работы

устройств

ВС

. Буфер

представляет

собой

участок

памяти

для

пром

ежуточного

хранения данных.

Различают буферы

по-

стоянной

и переменной длины

. Отдельные буферы

объеди-

няются

в связны

е списки

. Наиболее

распространённой

является

циклическая

буферизация

:

Голова

:чтение

Буфер

1 Буфер

2 Буфер

3 Буфер

K

Хвост

: запись

Согласование скоростей

обеспечивается,

например,

при вы

воде

на магнитны

й диск

, за

счёт того

, что после

быстрого

копирования

ОС

выводимы

х данных в буфер

процесс считает операцию

завершённой и продолжает своё

вы

полнение

. Таким образом,

фактический

вывод данных

на устройство

вы

полняется

параллельно

с работой

процесса

:

Счёт на

ЦП

МД

П1

ОС

Время

Запись

на диск

из б

уфера

Запись

в буфер

Счёт на

ЦП

Операция записи

на МД

Параллельная работа

П1 на

ЦП

и МД

Достаточно большой

размер буфера

позволяет

значительно

ускорить

вы

полнение

процесса

. В

том

случае

, если

записанные

в буфер

данные

считываются

до

их

фактической записи

на диск

, ОС

обеспечивает их

быстрое

Page 22: процессов систем - Dmitry Zaitsevdaze.ho.ua/nos-trass.pdf · систем. Каждая тема ... кратким из-ложением теоретического

45

извлечение

из буфера

. Следует

отметить,

что

интенсивный

ввод

-вывод

может

привести

к

заполнению

буферов

и неизбежному

ожиданию

их освобождения,

но в среднем

буферизация существенно

повышает эффективность ра

-боты

ВС

. Для

оценки эффективности мо

жно

использовать

сравнение времён

работы

процесса без буферизации и с

использованием

буф

еризации

. К

недостаткам буферизации

мож

но о

тнести

воз

-мо

жность потери

данны

х при крахах

ОС

; в современны

х надёжны

х ОС

при

использовании

бесперебойного питания

ВС

вероятность

такой

ситуации сведена к ми

ниму

му. Т

ем

не менее

, больш

инство

современных ОС

предусматрива

-ют

операцию

принудительной записи

содержим

ого буферов.

Для

согласования

скоростей

и ускорения

работы

внеш

них устройств ВС

использую

т такж

е кэширование

. В

этом случае

блоки

данны

х размещ

аются в пром

ежуточ

-ном

высокоскоростном

хранилищ

е (кэш

е) несвязно

; обеспечивается

быстры

й ассоциативны

й поиск по

клю

че-

вой инфо

рмации

, например,

ном

ерам

логических

(физичес

-ких)

блоков внеш

них устройств.

Задание

Выполнить ручную

трассировку

работы

средств

управле

-ния внеш

ними

устройствами.

Заполнить

трассировочную

таблицу.

Характеристики

ОС

: циклическая буферизация,

мульти-

программ

ирование

Порядок

выполнения

1.

Выполнить ручную

трассировку

работы

средств

буф

е-ризации

2. Заполнить

трассировочны

е таблицы

3.

Выполнить анализ

эфф

ективности

буф

еризации

4.

Сфо

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

щества и

недостатки

буф

ери-

зации

Пример выполнения

46

Размер

буф

ера

– 3 блока

Время

вывода

одного блока на

устройство

– 10

Последовательность записи

блоков процессом

(имя

блока

- задерж

ка)

A-5

-B-5

-C-5

-D-5

-E-3

0-F-

5-G

Пример заполнения

трассировочной таблицы

Состояние

буф

ера

Время

Состояние

процесса

0

1 2

Состояние

устройства

0

Запись

A

A

(голова)

(хвост

)

Вывод

A

(10)

5

Запись

B

A

(голова)

B

(хвост

) Вывод

A

(5)

10

Запись

C

(хвост

) B

(голова)

C

Вывод

B

(10)

15

Запись

D

D

B (гол

. и хв

.) C

Вывод

B

(5)

20

Запись

E

D

E C

(гол

. и хв

.) Вывод С

(1

0)

30

Счёт

D

(голова)

E

(хвост

) Вывод

D

(10)

40

Счёт

E (голова)

(хвост

) Вывод

E (1

0)

50

Варианты

заданий

– Приложение

1.7

. Контрольные вопросы

1.

Для

чего прим

еняю

т буферизацию

? 2.

В

чём

состоит

циклическая

буф

еризация

? 3.

За

счёт чего

обеспечивается согласование

скоростей

работы

устройств

при

буф

еризации

? 4.

В

чём

состоят

различия буферизации и

кэширования

? Занятие

3.2.

Плани

ровани

е дисковых операций

Page 23: процессов систем - Dmitry Zaitsevdaze.ho.ua/nos-trass.pdf · систем. Каждая тема ... кратким из-ложением теоретического

47

Цель занятия

: освоить

основы

планирования дисковых

операций

, оценить

эфф

ективность

применения

планирования

дисковы

х операций

Краткое изложение

теоретического

материала

Планирование является

наиболее слож

ной операцией

ОС

. Большинство

ОС

ограничиваю

тся реализацией лишь

операций

выделения,

освобож

дения и отслеж

ивания

своих

ресурсов

. Однако,

использование

операций планирования

мо

жет

существенно

повы

сить

производительность

ВС

. Изучим

средства

планирования ОС

на прим

ере плани-

рования дисковых операций

. Магнитный диск

представляет собой слож

ное эле-

ктронно-механическое

устройство.

На общей

оси

собраны

несколько дисков

с магнитными

поверхностями

; как пра-

вило

, внешние поверхности нижнего

и верхнего дисков

не

используются.

Поверхности

дисков разбиты

на дорожки

в

форм

е концентрических окружностей

. Доступ к данным

дорожек

обеспечивает блок

магнитных головок,

переме-

щаемы

й между

дорож

ками

шаговым двигателем

. Каж

дая

дорожка

разбита

на секторы

равной длины

; сектор является

ми

нимальной адресуемой

единицей магнитного

диска

и

содерж

ит блок данных.

Множество равноудалённых от

оси

дорожек

всех поверхностей

именуют цилиндром.

Таким

образом,

физический адрес сектора

(блока

данны

х) состоит

из

номера

цилиндра

, номера

поверхности

и номера

сектора:

48

Дорож

ка

Поверхность

Сектор

Блок

головок

Бы

строе вращ

ение

диска

(10

00 о

б/c)

обеспечивает

сравнительно

высокую

скорость чтения

-записи для всех

секторов

текущего

цилиндра

. Операция

перемещения

блока головок к другом

у цилиндру

требует

включения

шагового двигателя и занимает

сравнительно большее

(10-

20 раз

) время

. Запросы

чтения

-записи

магнитного

диска

разме-

щаю

тся ОС

в очередь

. При

отсутствии планирования

они

вы

полняю

тся в порядке поступления .

Заметим

, что такой

способ

реализации запросов

в больш

инстве

случаев

явля-

ется

неэфф

ективным,

так

как

приводит к частым переме

-щениям блока головок.

Переупорядочение очереди запро-

сов по

критерию

миним

изации

сум

марного пути

переме-

щения

головок

позволяет

минимизировать общее

время

выполнения

всех

запросов

. Учитывая

разницу

времён

чтения

-записи и перемещения

головок

, мо

жно

прийти к

выводу

, что

повы

шение

производительности

является

существенны

м:

Page 24: процессов систем - Dmitry Zaitsevdaze.ho.ua/nos-trass.pdf · систем. Каждая тема ... кратким из-ложением теоретического

49

Путь перемещения

головок

= 3

65 шагов

(95+

90+1

10+7

0)

Ном

ер дорож

ки

100

10

120

50

Ном

ер поверхн

.

Ном

ер сектора

Текущее

положение

головок

5-й цилиндр

Очередь

запросов

к МД

Путь перемещения

головок

= 11

5 шагов

(5+4

0+50

+20)

Ном

ер дорож

ки

1050

10

0 12

0 Ном

ер поверхн

.

Ном

ер сектора

После

переупорядочения

очереди

Заметим,

что

возмо

жно

также дополнительное

плани

-рование номеров секторов

текущ

его

цилиндра

, но

оно

редко используется

ввиду

сравнительно вы

сокой скорости

вращ

ения

диска

. Недостатком

описанного

простого

подхода

к планированию

является

возмож

ное увеличение

времени

ввода-вывода

отдельных процессов.

Такое

увеличение

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

Таким

образом,

при

использовании

приоритетных

дисциплин

требую

тся

прим

енение

более

слож

ных

критериев

пла-

нирования.

Задание

Выполнить ручную

трассировку

работы

планировщ

ика

очереди запросов

к магнитном

у диску.

Заполнить

трассировочную

таблицу

. Характеристики ОС

: планирование дисковых операций

, му

льтипрограмм

ирование

Порядок

выполнения

1.

Выполнить

ручную

трассировку

работы

средств

планирования

дисковы

х операций

50

2. Заполнить

трассировочны

е таблицы

3.

Выполнить

анализ

эффективности

планирования

дисковых операций

4.

Сфо

рмулировать

преиму

щества

и недостатки

планирования

дисковы

х операций

Пример выполнения

Время

перемещ

ения

головки

на

1 цилиндр

– 1.

Время

записи

– 1

0.

Последовательность операций

ввода

/вывода

Время

0

20

40

60

80

100

120

Цилиндр

100

150

120

110

200

10

160

Пример заполнения

трассировочной таблицы

Время

Очередь

к М

Д

Операция МД

0

Движение

к 1

00

(100

) 20

15

0 Движение

к 1

00

(80)

40

15

0, 1

20

Движение

к 1

00

(60)

60

15

0, 1

20, 1

10

Движение

к 1

00

(40)

80

20

0, 1

50, 1

20, 1

10

Движение

к 1

00

(20)

10

0 10

, 200

, 150

, 110

Запись

100

(10)

11

0 10

, 200

, 150

Движение

к 1

10

(10)

12

0 10

,200

, 160

, 150

Запись

110

(10)

13

0 …

Варианты

заданий

– Приложение

1.8

. Контрольные вопросы

Page 25: процессов систем - Dmitry Zaitsevdaze.ho.ua/nos-trass.pdf · систем. Каждая тема ... кратким из-ложением теоретического

51

1.

Для

чего необходимо

планирование операций

МД

? 2.

Из ч

его состоит фи

зический

адрес

данны

х на

МД

? 3.

Каким

образом

выполняется переупорядочение

очереди к МД

? 4.

Как

влияет планирование

операций МД

на

производительность

ВС

?

Занятие

3.3.

Взаим

одействие

компьютеров в сети

Цель занятия

: освоить

основы

организации

взаимо

действия

ком

пьютеров в сети

на основе

технологии

клиент

-сервер

Краткое изложение

теоретического

материала

В настоящее

время

доми

нирующим

семейством

сетевых

протоколов

является

TC

P/IP

; стек

протоколов

TC

P/IP

реализован

во

всех

современны

х ОС.

Передача

информации

в сети основана

на взаимодействии

при

-кладных

процессов

на основе

технологии клиент

-сервер.

Кл

иент

инициирует

взаим

одействие и обращается с запросом

на

обслуж

ивание

к

некоторому

серверу;

сервер

выполняет

запрос

и

передаёт

результаты

клиенту.

Кл

иентами

и серверами являются процессы

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

. Таким

образом,

возникает задача

адресации про-

цессов

в сети.

В сети

TCP/

IP адресом

процесса является

вы

деленный

ему сокет

(гнездо

). Сокет

состоит

из

IP-

адреса

комп

ьютера

и

номера

порта.

Порт

является

абстрактны

м объектом

и

служ

ит для

организации

взаимо

действия

. В

семействе

протоколов

TCP/

IP порты

с

номерами

0-1

024 зарезервированы

и служат

для

адресации

стандартны

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

, наприм

ер, порт

25

– сервер

электронной

почты

, протокол

SM

TP; порт

23

52

служ

ба удаленного управления

, протокол эмуляции

терми

-нала

tel

net;

порт

80

– сервер

передачи

гипертекстовой

(W

WW

) инфо

рмации

, протокол

HTT

P. При

запуске

сервер

занимает

соответствую

щий

порт

и

«слушает»

его.

Соответствующему клиенту вы

деляется

порт со

случайным

номером,

превы

шаю

щим

102

4:

Процесс

1

Процесс

2

Процесс

K

Порт1

Порт2

5

Порт1

025

Порт1

026

Ком

пьютер1

(IP1

)

Сеть

Ком

пьютер2

(IP2

)

Порт1

Порт2

3

Процесс

1

Процесс

2

Порт8

0

Порт3

367

Процесс

L

Адресную

часть пакетов

, передаваемых

в сети

, мо

жно

представить

как

пару:

сокет

отправителя

, сокет

получателя

. Таким

образом,

обеспечивается

полная

адресация сетевы

х процессов,

обеспечиваю

щая

доставку и

обработку инфо

рмации

.

IP-адрес

ком

пьютера

Номер

порта

Сокет

адрес процесса

в сети

Сокет

X

Сокет

Y

Адресная часть

пакета

Данны

е

Кроме

того,

сеть ограничивает

максимальную

длину

пакета

. Поэтому

передаваемая инфо

рмация

разбивается

на

множ

ество

пакетов,

а

после

получения

собирается

из

принятых пакетов.

Более

сложны

е аспекты

фрагментации

, связанны

е с возмож

ным

изменением

порядка доставки

пакетов не

рассматриваются в настоящей

работе.

Page 26: процессов систем - Dmitry Zaitsevdaze.ho.ua/nos-trass.pdf · систем. Каждая тема ... кратким из-ложением теоретического

53

Just

_sha

ke_y

our_

hips

Just

C

YC

X_s

ha

CY

CX

ke_y

C

Y

CX

ou

r_

CY

CX

hips

C

Y

CX

Just

_sha

ke_y

our_

hips

Cокет

X

Cокет

Y

Передаваемая инфо

рмация

(сегмент

)

Множество пакетов

(макс.

длина

пакета

4)

Принятая инфо

рмация

(сегмент

)

Заголовок паета

Заметим,

что

физически

ком

пьютер

долж

ен и

меть

хотя

бы

один сетевой интерф

ейс,

с которым ассоциирован

IP

-адрес

. Таким

интерфейсом

мож

ет быть

Eth

erne

t адаптер

при использовании локальной сети

, модем

, подключенный

к интерф

ейсу

USB

(RS2

32), при удалённом доступе.

Задание

Выполнить ручную

трассировку

процессов

взаим

одействия

комп

ьютеров в сети

. Заполнить

трассировочную

таблицу

. Характеристики ОС

: технология

«клиент-сервер

», мульти-

программ

ирование

Порядок

выполнения

1.

Выполнить ручную

трассировку

работы

сетевых средств

ОС

2.

Заполнить

трассировочны

е таблицы

3.

Оценить

дополнительны

й объем инфо

рмации

заголовков

пакетов

4. Сфо

рмулировать

основные

принципы

адресации

процессов в сети

Пример выполнения

54

Время

выполнения

запроса сервером

– 4

0 Сокет

сервера

(8,2

1)

Время

передачи пакета

в сети

– 40

Размер

пакета

– 5.

Время

форми

рования пакета

– 1

. Клиент

1: сокет

(5,6

); команда

«get

f1»

– прочесть

файл

f1

Клиент

2: сокет

(2,3

); команда

«get

f2»

– прочесть

файл

f2

F1: “

Extre

mes

mee

t”

F2: “

Prac

tice

mak

e pe

rfec

t”

Структура

трассировочной таблицы

Сеть

Время

Клиент

1 Клиент

2 Отправ.

Получ

. Данны

е Сервер

0 “g

et

f1”

(5

,6)

(8,2

1)

“get

f”

1

(5

,6)

(8,2

1)

“1”

20

“get

f2

” (2

,3)

(8,2

1)

“get

f”

21

(2,3

) (8

,21)

“2

40

Получение

“g

etf”

41

Получение

“g

et f1

” и

выполнение

запроса

60

Получение

“g

et f”

61

Получение

“g

et f2

” и

Выполнение

запроса

81

(8,2

1)

(5,6

) “E

xtre

” Начало

передачи

f1

82

(8,2

1)

(5,6

) “m

es

m”

83

Варианты

заданий

– Приложение

1.9

. Контрольные вопросы

Page 27: процессов систем - Dmitry Zaitsevdaze.ho.ua/nos-trass.pdf · систем. Каждая тема ... кратким из-ложением теоретического

55

1. Из ч

его состоит адрес процесса

в сети?

2.

Каким

образом

распределяю

тся порты

ком

пьютера

? 3.

Что такое сокет?

4.

В

чём

заключается

технология клиент

-сервер?

5.

Из ч

его состоит пакет инфо

рмации

, передаваемы

й в

сети

?

56

Раздел

4. У

правлени

е ин

формацией

Подсистема управления

устройствами

(также как и

подсистема

управления

ОП

) является

защищ

ённой

и скры

той

от конечного

пользователя

и

прикладных

процессов в современны

х ОС

. Пользователю

предостав

-ляются средства

управления инфо

рмацией ОС

с единицей

хранения

– файл.

Следует

отметить

такж

е тенденцию

представления

устройств

в виде

специальны

х файлов

(например,

в ОС

Uni

x) для

обеспечения

ограниченного

безопасного)

доступа

пользователей

. В

базе

данных

ОС

объекты

файловой

системы

представлены

блоками

управления

томо

м, каталогом,

файлом

, организованны

е в мн

огосвязные списки

. Заметим

, что ОС

обеспечивает

«горячую

» защиту инфо

рмации

на

фактически

подключенных

устройствах.

Безопасность в

случае

возможной несанкционированной передачи

устрой-

ства

(диска)

злоум

ышленникам

мож

ет быть

обеспечена

только

при

использовании

дополнительны

х возмож

ностей

шиф

рования храним

ой инф

ормации.

Занятие

4.1.

Файловая структура диска

Цель занятия

: освоить

основы организации управления

информацией,

вып

олнить

сравнительную

оценку различны

х способов

организации

файловой структуры диска

Краткое изложение

теоретического

материала

Древовидная

(иерархическая

) файловая система,

об-

разованная

таким

и элементами

как

том

, каталог

, файл,

является

стандартной

для

современных ОС

. Файл пред

-ставляет

собой

поименованную

единицу

хранения инфо

р-мации;

файлы

объединяю

тся в каталоги

, причём

каталог

мо

жет

содержать как файлы

, так и другие

каталоги;

том

представляет

собой

устройство

с

файловой

системой

. Единственная

разница

меж

ду семействами

дом

инирую

щих

Page 28: процессов систем - Dmitry Zaitsevdaze.ho.ua/nos-trass.pdf · систем. Каждая тема ... кратким из-ложением теоретического

57

в настоящее

время

ОС

Uni

x и

MS

Win

dow

s состоит в

представлении томо

в: U

nix использует

общ

ую иерархию

всех

том

ов, M

S W

indo

ws п

редставляет файловую

систему

с

разбивкой по

том

ам (устройствам

):

/

home

etc

dev

bin

libmn

tusr

va

r

ann

mary

ivan

binloc

al X1

1

Uni

x

D:C:

Wind

ows

Docu

ments

and

Settin

g ins

tall

music

vid

eo

ann

mary

ivan

Bach

Mozar

t Vi

valdi

Progra

mFil

es MS

Win

dow

s

Как

правило,

современны

е ОС

реализую

т такие

основные файловые операции

как

чтение-запись

и пози-

ционирование

внутри

файла,

обеспечивая

последова-

тельный и прямой

доступ

к инф

ормации.

Более

сложны

е методы

доступа

реализуются СУБД

на основе

указанных

операций

ОС

. Логическая структура диска мо

жет

быть

представ-

лена

одном

ерны

м массивом

секторов образованным зану

-мерованными

физическими

секторами

всех поверхностей

, цилиндров и дорожек

. Возникает

проблема отображения

файловой

системы

на логическую

структуру

диска

для

обеспечения доступа к файлам

:

58

Логическая структура

магнитного

диска

Пространство

файла

С0

С1

С2

С3

С4

С5

С6

С7

С8

С9

СN

В0

В1

В2

В3

В4

Логический

сектор

Блок

данны

х файла

Отображ

ение

памяти

МД

Для

обеспечения

отображения

создаю

тся

специальны

е структуры

данных,

описывающие

отображение

и н

евидим

ые для конечного пользователя

. Способ

организации

таких

данных

принято

называть

файловой структурой

. Файловая структура обеспечивает

решение

двух

основных

задач:

нахож

дение логических

секторов

заданного

файла/каталога

на

диске;

учёт

свободны

х/занятых секторов

. Большинство

файловых

структур

использует

специальны

й блок

– дескриптор

для

каж

дого

из своих

объектов

: том,

каталог

, файл

. Дескриптор файла/каталога

содерж

ит

имя,

владельца,

права

доступа,

даты

создания

/корректировки

, длину.

Дескриптор

тома

содерж

ит такж

е указатель

на дескриптор

корневого

каталога

. Дескрипторы

файла/каталога

им

еют

фиксированную

длину.

ОС

используют

два

основных

похода

к размещению

дескрипторов:

в ОС

семейства

Uni

x дескрипторы

файлов

/ каталогов

размещ

аются

в общем

одномерном

массиве

– индексе

, в этом

случае каталог

содерж

ит

список

указателей

на

дескрипторы

его

файлов

/каталогов

; в

ОС

семейства

MS

Win

dow

s дескрипторы

файлов

/каталогов

размещ

аются

внутри

содерж

ащего их

каталога:

Page 29: процессов систем - Dmitry Zaitsevdaze.ho.ua/nos-trass.pdf · систем. Каждая тема ... кратким из-ложением теоретического

59

Катал

ог1

Корне

вой ка

талог

Дескр

иптор

тома

Дескр

иптор1

Дескр

иптор2

Дескр

иптор3

Дескр

иптор4

Ссыл

ка на

файл1

Ссылка

на ка

талог1

Ссылка

на фа

йл/кат

.k

Дескр

иптор5

Ссыл

ка на

файл/к

ат.1

Ссыл

ка на

файл/к

ат.2

Дескр

ипторM

Ин

декс

Ссыл

ка на

дес

крипто

ркор

невого

кат

алог

U

nix

Катал

ог1

Корнево

й ката

лог

Дескриптор

тома

Дескриптор

файла1

Дескриптор

катал

ога1

Дескрипт

. файла

/кат.k

Дескрипт

. файла

/кат.1

Дескрипт

. файла

/кат.2

Ссыл

ка на

корнево

й катал

ог

M

S W

indo

ws

При

реш

ении

задачи отображения

для

уменьшения

размера

структур

данных

прим

еняю

т кластеризацию

. Кластер

состоит

из нескольких

блоков

(секторов)

и

является

единицей

вы

деления

пространства

диска.

В

настоящее

время

дом

инирую

т два подхода к описанию

размещ

ения

файла

на диске:

использование

общ

ей таблицы

размещ

ения

для

всех

кластеров

(в ОС

семейства

MS

Win

dow

s); использование

массива

описателей

связны

х участков

в дескрипторе

файла

(в ОС

семейства

Uni

x).

Общая

таблица

размещения

содержит

по одной записи

для каждого

кластера.

Запись

равняется

нулю

, если

соот-

ветствую

щий

кластер

свободен.

Если кластер принадлежит

некоторому

файлу,

то

соответствую

щая

запись

содерж

ит

номер

следую

щего

кластера

; запись

последнего

кластера

файла имеет специальное значение

– признак

конца

цепочки

(например,

все

двоичны

е единицы

). Использование

таблицы

связных участков,

описан-

ных указанием

начального

кластера участка и длины

в

дескрипторе файла,

обеспечивает более бы

строе отобра

-

60

жение

. Однако существенны

м недостатком

этого метода

является

фи

ксированное число

участков

в

дескрипторе

файла.

Размещение

больш

их ф

рагментированных файлов

решается в ОС

Uni

x за

счёт вы

деления дополнительных

дескрипторов

.

Таблица размещ

ения

файлов

(File

Allo

catio

n Ta

ble)

0 1

2 3

4 5

6 7

8 9

0 0

3 4

8 0

- 0

9 6

Таблица связны

х участков

(в дескрипторе

)

Нач

. 2

8 6

Дл.

3

2 1

Использование

единой

таблицы

размещ

ения

обеспечивает

также реш

ение

задачи

учёта свободных/занятых

кластеров

: записи

свободны

х кластеров

имею

т нулевое

значение

в

таблице.

К дополнительным

способам

учёта

свободного

/занятого

пространства можно

отнести

битовые

карты

и специальны

й (фиктивный

) файл

, занимающий

все

свободны

е кластеры

. В

битовой

карте

кажды

й бит

соответствует

кластеру

; значение

0

– кластер

свободен

, значение

1

– занят .

Применение

специального

файла

обеспечивает

преимущества

быстрого

поиска

наиболее

подходящ

его

участка

при

выделении

пространства

и

способствует

уменьшению

фрагментации.

Задание

Выполнить ручную

трассировку

работы

файловой

системы

. Заполнить

трассировочную

таблицу

. I.

Характеристики ОС

: несвязное

выделение дискового

пространства

, таблица

связных участков

в дескрипторе

файла,

специальный файл

учёта

свободного пространства

, му

льтипрограмм

ирование

Page 30: процессов систем - Dmitry Zaitsevdaze.ho.ua/nos-trass.pdf · систем. Каждая тема ... кратким из-ложением теоретического

61

II.

Характеристики ОС

: несвязное вы

деление дискового про-

странства,

отдельная

таблица

размещения

файлов,

учёт

свободного

пространства в таблице размещ

ения

, му

льти

-программ

ирование

Порядок

выполнения

1.

Вып

олнить

ручную

трассировку работы

сетевых средств ОС

2. Заполнить

трассировочны

е таблицы

3. Оценить

дополнительны

й объем информации

заголовков

пакетов

4. Сформулировать основные

принципы адресации процес

-сов в сети

Пример выполнения

Последовательность операций

: Создать

файл

1. Записать

3 блока в файл

1. С

оздать

файл

2.

Записать

2 блока

в файл

2. Дописать

1 блок

в файл

1.

Дописать

2 блока в файл

2. У

далить

файл

1.

Доступное

пространство диска

– 10

I. Пример заполнения

трассировочной таблицы

Дескрипторы

файлов

Операция

Файл

0 Файл

1 Файл

2

А, (

0,10

)

Создать

файл

1 А

, (0,

10)

F1

Записать

3 блока

в файл

1

A, (

3,7)

F1

, (0,

3)

Создать

файл

2 A

, (3,

7)

F1, (

0,3)

F2

Записать

2 блока

в файл

2

A, (

5,5)

F1

, (0,

3)

F2, (

3,2)

Дописать

1 блок

в файл

1

A, (

6,4)

F1

, (0,

3),(5

,1)

F2, (

3,2)

62

II.

Пример заполнения

трассировочной таблицы

Операция

Код

операции

Создать

файл

1 О

1 Записать

3 блока

в файл

1 О

2 Создать

файл

2 О

3 Записать

2 блока

в файл

2 О

4 Дописать

1 блок

в файл

1 О

5

Дескрипторы

файлов

Код

операции

Файл

0 Файл

1 Файл

2

А, (

0,10

)

О

1 А

, (0,

10)

F1

О

2 A

, (3,

7)

F1, (

0,3)

О3

A, (

3,7)

F1

, (0,

3)

F2

О4

A, (

5,5)

F1

, (0,

3)

F2, (

3,2)

О

5 A

, (6,

4)

F1, (

0,3)

,(5,1

) F2

, (3,

2)

Дескрипторы

файлов

Таблица размещ

е-ния файлов

Код

опера-

ции

0 1

2 0

12

34

56

7

0

00

00

00

1 F1

О

2 F1

, 0

1

2-

00

00

3 F1

, 0F2

12

-0

00

00

О4

F1, 0

F2, 3

1

2-

4-

00

5 F1

, 0F2

, 3

12

54

--

00

……

……

……

……

Варианты

заданий

– Приложение

1.1

0.

Page 31: процессов систем - Dmitry Zaitsevdaze.ho.ua/nos-trass.pdf · систем. Каждая тема ... кратким из-ложением теоретического

63

Контрольные вопросы

1. Каковы

основны

е элементы

файловой системы

? 2.

Для

чего необходима

специальная

файловая

структура диска?

3.

Какую

инф

ормацию

содержит

дескриптор файла

(том

а, каталога)

? 4.

Как

организую

тся дескрипторы

для

описания

древовидной файловой

системы

? 5.

Что такое кластер?

6.

Каким

образом

описывается

фактическое

размещ

ение

файла

на диске?

7.

Какие

средства используются для учёта

свободного

/занятого пространства

диска

? 8.

Каким

образом

обеспечивается защита файловой

системы

?

64

Приложения

Приложение

1. В

арианты

задани

й П

.1.1

. Мультип

рограм

мирование

Структура

процессов

: З1

: C1Ц

П-D

1МД

-С2Ц

П

З2: С

3ЦП

-L1М

Л-С

4ЦП

З3

: С5Ц

П-D

2МД

-С6Ц

П-D

3МД

-С7Ц

П

З4: С

3ЦП

-L2М

Л-С

4ЦП

-D2М

Д-С

1ЦП

C

i= ((

(n+i

) mod

5)+

1)*1

0 D

i=((

(n+i

) mod

4)+

1)*1

00

Li=(

((n+

i) m

od 3

)+1)

*100

0 n

– номер студента

в журнале

Вариант

№29

. Таблица данных

1.

С

D

L

1 10

30

0 10

00

2 20

40

0 20

00

3 30

10

0

4 40

5

50

6 10

7

20

Page 32: процессов систем - Dmitry Zaitsevdaze.ho.ua/nos-trass.pdf · систем. Каждая тема ... кратким из-ложением теоретического

65

Структура

задания:

З1

: 10Ц

П-3

00МД

-20Ц

П

З2: 3

0ЦП

-100

0МЛ

-40Ц

П

З3: 5

0ЦП

-400МД

-10Ц

П-1

00МД

-20Ц

П

З4: 3

0ЦП

-200

0МЛ

-40Ц

П-4

00МД

-10Ц

П

П.1

.2. Ц

иклическое

квантование

времени

Варианты

– Приложение

1.1

. Размер

кванта:

dt

= ((

n m

od 2

) + 1

) * 1

0 Время

переклю

чения:

to

s =

((n

mod

4) +

2)

П.1

.3. П

риоритетны

е дисцип

лины

Варианты

– Приложение

1.1

. Приоритеты

заданий Зi

: П

i = ((

n+i)

mod

3) +

1

Приоритет

3 –

абсолютный.

П

.1.4

. Дин

амич

ески

е разделы

Размер

ОП

: V =

((n

mod

4) +

7) *

10

66

Характеристики вы

полняемы

х процессов

Ном

ер

(i)

Время

поступления

(t i)

Время

вы

полнения

Размер

в ОП

Приоритет

1 0

(((n

+i) m

od

4)+2

) * 1

0 ((

(n+i

) m

od 3

) +

3) *

10

((n+

i) m

od

3) +

1

2 t i-

1+((

(n+i

) m

od 2

) +1)

* 10

3 …

4

П.1

.5. С

вопи

нг процессов

Варианты

– Приложение

1.4

. Приоритет

3 –

абсолютный.

Время

загрузки

/выгрузки

: tio

= ((

n m

od 2

) + 1

) * 1

0 П

.1.6

. Страничная память

Количество страниц ОП

: NO

= ((

n m

od 3

) + 3

Количество страниц ВнП

: NE

= ((

n m

od 4

) + 5

Характеристики вы

полняемы

х процессов

Ном

ер

(i)

Время

поступ-

ления

(t i)

Кол

-во

страниц

Последовательность

действий

1

0 2

0(C

1)-1

(C2)

-0(C

3)

2 t i-

1+((

(n+i

) mod

2)

+1)*

10

2 0(

C4)

-1(C

5)-0

(C6)

3 …

3

0(C

7)-1

(C1)

-2(C

2)-

0(C

3)

4 …

2

0(C

6)-1

(C4)

-0(C

2)

Ci из П

риложения

1.1

.

Page 33: процессов систем - Dmitry Zaitsevdaze.ho.ua/nos-trass.pdf · систем. Каждая тема ... кратким из-ложением теоретического

67

П.1

.7. Ц

иклическая

буф

еризация

Размер

буф

ера

(блоков)

: BS

= (n

mod

3) +

2

Время вывода

одного блока н

а устройство:

TIO

= ((

n m

od 2

) +

+ 1)

* 1

0 Последовательность записи

блоков процессом

(имя

блока

- задерж

ка)

A-t1

-B-t2

-C-t3

-D-t4

-E-t5

-F-t6

-G

ti =

((n

mod

4) +

1) *

5

П.1

.8. П

лани

ровани

е дисковых операций

Время

перемещ

ения

головки

на

1 цилиндр:

TC

= (n

mod

2)

+1

Время

записи

: TIO

= ((

n m

od 3

) + 1

) * 5

Последовательность операций

ввода

/вывода

Ном

ер

(i)

1 2

3 4

5 6

7 8

Время

(t i

) 0

t i+((

n+i)

mod

3)

+1)*

10

……

……

……

Цилин

др

((n+

i)*10

0+i*

10+(

n+i))

mod

200

……

……

П.1

.9. В

заим

одействие компьютеров в сети

Время

выполнения

запроса сервером

: TSe

r = ((

n m

od 3

) +

+2) *

10

Сокет

сервера

(n,2

1)

Время

передачи пакета

в сети:

TN

et =

((n

mod

4) +

1) *

10

Размер

пакета:

Psi

ze =

(n m

od 3

) + 4

Время

форми

рования пакета

: Pio

= (n

mod

2) +

2

Клиент

1: сокет

(n+1

,2*n

); команда

«get

f1»

– прочесть

файл

f1

68

Клиент

2: сокет

(n+2

,3*n

); команда

«get

f2»

– прочесть

файл

f2

F1: “

Not

hing

succ

eeds

like

succ

ess”

F2

: “Th

e ba

it hi

des t

he h

ook”

П

.1.1

0. Файловая структура диска

Последовательность операций

: Создать

файл

1. Записать

((n

mod

2) +

2) блока

в файл

1.

Создать

файл

2. Записать

((n

mod

2)+

1) блока

в файл

2.

Дописать

((n

mod

2)+

1) блока

в файл

1. Дописать

((n

mod

3)

+1) блока

в файл

2. Удалить

файл

1.

Доступное

пространство диска:

V =

(n m

od 3

) + 1

0 Приложение

2. О

писани

е алгоритм

ов работы

компонентов

ОС

Алгорит

мы

планирования процессов.

Задание:

Разработать алгоритм

модулей

управления процессами

в сетевой ОС

.

Внешние спецификации

.

1. Точки

входа

: - системн

ые вы

зовы

: StartProcess(FileName, Priority): PID

запустить процесс;

FinishProcess([PID])

– заверш

ить процесс;

StartIO

(IO_Parameters)

начать

ввод

/вывод;

- по прерыванию

: EndofIO(PID)

– заверш

ение

ввода

/вывода

;

Page 34: процессов систем - Dmitry Zaitsevdaze.ho.ua/nos-trass.pdf · систем. Каждая тема ... кратким из-ложением теоретического

69

EndofQuant()

– заверш

ение

кванта времени;

- внутренние вы

зовы

: Schedule()

– вызов диспетчера

процессов

. 2.

Используемы

е процедуры

: - основны

е процедуры

: StartDevice(IO_Parameters)

запустить

внеш

нее устройство

; SetQuant()

– установить квант;

SaveContext(aPCB)

сохранить

контекст

процессора

в блоке

управления процессом с

указанны

м адресом;

LoadContext(aPCB)

загрузить

контекст

процесса

на процессор;

- вспом

огательные процедуры

: InQueue(Head,

aPCB)

поставить

блок

управления

процессом

с указанным адресом

в очередь с указанны

м заголовком

; OutQueue(Head, [PID]): aPCB

извлечь

блок

управления

процессом

из указанной

очереди.

Считаем

, что

указанны

е процедуры

работают

с очередями,

упорядоченными

по приоритету

. Приоритет

– 0

…25

5 (1

байт)

. Приоритет

255

– абсолютный по

отнош

ению

ко всем

остальны

м.

Задача

состоит

в разработке алгоритмов

для

указанных

точек входа.

Используемые структуры

данных.

1. БУП

– блок управления

процессом

(РСВ

).

P

CB

P

revi

ous

Nex

t (1)

PID

(2)

Pr

iorit

y (3

)

70

1 –

для

организации

связны

х списков

(очередей)

;

2

– идентиф

икатор

процессов;

3 – приоритет;

4 – контекст

процессора;

5

– имя

файла

;

6

– дополнительны

е

параметры

;

Обозначения

: aPCB

– адрес

PC

B.

аPCB → Priority

– поле приоритетов.

2.

Заголовки

очередей.

Ready

– очередь

готовых к исполнению

процессов

:

РС

В

РС

В

РСВ

Ready

Blocked

– очередь

заблокированны

х процессов:

РСВ

Blocked

3.

Указатель

текущ

его процесса

.

РСВ

Current

Примечания:

-

указатель

Current

мо

жет

бы

ть пустым,

если

текущий

процесс

заблокирован

/завершён

;

Page 35: процессов систем - Dmitry Zaitsevdaze.ho.ua/nos-trass.pdf · систем. Каждая тема ... кратким из-ложением теоретического

71

- в системе

имеется

предопределённы

й процесс ленивец

IDLE

, priority = 0

. -

если

требуемо

е действие

не

указано

в списке

используемых процедур

и не мо

жет

быть

описано

явно на

алгоритмическом

языке

, для

его

записи

будем

использовать

форму

ком

ментариев:

; выделить

требуемый объём ОП

.

Алгоритмы

. 1.

StartProcess(FileName, Priority): PID

begin

SaveContext(Current);

; выделить память для БУП: → аРСВ

aPCB → priority := Priority;

aPCB → PID := next PID;

; выделить ОП для процесса

; загрузить файл FileName в ОП

aPCB → FileName:= FileName;

; установить начальное значение контекста

процессора в БУП

InQueue(aPCB);

Schedule();

end;

2.

FinishProcess(PID)

begin

SaveContext(Current);

if PID = 0 then

begin

aPCB := Current;

Current := 0;

end

else aPCB := OutQueue(Ready, PID);

; освободить ОП аРСВ

; освободить БУП аРСВ

Schedule();

end;

3.

Диспетчер

процессов

(Schedule

) – универсальны

й вы

ход из

ядра.

Его

функция

– выбор текущего

72

процесса

Current

и установка

контекста

процесса

Current

на процессоре

: - если

Current = 0

, выбрать новы

й процесс

из очереди

готовы

х;

- если Current ≠ 0

, продолжить вы

полнение

текущего

процесса

, если

нет

готовы

х процессов с абсолю

тным приоритетом.

Schedule()

begin

if Current = 0

then

begin

aPCB := OutQueue(Ready);

Current := aPCB;

SetQuant();

LoadContext(Current);

end;

else

begin

aPCB := Ready;

if aPCB → priority = 255

then

if Current → priority = 255

then LoadContext(Current);

else

begin

aPCB := OutQueue(Ready);

InQueue(Ready, Current);

Current := aPCB;

SetQuant();

LoadContext(Current);

end;

end;

end;

4. EndofQuant()

begin

InQueue(Ready, Current);

Current := OutQueue(Ready);

SetQuant();

LoadContext(Current);

Page 36: процессов систем - Dmitry Zaitsevdaze.ho.ua/nos-trass.pdf · систем. Каждая тема ... кратким из-ложением теоретического

73

end;

5. StartIO(IO_Parameters)

begin

InQueue(Blocked, Current);

Current := 0;

StartDevice(IO_Parameters);

Schedule();

End;

6.

EndofIO(PID)

begin

aPCB := OutQueue(Blocked, PID);

InQueue(Ready, aPCB);

Schedule();

end;

74

Спи

сок основной

реком

ендуемой

литературы

1.

Олифер В.Г.

, Олифер Н

.А. С

етевые

операционны

е системы

. –

Питер

, 200

1. –

544

с.

2. Дейтел Г.

Введение в операционные системы

: В

2-х

т. –

М.:

Мир

, 198

7. –

756

с.

3. Краковяк

С. Основы

организации

и фу

нкционирования

ЭВМ

. – М

.: Мир

, 198

8. –

480

с.

4. Мэдник С

., Д

онован

Дж

. О

перационны

е системы

. – М

.: Мир

, 197

8. –

640с.

Спи

сок дополнительной

литературы

1.

Иртегов

Д. Введение в операционные системы

. –

BH

V:

Санкт

-Петербург

, 200

2. –

624

с.

2. Столлингс

В. О

перационны

е системы

. – Вильямс

, 200

2.–

848

с.

3. Партыка

Т.Л

., Попов

И.И

. Операционны

е системы

, среды

и

оболочки

. – Форум

, 200

3. –

400

с.

4. Гордеев

А.В

. Молчанов

А.Ю

Системн

ое программ

ное

обеспечение.

СПб Питер

, 200

1.

5. Робачевский А

.М. О

С U

NIX

. BH

V: C

-Петербург

, 200

1.

6. Кулаков

Ю.А

., Омелянский С

.В. Ком

пьютерные сети

. К

.: Юниор

,199

9.

7. Шоу

А. Логическое проектирование

операционны

х систем

. – М

.: Мир

, 198

1. –

360

с.

8. Соловьев

Г.Н

. Операционны

е системы

ЦВМ

. –

М.:

Маш

иностроение,

197

7. –

136

с.

9. Татцан

Г. О

перационны

е системы

.- М

.: Мир

, 197

6.- 4

71с.

10

. Лихачева Г.Н

., М

едведев В

.Д. О

перационны

е системы

. – М

.: Статистика,

198

0. –

231с.

11

. Зелковиц

М.,

Шоу

А.,

Гэннон Дж

. Принципы

разработки

программ

ного

обеспечения

. – М

.: Мир

, 198

2. –

368

с.

12. К

оэн Л

.Дж

. Анализ и разработка

операционны

х систем

. –

М.: Наука

, 197

5. –

190

с.

13. К

ристиан К

. В

ведение в операционную

систему

UN

IX.

М.: Финансы

и статистика,

198

5. –

318

с.

Page 37: процессов систем - Dmitry Zaitsevdaze.ho.ua/nos-trass.pdf · систем. Каждая тема ... кратким из-ложением теоретического

75

14. Б

ирюков В

.В.,

Рыбаков А

.В.,

Шикура Ю

.П. Введение в

систему

программ

ирования

ОС

РВ

. –

М.:

Финансы

и

статистика

, 198

6. –

192

с.

15. К

ейслер

С

. Проектирование

операционных

систем

для

малы

х ЭВМ

. – М

.: Мир

, 198

6. –

680

с.

16. М

етодические

указания

к

курсовом

у проектированию

операционных

систем

(для

студентов

специальности

22.0

4) / Сост.

: А.В

.Григорьев

, Д

.А. Зайцев,

А

.И.Слепцов

. –

Донецк:

ДГТ

У, 1

994.

– 2

9 с.