- Адміністрування
- 29 Грудня 2014 року о 00:43
- 53
Згідно зі старим правилом ваш файл підкачки сторінок або розділ swap повинен бути “удвічі або в 1,5 раза більше від розміру оперативної пам’яті”.
Але у випадку, якщо у вас 16 Гб оперативної пам’яті, вам дійсно потрібен файл підкачки сторінок або розділ swap розміром у 32 Гб?
Вам, ймовірно, не буде потрібним файл підкачки або розділ swap такого розміру, і це добре, оскільки в сучасному комп’ютері може бути твердотільний накопичувач дуже невеликого розміру.
Призначення файлу підкачки сторінок або розділу swap
По-перше, давайте згадаємо про дійсне призначення файлу підкачки сторінок в Windows або розділу swap в Linux. В обох випадках вашому комп’ютеру надається додаткова робоча пам’ять. Наприклад, якщо у вашого комп’ютера є 2 Гб оперативної пам’яті і ви відкриваєте велику кількість програм або файлів, комп’ютеру, можливо, буде потрібно в робочій пам’яті зберігати 3 Гб даних. Комп’ютер запам’ятовує цей додатковий 1 Гб даних в файлі підкачки сторінок або розділі swap. Файл підкачки сторінок або розділ swap виступають в якості області “переповнення”, в якій знаходяться такі додаткові дані. Ваш комп’ютер автоматично передає ці дані назад у оперативну пам’ять, коли вони повинні використовуватися, і переміщує ці дані в файл підкачки сторінок або розділ swap у разі, коли ці дані не використовуються.
Якщо ви використовували старий настільний комп’ютер, ви могли спостерігати за тим, що трапляється через деякий час після того, як ви згортаєте (мінімізуєте) вікно програми, що працює на робочому столі. Коли ви його трохи згодом розгортаєте, потрібен якийсь час для того, щоб воно з’явилося, і ви чуєте, як працює ваш жорсткий диск, що підтверджується активним миготінням світлодіоду активності диску – дані переміщаються з вашого файлу підкачки або розділу swap в оперативну пам’ять. Оперативна пам’ять працює набагато швидше, ніж файл підкачки або розділ swap. В сучасних комп’ютерах, що мають оперативну пам’ять достатнього розміру для зберігання програм в оперативній пам’яті, така ситуація зустрічається набагато рідше.
У більшості додатків передбачається, що вони отримуватимуть стільки пам’яті, скільки запросять. Якщо ваша оперативна пам’ять зайнята і у вас немає файлу підкачки, а ви відкриваєте ще одну програму, ця програма, швидше за все, працювати не буде. Коли файл підкачки наявний, то з програмами, яким потрібна додаткова пам’ять, такого не станеться.
Інше використання файлу підкачки сторінок і розділу swap
В системах Windows і Linux файл підкачки сторінок і простір swap також використовуються для інших цілей:
-
Аварійний дамп Windows: В Windows файл підкачки сторінок використовується для збереження аварійних дампів. Щоб створити повний дамп пам’яті, файл підкачки повинен бути розміром не менше розміру фізичної пам’яті + 1 МБ. Для дампів пам’яті ядра, файл підкачки сторінок повинен мати розмір не менше 800 Мб на системах з оперативною пам’яттю розміром 8 Гб або більше. Більшості людей не потрібен повний дамп пам’яті, але дамп ядра може виявитися корисним. Необхідні 800 Мб файлу підкачки порівняно невеликі, але від вас буде потрібно його увімкнути і не вимикати. Ця інформація взята з поста Understanding Crash Dumps (Що таке аварійний дамп) на сайті Microsoft TechNet.
-
Режим сну в Linux (hibernate): У системах Linux режим hibernate – це стан, коли при відключенні системи вміст оперативної пам’яті вашої системи зберігається на диску для того, щоб його можна було знову завантажити при завантаженні системи. Вміст оперативної пам’яті системи зберігається в розділі swap. Це також може називатися як “припинення роботи зі збереженням стану на диску”. Можливо, ви вирішите, що для того, щоб використовувати режим, вам потрібен розділ swap такого ж розміру, як розмір оперативної пам’яті, але, насправді, вам просто потрібен розділ swap такого розміру, скільки оперативної пам’яті ви використовуєте. Так що якщо ви регулярно використовуєте тільки 4 Гб вашої оперативної пам’яті розміром 16 Гб, вам для режиму hibernate було б достатньо розділу swap розміром в 4 Гб. Але якщо ви використовуєте більше 4 Гб оперативної пам’яті, ви зможете скористатися режимом hibernate. Часто буде надійним вибрати розділ swap, рівний за розміром вашої оперативної пам’яті. Зверніть увагу, що це стосується тільки режиму hibernate – якщо ви не плануєте його використовувати, вам не потрібно про це турбуватися. В Windows в режимі hibernate дані зберігаються у файлі C: \ hiberfil.sys, тому в разі використання режиму hibernate в Windows файл підкачки сторінок не використовується.
Конкретне питання: Скільки оперативної пам’яті ви використовуєте?
Немає єдиного строгого і швидко застосовуваного правила, яке б показало вам, якого розміру вам потрібен файл підкачки сторінок або розділ swap. Відповідь залежить від того, що ви робите на вашому комп’ютері і скільки пам’яті ви використовуєте. Наприклад, якщо у вас є 8 Гб пам’яті, але ви ніколи не використовуєте більше, ніж 8 Гб, ви могли б взагалі обійтися без використання сторінок підкачки або розділу swap – але, швидше за все, вам, в кінцевому підсумку, буде потрібно файл або розділ розміром більше 8 Гб. З іншого боку, у вас, можливо, є комп’ютер з 64 Гб пам’яті і він може регулярно працювати з наборами даних розміром в 100 Гб. Тоді вам, ймовірно, захочеться мати про всяк випадок файл підкачки розміром принаймні в 64 Гб. Так для комп’ютера з 8 Гб оперативної пам’яті може не знадобитися файл підкачки, а комп’ютеру з 64 Гб оперативної пам’яті, можливо, буде потрібно величезний файл підкачки. Все залежить від того, що робить комп’ютер.
Більшість не зможе передбачити, якого розміру може знадобитися файл підкачки сторінок або розділ swap. Навіть якщо ви прямо зараз подивіться, скільки використовується пам’яті, ніхто не знає, скільки вашим програмам буде потрібно пам’яті через тиждень або через місяць.
Windows може управляти цим автоматично
В Windows файлом підкачки сторінок є файл C: \ pagefile.sys. За замовчуванням Windows автоматично керує розміром цього файлу. Спочатку він маленький але він може рости, якщо це вам потрібно. Ми рекомендуємо дозволити системі Windows самостійно управляти розміром файла підкачки сторінок. Файл не повинен займати багато місця на системному диску. Якщо ваш файл підкачки сторінок займає на системному диску дійсно багато місця, то це тому, що в минулому вам знадобився великий файл підкачки, і система для вас автоматично збільшила його розмір.
Наприклад, в Windows 8.1, що має 4 Гб оперативної пам’яті, наш файл підкачки сторінок має нині розмір тільки 1,8 ГБ. Нам не потрібно використовувати всю оперативну пам’ять і Windows використовує невеликий файл підкачки сторінок доти, доки нам не буде потрібно більше пам’яті.
Ви не отримаєте виграшу по продуктивності в разі, якщо відмовитеся від використання файлу підкачки сторінок, а лише, цілком ймовірно, зіткнетеся з проблемами, викликаними нестабільністю системи, зумовленої збоєм роботи програм у випадках, коли використовується вся оперативна пам’ять. Ви б могли відмовитися від використання файлу підкачки сторінок заради збереження місця на системному диску, але цього, як правило, робити не варто.
Якщо ви хочете самостійно встановити розмір файлу, що робити не рекомендується, обов’язково майте на увазі те, що дійсно має значення саме те, скільки пам’яті використовується, а не тільки розмір оперативної пам’яті. В документації Microsoft вказується, що:
“Критерій, за яким обирається розмір файлу підкачки сторінок, не змінився. Його розмір завжди обирався для підтримки використання аварійного дампу системи, якщо це було необхідно, або подолання обмежень системи у випадку, якщо це було потрібно. Наприклад, якщо встановлено великий обсяг фізичної пам’яті, то для того, щоб підтримати роботу системи в момент пікового навантаження, файл підкачки сторінок може не знадобитися. Для того, щоб це зробити може бути достатньо наявної фізичної пам’яті”.
В Linux необхідно приймати рішення
В Linux еквівалентом файлу підкачки сторінок Windows, є розділ swap. Оскільки це розділ, а не просто файл, ви повинні прийняти рішення про розмір розділу swap під час інсталяції Linux. Звичайно, можна пізніше змінювати розміри розділів, але в цьому випадку роботи буде більше. Linux не може замість вас автоматично керувати розміром розділу swap.
У кожному дистрибутиві Linux використовується свій власний інсталятор, і кожен дистрибутив слідує певній логіці, закладеній в його інсталяторі, згідно якої автоматично робиться вибір підходящого розміру для розділу swap. Для того, щоб прийняти рішення про розмір розділу swap, в дистрибутивах Linux звичайно використовується розмір оперативної пам’яті. Коли встановлюється система Ubuntu, типовий розмір розділу swap виявляється рівним розміру оперативної пам’яті плюс додатково половина гігабайту або щось біля цього. Це гарантує, що режим сну hibernate працюватиме належним чином.
Якщо ви в інсталяторі Linux вручну задаєте розміри розділів, то розмір оперативної пам’яті плюс 0,5 ГБ є хорошим правилом, яке дійсно дозволить вам використовувати в системі режим hibernate. Цього, як правило, має бути більш ніж достатньо для режиму підкачки. Якщо у вас є оперативна пам’ять великого об’єму, наприклад, 16 Гб або щось подібне, і вам не потрібно режим hibernate, але потрібно дисковий простір, ви могли б, ймовірно, обійтися невеликим розділом swap об’ємом в 2 Гб. Знову ж, це залежить від того, скільки пам’яті комп’ютера використовуватиметься. Але про всяк випадок добре мати простір підкачки деякого розміру.
Старе правило “подвійний розмір оперативної пам’яті” застосовується до комп’ютерів з 1 або 2 Гб оперативної пам’яті. Про те, якого розміру вам буде потрібно файл підкачки сторінок або розділ swap, єдиної для всіх відповіді немає. Все залежить від програм, якими ви користуєтеся, і від того, що цим програмам потрібно. Якщо у вас є сумніви в цьому питанні, то майже завжди буде хорошим рішенням дотримуватися правила, що використовується у вашій системі.