доступа Это абзац из Operating System Concepts, 9th edition по Silberschatz и др:рассчитать эффективное время
Процент времени, что номер страницы интереса находится в TLB называется коэффициент попадания. 80-процентное соотношение хитов, например, означает, что мы находим желаемый номер страницы в TLB 80 процентов от времени. Если для доступа к памяти требуется 100 наносекунд, то доступ к карте памяти занимает 100 нс, когда номер страницы находится в TLB. Если нам не удастся найти номер страницы в TLB, мы должны получить первую доступную память для таблицы страниц и номера кадра (100 наносекунд), а затем получить доступ к требуемому байту в памяти (100 наносекунд), в общей сложности 200 наносекунд , (Мы предполагаем, что поиск страницы в занимает только один доступ к памяти, но, как мы увидим, это может занять больше .) Чтобы найти эффективное время доступа к памяти, вес по весу весит: по его вероятности: эффективный доступ время = 0,80 × 100 + 0,20 × 200 = 120 наносекунд
но в 8-е издание той же книги
Я запутался с
эффективное время доступа
Может кто-нибудь объяснить это мне?
«Эффективное время доступа» - это, по сути, среднее (взвешенное) среднее время, необходимое для получения значения из памяти. Если вы сделаете 100 запросов на чтение значений из памяти, 80 из этих запросов будут принимать 100 нс, а 20 из них будут принимать 200 (с использованием скоростей 9-го издания), поэтому общее время составит 12 000 нс, в среднем на 120 нс за доступ. Без доступа к одной памяти не потребуется 120 нс; каждый будет принимать 100 или 200 нс. (В среднем семья имеет 2,3 ребенка, но в любой реальной семье есть 0, 1, 2 или 3 ребенка - или целое число детей, вы не видите много «трех десятых ребенка», блуждающих по всему миру). –
Проблема в том, что автор попытался упростить вещи в 9-м издании и допустил ошибку. Он попытался объединить 20ns время доступа для TLB с 80ns время для памяти, чтобы сделать хорошее 100ns время. Если это так, промах займет 20ns + 80ns + 80ns = 180ns, а не 200ns. Это опечатка в 9-м издании. – kainaw