русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

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


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

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


Дата добавления: 2013-12-23; просмотров: 1082; Нарушение авторских прав


Лекция №9

4 класса прерываний:

Биты, содержащиеся в регистре (адрес 3F2) 1, 2 содержат коды.

0 – изменения в регистре статуса модема

1 – регистр хранения прерывания датчика получен

1 0 – данные получены

0 1 – ошибка приема

Бит 0 установлен в 1, когда происходит событие.

Чтобы выбрать одно или несколько прерываний, нужно запрограммировать регистр прерывания (адрес 3F9).

Установка бита 0 в 1 говорит о том, что необходимое прерывание сгенерировано:

1 – ……….

2 – прерывание по ошибке

3 – прерывание при изменении регистра статуса модема

При чтении 3FA обнуляются.

Приоритеты:

1. ошибка

2. получение данных

3. пустой буфер передатчика

4. регистр изменения статуса модема

 

Устанавливаем вектор:

 

push ds ; помещение в стек

mov dx, offset IO_INT ; смещение

mov dx, seg IO_INT ; вектор

mov 01s, ax

mov al, 0b

mov ah, 25 ; 25 функция

int 21h

mov dx, 3F8h ; базовый адрес в dx

inc dx

mov ah, …..

out dx, al

pop ds

 

Затем обработка:

 

ID_INT proc far

NEXT_INT:

mov dx, 2F8h ;установили по приему

add dx, 2 ;и передаче

in al, dx

test al, 1Øb

inz TRANSMIT

RECEIVE:

ПРИЕМ

jmp another

TRANSMIT

…………..

ANOTHER:

mov dx, 3F8h

add dx, 2

in al, dx

test al, 1

jmp NEXT_INT

mov al, 20h

IRET:

Out 20h, al

 

 

Критерий:

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

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

2. эффективность – занимать все 100% времени.

3. сокращение полного времени выполнения – ………………………………………..

4. Сокращение времени ожидания – минимизация времени, которое процесс проводит в ожидании

5. сокращение времени отклика – минимизация времени, требующаяся процессу………………………….



Алгоритмы должны быть предсказуемы. Должны иметь минимальные накладнее расходы. Желательно обеспечить равномерное распределение ресурсов. Система должна иметь хорошую масштабированность.

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

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

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

…………………….:

1) Когда процесс переходит в завершение

2) Когда процесс переходит в ожидание

3) Когда процесс из состояния выполнения переходит в состояние готовности

4) Когда процесс переходит из состояния ожидания в состояние готовности

Алгоритм планирования по принципу FIFO:

Преимущества: легкость реализации.

Недостатки:

Пример:

Есть 3 процесса P0, P1, P2.

Требуемое время для Р1 – 14 единиц

для Р2 – 4 единицы

для Р3 – 1 единица

Если постоянно в таком порядке, то

Время ожидания Р0 – 0

Р1 – 13

Р2 – 17

(0+ 13+ 17)/3 = 10 единиц

Полное время для Р0 – 13

для Р1 – 17

для Р2 – 18

Среднее время 16 единиц.

Если порядок Р2, Р1, Р0, то среднее время 2 единицы, среднее время выполнения 6 единиц.

 

Алгоритм RR:

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

Ситуация:

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

2) Продолжительность больше кванта времени. Процесс прервется.

 

Время
Р0 и и и и г г г г г и и и и и и и и и
Р1 г г г г и и и и
Р2 г г г г г г г г и

 

где и – использование, г – готовность

Время ожидания Р0 – 5 единиц

Р1 – 4 единицы

Р2 – 8 единиц

Среднее время ожидания – 5,6 единиц

Полное время выполнения для Р0 – 18 единиц

Р1 – 8 единиц

Р2 – 9 единиц

Среднее время выполнения 11, 6 единиц

Если величина кванта времени взять в 1, то

Р0 – 5

Р1 – 5

Р2 –2

Среднее время – 4 единицы, среднее время исполнения – 10 единиц.

Если большой квант времени, процессы выполняются полностью.

Алгоритм SGF (кратная работа первого)

Пример невытесняющего алгоритма

Р0 Р1 Р2 Р3

5 3 7 1

Порядок: Р3, Р1, Р0, Р2.

Среднее время ожидания 3, 5 единиц. Если Р0, Р1, Р2, Р3 FIFO – 7 единиц. Выигрыш в два раза.

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

 



<== предыдущая лекция | следующая лекция ==>
Программирование последовательного порта | Лекция №10


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 5.28 сек.