Vous êtes sur la page 1sur 193

прикладные программы

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

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

управление физическими устройствами

управление физическими устройствами

а п п а р а т у р а

ОПЕРАЦИОННАЯ

СИСТЕМА

Задача 1

Задача 1 Задача 2 Задача 3 −

Задача 2

Задача 1 Задача 2 Задача 3 −

Задача 3

Задача 1 Задача 2 Задача 3 −

работа ожидание (простой) работа
работа
ожидание (простой)
работа
работа ожидание (простой) работа

задача 1 блокировка готовность задача 1
задача 1
блокировка
готовность
задача 1
задача 1 блокировка готовность задача 1 задача 2 − − −

задача 2

задача 1 блокировка готовность задача 1 задача 2 − − −

процессы ограниченный режим Я Д Р О привилегированный режим − −

процессы

ограниченный режим
ограниченный
режим
Я Д Р О
Я Д Р О

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

режим

с т о и м о с т ь

РЕГИСТРЫ К Э Ш ОПЕРАТИВНАЯ ПАМЯТЬ Д И С К И Л Е Н Т Ы
РЕГИСТРЫ
К Э Ш
ОПЕРАТИВНАЯ ПАМЯТЬ
Д И С К И
Л Е Н Т Ы
о б ъ е м
скорость
с т о и м о с т ь РЕГИСТРЫ К Э Ш ОПЕРАТИВНАЯ ПАМЯТЬ Д

ОС
ОС

1

2

3

 

3

 
 
 

4

 

1

ОС
ОС

4

3

ОС
ОС

5

2 1
2
1
предел база
предел
база

а)

2 предел 1 база б)
2
предел
1
база
б)

вирт. адрес база физ. адрес
вирт. адрес
база
физ. адрес

в)

смещение селектор
смещение
селектор
смещение селектор Таблица сегментов начальный адрес размер атрибуты Физический адрес

Таблица сегментов

начальный адрес размер атрибуты
начальный адрес
размер
атрибуты
смещение селектор Таблица сегментов начальный адрес размер атрибуты Физический адрес
смещение селектор Таблица сегментов начальный адрес размер атрибуты Физический адрес
смещение селектор Таблица сегментов начальный адрес размер атрибуты Физический адрес

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

2 29 2 17 = 131072 2 12 = 4096 2 20 = 1048576

 

ц ы

н и

а

т р

с

 

с

а ц ы н и т р
а
ц ы
н и
т
р
с а ц ы н и т р
д р ы к а

д р ы

к а

д р ы к а
Физическая память
Физическая память

Виртуальная память задачи 1

Виртуальная память задачи 2

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

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

смещение

Виртуальный адрес Номер страницы смещение Таблица страниц Номер физ. кадра атрибуты номер физ. кадра смещение Физический
Виртуальный адрес Номер страницы смещение Таблица страниц Номер физ. кадра атрибуты номер физ. кадра смещение Физический

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

Номер физ. кадра

атрибуты

Виртуальный адрес Номер страницы смещение Таблица страниц Номер физ. кадра атрибуты номер физ. кадра смещение Физический
Виртуальный адрес Номер страницы смещение Таблица страниц Номер физ. кадра атрибуты номер физ. кадра смещение Физический
номер физ. кадра смещение
номер физ. кадра
смещение

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

2 9 2 14 2 12

2 20

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

смещение
смещение
табл. 2 табл. 1
табл. 2
табл. 1
Виртуальный адрес смещение табл. 2 табл. 1 Таблица второго уровня Номер физ. кадра атрибуты Таблица первого
Виртуальный адрес смещение табл. 2 табл. 1 Таблица второго уровня Номер физ. кадра атрибуты Таблица первого

Таблица второго уровня

Номер физ. кадра

атрибуты

Таблица первого уровня

Адрес табл. 2го ур.

атрибуты

Таблица первого уровня Адрес табл. 2го ур. атрибуты
Виртуальный адрес смещение табл. 2 табл. 1 Таблица второго уровня Номер физ. кадра атрибуты Таблица первого
Виртуальный адрес смещение табл. 2 табл. 1 Таблица второго уровня Номер физ. кадра атрибуты Таблица первого
Виртуальный адрес смещение табл. 2 табл. 1 Таблица второго уровня Номер физ. кадра атрибуты Таблица первого
смещение номер физ. кадра
смещение
номер физ. кадра

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

2 10 = 1024

−

 

 

 

 

 

 

 

 

 

 

 

 
 

 
 

L A T E X

процессор оперативная память ввод-вывод
процессор
оперативная память
ввод-вывод
процессор оперативная память ввод-вывод устройства − − −
процессор оперативная память ввод-вывод устройства − − −
устройства
устройства

пользователь prog > file прикладные программы система программирования управление логическими устройствами управление физическими устройствами printf("Hello, world");
пользователь
prog > file
прикладные программы
система программирования
управление логическими устройствами
управление физическими устройствами
printf("Hello, world");
write(1, "Hello, world", 12);
disk#1, part#2, sector#127563
ide#0, slave,
cyl.125, head 8, sec.20
а п п а р а т у р а

пользовательское ПО

аппаратно-независимые компоненты ОС

 

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

система

драйверы физических устройств

обработчики прерываний

обработчики прерываний

а

п

п

а

р

а

т

у

р

а

N h N c N s

48 33 47 34 32 17 18 31 35 46 30 16 9 19 8 1
48
33
47
34
32
17
18
31
35
46
30
16
9
19
8
1
45
15
10
36
29
7
20
2
6
3
44
28
21
14
11
5
4
37
27
13
22
12
43
26
38
23
25
24
42
39
41
40
37 48 38 36 25 47 26 35 24 13 23 14 46 1 39 11
37
48
38
36
25
47
26
35
24
13
23
14
46
1
39
11 12
27
34
22
2
15
10
3
9
21
4
16
33
8
28
5
7 6
40
45
20
17
19
18
32
29
44
31
30
41
43
42

A A B B A B A B C A B C

C B A A A A

A B A B B

 

4 + 2 4 + 1

1

1

1

 

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

l s \0 envir argv - l \0 - a \0 NULL / u s r
l s \0
envir
argv
- l \0
- a \0
NULL
/ u s r / l o c a l \0
ls -l -a /usr/local
PATH=/bin:/usr/bin\0 HOME=/home/john\0 TERM=xterm\0 NULL
PATH=/bin:/usr/bin\0
HOME=/home/john\0
TERM=xterm\0
NULL