Предложите решение теоретической задачи

Компьютер имеет 32 – разрядное адресное пространство. Организация памяти – страничная. Таблица страниц полностью поддерживается аппаратно и на запись в ней отводится одно 32 разрядное слово.

При запуске пользовательского процесса таблица страниц копируется из памяти в аппаратуру. Время работы процесса включает время загрузки таблицы страниц.

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

§ копирование 1 слова требует 10 нс.

§ размер страницы – 8 Кбайт.

§ время работы процесса в системе - 100 мс.

Оцените, как размер страницы влияет на производительность системы.

Решение задачи предлагается следующее:

При известном времени записи слова в аппаратуру для определения времени копирования страниц необходимо знать число слов в таблице.

Оно должно быть равно числу виртуальных страниц в виртуальном адресном пространстве.

Размер виртуального адресного пространства Ева определяется разрядностью адреса, которая равна 32. Следовательно:

Ева = 232 байт

 

При заданном размере страницы Естр = 8 кбайт число виртуальных страниц Nстр. равно:

Nстр = Ева / Естр = 232 / 213 = 219

 

Теперь можно найти время копирования таблицы страниц в аппаратуру – Ткоп_табл с учетом времени копирования одного слова – Ткоп_слова

Ткоп_табл = Ткоп_слова * Nстр = 10 * 219 = 5242880 (нс) = 5,24 (мск)

 

Так как время работы процесса Тпроцесса равно 100 мс, то доля времени процессора - , затрачиваемая на загрузку таблицы страниц будет равна

= (Ткоп_табл / Тпроцеса) * 100% = 5,24 / 100 * 100% = 5, 24%

 

Очевидно, что при уменьшении размера страницы, например в 2 раза, увеличивается количество создаваемых и используемых страниц:

Nстр = Ева / Естр = 232 / 213 = 219 * 2

Естественно, время копирования таблицы страниц в аппаратуру – Ткоп_табл с учетом времени копирования одного слова – Ткоп_слова также возрастет в 2 раза:

Ткоп_табл = Ткоп_слова * Nстр = 10 * 219 *2 = 5242880 * 2 (нс) =

5,24 * 2(мск) = 10,48

 

И увеличится доля времени процессора, затрачиваемая на загрузку таблицы страниц:

= 5, 24%*2 = 10,48%

 

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

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

Конечно же размер страницы повлияет на уровень мультизадачности.

Размер страницы – всегда компромиссная задача В системах семейства MS Windows размер страницы равен 4 К.

 


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: