Змінення Windows "Swappiness"


10

Чи є модифікований еквівалент "заміщення" в Windows 7?

У моїй системі є 8 ГБ оперативної пам’яті, що більш ніж достатньо для мого щоденного використання. Я хотів би змінити поведінку підкачки, що * NIX-системи називають простоту і встановлюють її на 0, як я це робив на своїй машині Ubuntu.

Я шукав це в Інтернеті, але всі відповіді, здається, є для систем * NIX.


З цікавості, чи краще встановити свопність на більш високе або нижче значення?
Джон

Це залежить від того, скільки ви маєте оперативної пам’яті і скільки ви використовуєте. У моєму випадку встановлення його на 0 зміниться лише на диск, щоб уникнути out of memoryпомилки. Дивіться цю відповідь на AskUbuntu для більше @ chipperyman573
rath,

1
здається, що у Windows немає аварійного захисту від помилок пам'яті. Дивіться посилання з моєї відповіді.
wullxz

Відповіді:


7

У Windows є щось, що називається "pagefile", де система обмінюється програмами, щоб отримати оперативну пам'ять безкоштовно. Наразі я не на машині Windows, але кроки, які Adobe розмістив тут, виглядають правильно (я думаю, що Win+ Pause- це ярлик до "Розширених системних налаштувань).

Хоча файл сторінки можна відключити, з цього приводу є деякі занепокоєння. Для отримання додаткової інформації читайте це


2
Як ви говорите у своєму коментарі, Windows, схоже, не має захисту від помилок поза пам'яттю. Це приводить мене до думки, що немає «примхливості» еквівалента. Але все-таки +1 за цікавий новий ярлик, про який я дізнався, і позначив його як прийнятий, оскільки посилання, яке ви опублікували, привело мене до цієї статті . Ура
рат

Там багато людей із вимкненим файлом сторінки. Система кидає туди кілька речей, які не буде використовувати якийсь час таким чином, що може вважатися непосильним. У системі, швидше за все, "не вичерпається пам'ять", за винятком ситуацій, коли користувач зазвичай знає, що відбувається, часто є маса кешу, яку можна звільнити спочатку (якщо припустити, що вона звільнилася належним чином). Причина не вимкнути її повністю Деякі програми матимуть придатну форму, якщо її немає. І помилки, до яких вони прикидаються, не завжди будуть змиритись.
Psycogeek

1
У мене ноутбук з 8 ГБ оперативної пам’яті і використовую його із свопом. Немає різниці між тим, що мати 8 Гб оперативної пам’яті без заміни та 4 ГБ оперативної пам’яті + 4 ГБ максимальної заміни. Завжди існує обмеження, і як тільки ви досягнете, ви побачите помилки.
Натан

@Natan: Я б зайняв 8 ГБ оперативної пам’яті понад 4 + 4 у будь-який день, що трапиться з вашою продуктивністю, коли під час оперативної оперативної пам’яті у вас закінчиться фізична?
Марк К Коуан

@MarkKCowan Я думаю, є різниця між наявністю 128 МБ і 8 ГБ оперативної пам’яті. Коли пам'ять заповнюється, ОС почне відновлювати пам'ять, а збирачі сміття будуть виконувати свою роботу. На робочому столі з 8 Гб, це практично гарантовано, що він буде відновлений, щоб продовжувати працювати, тому що більшість з них є кешем. Якщо у вас не вистачає пам'яті, заміна завжди буде гіршою, ніж повернення пам'яті, тому що диск набирає на повільність, ніж CPU + RAM.
Натан

0

Віртуальної пам’яті є більше, ніж просто «програми, що виділяють оперативну пам’ять, і коли фізична оперативна пам’ять закінчується, SWAP щось переходить на екран».

У Linux (і, можливо, UNIX взагалі), система намагається тримати сторінки, прочитані нещодавно в оперативній пам'яті: програми виконані, завантажені дані, дані, написані нещодавно (вже на диску) і т. Д. Так що, якщо та сама програма знову буде виконуватися, вона не буде Вам не доведеться перезавантажуватися з диска. Коли якась програма вимагає виділити більше пам’яті для її віртуального адресного простору, спочатку залишені дискові буфери переназначаються (без доступу до диску). Якщо цього недостатньо, деякі сторінки запущених додатків, до яких недавно не можна було отримати доступ, фактично заміняються. В Linux заміни зазвичай не бувають взагалі. Як тільки ваша система починає мінятись, ви помічаєте посилену активність приводу (і млявість), і ви переходите "ой, що ж ..", тому що це, ймовірно, означає, що якесь додаток просочується пам'яттю, або щось під кришкою почало нереститися поза контролем.

Традиційно у Windows є дурна додаткова звичка: вони через деякий час очікують на те, що вони заміняють цілі програми для користувальницького простору. Суворо, без помилування, просто щоб було доступно якомога більше оперативної пам’яті, «про всяк випадок» ви хотіли запустити ще одне голодне додаток. Якщо ви залишите ваш комп'ютер працює, і ви підете на кілька годин, після повернення ви помітите, що будь-яке додаток, до якого ви переходите, воно завантажиться плавно за допомогою swap. Така поведінка була особливо болісною в Windows 2000 і стає поступово менш помітною у сучасних версіях Windows. У W2k вимкнення swap не вимагало. Windows 7 все ще може блукати, як мед, іноді без особливих причин, Windows 8.1 і 10 помітно покращилися ... але все ще немає налаштованої ручки для "заміщення" чи інших налаштованих параметрів алгоритму заміни.

Існують і інші фактори, які можуть призвести до подрібнення системи по повільному доступу до диска. У Windows 7 ви ніколи не знаєте, чи система просто замінила ваш додаток за старим хорошим способом W2k, чи ви повинні звинувачувати антивірус у тому, що ваш додаток запускається так повільно, або якщо оновлення Windows робить щось у програмі фон цього часу (як відомо, що в його алгоритмах є зворотні звороти, що призводять до зависань зі 100% споживанням процесора та / або обстрілу диска), або, якщо конкретно, якесь завдання .служби .NET Framework загубилося в базі даних WinSXS чи що. Часом / у деяких версіях / втіленнях програмного забезпечення Майкрософт, насправді здається, що деякі вікна "у фонових завданнях" (зокрема, управління локальною базою даних Windows Update) свідомо "затушовуються" в диспетчері завдань, їх використання процесора та оперативної пам’яті не відображається в загальному споживанні пам'яті. "Законна" діяльність, але її досить важко відрізнити від зловмисного корінгового програмного забезпечення ... Лише після того, як треска припиняється, і миттєво з'являється повітряна куля, що говорить "нові оновлення", ви знаєте, в чому причина.

Принаймні, останні версії Windows можуть повідомити вам про дію вводу-виводу на кожен процес, а про окремі сервіси тепер повідомляється окремо (замість одного процесу SVCHOST.EXE).

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.