Файл: Каган Б.М. Цифровые вычислительные машины и системы учеб. пособие.pdf

ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 09.04.2024

Просмотров: 218

Скачиваний: 0

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

 

 

 

 

 

Т а б л и ц а

11-1

 

 

Заголовки целевых

программ

Действия планирую ­

Номера

Степень

щей программы

 

Заня­

К о л и ­

Н азн ач е­

 

 

целевых

важности

Память,

 

 

программ

 

тость

чество

ние

Очередь

 

 

тысячи

процессо-

магнитных

программ

1

1

слов

Ра. %

лент

к работе

 

2

4

40

2

___

2

2

8

60

2

+

 

 

 

3

4

2

10

2

 

 

4

4

16

50

4

 

 

 

5

3

4

20

4

+

 

3

6

1

6

30

6

+

 

1

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

Для установления очередности между выбранными для исполнения программами планирующая программа должна снова просмотреть заголовки целевых программ. Могут быть установлены различные критерии очередно­ сти. Например, программа, требующая наибольшее ко­ личество магнитных лент, назначается первой, так как при ее выполнении появляются интервалы ожидания обмена с лентой, во время которых процессор может быть выгодно использован для решения других про­ грамм. Следующей назначается программа с наиболь­ шими требованиями к объему оперативной памяти. Ес­ ли все условия равны, то выбирается программа с наи­ меньшим номером. В нашем примере из двух программ с одинаковой степенью важности предпочтение будет отдано программе № 6.

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

589



Для различных вычислительных систем разработаны разнообразные правила планирования. Известны систе­ мы, в которых целевые программы, достигшие этапа ввода или вывода, получают в следующем периоде вдвое большее количество времени, однако время ожи­ дания активного цикла также удваивается. Может быть введено несколько различных уровней обслуживания, отличающихся скоростями и ценами: несрочное обслу­ живание— самое большое время ожидания и самая низ­ кая такса, второй уровень — обслуживание в присутст­ вии заказчика, высший уровень — самая дорогостоящая система обслуживания, при которой время пользовате­ лю выделяется немедленно по требованию его програм­ мы независимо от общей эффективности вычислительной системы.

11-4. С Т Р А Н И Ч Н А Я О Р Г А Н И З А Ц И Я П А М Я ТИ

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

Щ

д

д

д

а)

)

6

Рис. 11-6. Пример распределе­ ния памяти при использовании базовых регистров.

а — распределение памяти до ввода новой программы; б— вводимая программа; в — варианты распре­ деления после ввода программы Д .

При использовании этого метода программа (или по крайней мере та часть ее, адреса которой преобразуют­ ся с помощью одного и того же базового числа) должна располагаться в последовательных ячейках оперативной памяти. Поэтому при вводе целевой программы в опе­ ративную память ее приходится вводить целиком, хотя во время ближайшего цикла активности может факти­ чески потребоваться только небольшая часть програм­ мы. Кроме того, для освобождения места под вводимую программу может понадобиться сдвиг содержимого па­ мяти, не участвующего в обмене. На рис. 11-6, а показа­ но распределение оперативной памяти между четырьмя программами А, Б, В и Г, из которых две программы А и Г являются в данный период наименее активными и,

590


следовательно, могут рассматриваться как кандидаты на удаление во внешнюю память. Если вновь вводимая программа Д больше, чем любая из программ Л и Г, то для ее размещения в памяти необходимо, как показано на рис. 11-6,в, сдвигать программы Б и В. Это переме­ щение вызывает потери времени, обусловленные только данным методом распределения памяти.

В современных больших вычислительных системах широкое распространение получил другой метод дина­ мического распределения памяти, называемый странич­ ной организацией памяти. При использовании этого ме­ тода адрес, образуемый программой при обращении к памяти, рассматривается как состоящий из двух час­ тей: старшие а разрядов адреса определяют номер стра­ ницы, остальные ß разрядов определяют номер слова в данной странице. Таким образом, память, с которой

работает данная программа, разделяется на 2а страниц,

равных по размеру и состоящих каждая из 2Р слов. Как уже упоминалось ранее, адреса, формируемые програм­ мой, являются в мультипрограммной системе виртуаль­ ными, так как они не указывают действительного распо­ ложения информации в физической памяти; соответствен­ но этому страницы, указываемые программой, будем да­ лее именовать виртуальными страницами. Совокупность виртуальных страниц образует виртуальную память

данной программы, имеющую общий объем 2 •2 слов. Физическая память также разделяется на равные ча­

сти по 213 слов, называемые физическими страницами. Каждая физическая страница способна хранить одну из виртуальных страниц. Хотя физические страницы рас­ положены друг за другом в определенном порядке, с точки зрения программы они все независимы, и когда программа загружается в память, ее следующие друг за другом виртуальные страницы необязательно долж­ ны попадать в следующие друг за другом физические страницы. Очевидно, что в систему должны быть введе­ ны правила перевода виртуальных страниц в физичес­ кие. Обычно эти правила задаются в виде страничной таблицы, указывающей, какая физическая страница со­ ответствует каждой виртуальной странице. Страничная таблица формируется супервизором в процессе распре­ деления памяти и перерабатывается им каждый раз, ког­ да в распределении памяти производятся изменения.

591


На рис. 11-7 показано соответствие между вир­ туальной и физической памятью, устанавливаемое страничной таблицей, причем видно, что виртуальные страницы могут содержаться в текущий момент време-

бартралбная бтряниѵная

памятб таблица.

 

/

â

г

3

/

4

Д

5

3

S

4

7

6

3

S

7

К?

 

7/

Момер

 

бцртуалбной.

7/омер

страницы

слаба.

<х разряд/)# /3 разрядод

6)

Рис. 11-7. Страничная организация памяти.

а — соответствие между виртуальными ы физическими страницами; б — процесс перевода виртуальной страницы в физическую.

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