Скільки пам'яті має використовувати Windows 6.2 і скільки має бути доступним для користувачів?


-4

З вимкнутим pagefile і 4 Гб пам'яті, Windows 6.2 (8 і Server 2012 з робочим столом) запускається з використанням трохи менше 1 Гб. При завантаженні додатків використання пам'яті досягає 3 Гб, після чого Windows починає боротися; Використовуючи більше пам'яті, елементи Windows на екрані зникають і зникають. Десь між 3 Гб і 3,5 ГБ використання, explorer.exe буде збій, або Windows кине користувача на екран входу в систему, або робочий стіл рендерингу буде в цілому аварії (але правий бік принади бар все ще працює ... очевидно, пріоритети MS є не в порядку).

  1. Чому користувач не може використовувати всі 3 ГБ пам'яті, що залишилася, для програм без збою Windows?

  2. Немає нових корисних функцій у Windows 6.2 порівняно з 6.1, які можна було б очікувати від додаткової пам'яті під час запуску, так чому ж використання вільної пам'яті зменшилося з 0.5GB до 1GB? Навіть встановлення Windows 6.2 у HV вимагає 1024 МБ мінімальної пам'яті запуску, порівняно з 512 МБ для 6.1.


6 і 6.2? Які версії?
Journeyman Geek

@vandidant - Чому ви просто не використовуєте їхні власні імена?
Ramhound

Відповіді:


2

Чому користувач не може використовувати всі 3 ГБ залишкової пам'яті для програм без збоїв Windows?

Без файлу сторінок, Windows має зарезервувати достатньо пам'яті, щоб зберегти кожне виділення, яке він коли-небудь зробив. Тому, навіть якщо є багато вільної пам'яті, використання цієї пам'яті може бути обмежено. Ось чому вам потрібен файл сторінки.

Це питання в основному те ж саме, що "чому я не можу написати чек, навіть якщо на моєму рахунку є багато грошей". Це тому, що вам потрібно зберегти достатньо грошей у своєму обліковому записі, щоб покрити всі чеки, які ви коли-небудь написали, які все ще існують, навіть якщо деякі з них дуже дуже навряд чи коли-небудь отримаєш готівку.

Сучасні операційні системи не можуть ефективно використовувати пам'ять без підтримки магазину. У випадку Windows, це файл сторінки.

Немає нових корисних функцій у Windows 6.2 порівняно з 6.1, які можна було б очікувати від додаткової пам'яті під час запуску, так чому ж використання вільної пам'яті зменшилося з 0.5GB до 1GB? Навіть встановлення Windows 6.2 у HV вимагає 1024 МБ мінімальної пам'яті запуску, порівняно з 512 МБ для 6.1.

Це не так вимагати що пам'ять. Він просто використовує його, тому що ви не можете зберегти пам'ять на пізніше. Немає жодних недоліків у використанні пам'яті, яка є у вас, тому сучасні операційні системи (включаючи Windows) не роблять ніяких зусиль, щоб зробити RAM вільною, коли вони не перебувають під тиском пам'яті.

Наприклад, скажіть, що програма запускається, а потім закінчується. Ви цього не робите необхідності щоб зберегти цю програму в оперативній пам'яті, але якщо у вас є оперативна пам'ять, чому б і ні? Це дозволить скоротити диск I / O, якщо програма знову запущена. І ви завжди можете перемкнути оперативну пам'ять в іншу мету, якщо вам потрібна оперативна пам'ять для чогось іншого. Які можливі переваги ви отримуєте від того, що зараз ОЗУ буде вільно, коли у вас є багато вільної пам'яті?


Для вашого першого пункту: Це так само, як коли ви пишете чек. Навіть якщо це дуже малоймовірно, що чек буде отриманий в готівку, ви повинні припустити, що це буде. Якщо файл сторінки не відображається, він має обмежити те, для чого він використовує оперативну пам'ять. Для вашого другого пункту: якщо Windows вичерпала доступну пам'ять, вона, безумовно, не повинна звільнити пам'ять, вона повинна використовувати її для того, що змушує його вичерпати доступну пам'ять. Тобто, він безпосередньо переходить RAM з одного використання в інше, не витрачаючи зусиль, щоб зробити його вільним лише для того, щоб зробити його знову використаним.
David Schwartz

Використання знижується до 1 Гб, тому що іноді у вас немає іншого вибору, крім того, щоб звільнити пам'ять. Це ваш найгірший варіант, тому що вам просто треба піти на те, щоб зробити його знову використаним. Але якщо у вас є брудні анонімні сторінки, і програма припиняється, ви нічого не можете зробити, але зробіть цю пам'ять вільною.
David Schwartz

1
Розглянемо програму, в якій пам'ять відображає 1 Гб файлу і робить приватне, доступне для запису відображення. Операційна система повинна резервувати 1 Гб резервної пам'яті, якщо програма змінює кожен байт цієї пам'яті. За відсутності файлу сторінки, єдине місце, де він може зберігати дані, знаходиться в оперативній пам'яті. Таким чином, навіть якщо оперативна пам'ять ще не використовується для відображення, 1 Гб оперативної пам'яті зараз сильно обмежена і не може містити нічого, крім чистих, резервних сторінок. (З файлом сторінки він може просто резервувати 1 Гб файлу сторінки і продовжувати використовувати ОЗУ для будь-яких цілей.)
David Schwartz

Так. Двома основними винятками будуть, якщо ви знаєте, що у вас набагато більше оперативної пам'яті, ніж вам коли-небудь знадобиться, або якщо у вас дуже жорсткий контроль над тим, яке саме програмне забезпечення ви збираєтеся запускати (наприклад, вбудовані системи). Дивовижна річ у тому, що файл сторінки має величезний вплив на поведінку та продуктивність системи, навіть якщо він не використовується. Його існування усуває ці обмеження щодо використання оперативної пам'яті.
David Schwartz

@vandidant Це не зовсім правильно. Що відбувається, це те, що деякі типи відображення пам'яті призводять до обмеження оперативної пам'яті та неможливості збереження змінених даних. ОС обробляє це обмеження, відмовляючись дозволити виділення віртуальної пам'яті, яка може вимагати резервного сховища, який він не може бути впевнений, що він має (і з'являються ті дратівливі повідомлення, що працюють на низьку пам'ять). Це накладні витрати поширюються на вбудовані системи, а вбудовані системи, які не мають файлів сторінок, або розроблені з надмірною оперативною пам'яттю, або все їх програмне забезпечення ретельно розроблено для мінімізації попиту на резервну пам'ять.
David Schwartz
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.