Відмінності між версіями «Розподіл сторінок»

Матеріал з Вікі ЦДУ
Перейти до: навігація, пошук
(Створена сторінка: Щоб підвищити ефективність читання сторінок з основної пам'яті і запису сторінок в основ...)
 
 
(не показано одну проміжну версію цього учасника)
Рядок 3: Рядок 3:
 
При виділенні і звільненні сторінок в основній пам'яті доступні групи розподіляються і об'єднуються з використанням алгоритму двійників.
 
При виділенні і звільненні сторінок в основній пам'яті доступні групи розподіляються і об'єднуються з використанням алгоритму двійників.
  
 
+
'''Алгоритм двійників'''(система двійників)
== '''Алгоритм двійників'''(система двійників) ==
+
  
 
Пам'ять розподіляється блоками
 
Пам'ять розподіляється блоками
  
 
2^min<X<2^max=всій пам'яті
 
2^min<X<2^max=всій пам'яті
 +
 +
При запитанні розміром Y в межах 2^(max-1)<Y<2^max, виділяється весь блок. Інакше блок ділиться на два двійника розміру 2^(max-1). Якщо 2^(max-2)<Y<2^(max-1), то виділяється один із двійників, інакше процес продовжується поки не буде згенеровано найменший блок

Поточна версія на 13:21, 7 травня 2011

Щоб підвищити ефективність читання сторінок з основної пам'яті і запису сторінок в основну пам'ять,linux визначає механізм для роботи з суміжними блоками сторінок. Для цього в Linux використовується система двійників. Ядро підтримує список груп суміжних кадрів фіксованого розміру. Група може складатись з 1,2,4,8,16 або 32 кадрів сторінок.

При виділенні і звільненні сторінок в основній пам'яті доступні групи розподіляються і об'єднуються з використанням алгоритму двійників.

Алгоритм двійників(система двійників)

Пам'ять розподіляється блоками

2^min<X<2^max=всій пам'яті

При запитанні розміром Y в межах 2^(max-1)<Y<2^max, виділяється весь блок. Інакше блок ділиться на два двійника розміру 2^(max-1). Якщо 2^(max-2)<Y<2^(max-1), то виділяється один із двійників, інакше процес продовжується поки не буде згенеровано найменший блок