Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ос_ЛЕКЦИИ_для _методички_.doc
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
821.76 Кб
Скачать

Регистры процессора.

Расположены в процессорном ядре. Скорость обмена высокая, больше, чем с ОП.

Многопроцессорные и многоядерные системы.

1. SMP системы (symmetric multiprocessing system).

В этой системе все процессоры имеют равноправный доступ к памяти. При программировании не возникает специфических особенностей. Практический предел 2-4. Больше – дорого.

2. NUMA (Non-Uniform Memory Access).

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

3. Кластеры COWS (Cluster of Workstations).

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

Многоядерные системы.

Поместить 2-3 процессора в один корпус.

Три схемы реализации:

1. Независимые процессорные ядра.

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

2. Ядра расположены на разных кристаллах, но в одном корпусе (многочиповый процессор).

3. Комбинированный вариант. На одном кристалле, но разные ресурсы.

Оперативная память.

В общем случае ОП состоит из модулей памяти, регистра адреса, регистра данных.

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

Адресация оп.

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

Для обеспечения перемещаемости программ в ОП существуют способы адресации операндов.

Машинный язык и его мнемонический вид – Ассемблер.

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

Формат команды память/память:

КОП B1 L1 D1 B2 L2 D2

КОП – код операции.

< B1> – номер регистра, содержащего базовый адрес первого операнда.

L1 – длина первого операнда в байтах.

D1 – смещение адреса операнда относительно базового.

Исполняемый адрес первого операнда:

A1=<B1>+D1

A2=<B2>+D2

Если выполнить команду:

mov A1(L1), A2(L2),

то перед ней: R1=<B>.

Базовый адрес – адрес начала модуля в ОП, который установлен загрузчиком модуля в ОП.

ОП.

<X> – индексный регистр (для реализации циклов внутри программы).

В результате текст программы не меняется, так как при загрузке в модуль меняется только содержимое регистра, что обеспечивает независимость адресов операндов в исполнительном модуле от места его нахождения в ОП.

Возможна реализация индексных регистров.

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

КОП

A1

X1

D1

B2

X2

D2

<X> - можно загрузить индекс начала массива для обеспечения поиска.

В общем случае команды бывают следующих форматов:

- регистр-регистр RR;

- регистр-индексируемая память RX;

- регистр-адрес RS;

- память-опреанд SI.

Каждая команда в системе команд процессора имеет код завершения.

Результат выполнения команды недействительной вызывает прерывание, и ОС обрабатывает прерывание и выводит. Программа завершила выполнение некоторой команды.