Нерозумне використання оперативної пам'яті в Windows 7


16

У мене нова установка Windows 7, і моя оперативна пам’ять при звичайному запуску досягає 2,5 Гб. Я подивився на диспетчер завдань, і там не менше 1,5 Гб не вистачає і в Моніторі ресурсів. Немає вказівки, що використовується ця оперативна пам'ять. Хтось може сказати мені, як я можу дізнатися, що споживає мою пам’ять? Я вважаю, що це вірус, але жодна з безкоштовних антивірусних програм не відстежувала його.

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

PS
Моя інсталяція Windows 8 працювала нижче 2,5 Гб, насправді це було 1. щось, до недавнього часу я передавав деякі файли з іншого комп'ютера, який мав ту ж проблему, що і моя. Я видалив Windows 8 і встановив Windows 7, так як я це зробив у будь-якому випадку, і тепер я отримую велике використання пам'яті і в Windows 7.

Знімок екрана
(Клацніть зображення, щоб збільшити)

Знімок екрана


Ласкаво просимо до SuperUser! Для того, щоб допомогти діагностувати комп’ютер, нам потрібно трохи більше інформації. Чи можете ви включити скріншот менеджера завдань, щоб ми могли побачити, що відбувається?
digitxp

2
Приємно бути тут :) Я додав фотографії у своєму питанні.
Deus Deit

11
Re: I believe it's a virus: xkcd.com/1180 (SCNR)
Heinzi

Відповіді:


64

Якщо ви хочете, щоб ОС не використовувала вашу оперативну пам’ять, вийміть її з машини і поставте її на робочий стіл. Але поки оперативна пам'ять знаходиться в машині, її використання безкоштовне . Якщо ви думаєте, що "я хочу, щоб оперативна пам'ять була вільною зараз, щоб я міг її використовувати пізніше ", ви нерозумні. Ви можете використовувати його зараз і використовувати пізніше. Там немає НЕ недолік використання оперативної пам'яті. Взагалі жодної.

Сучасні операційні системи роблять оперативну пам’ять вільною лише тоді, коли у них немає вибору. Це тому, що можуть статися лише дві речі. Якщо оперативна пам’ять буде використана незабаром, тоді їм просто доведеться знову використовувати оперативну пам’ять, витрачаючи зусилля, які вони пройшли, щоб зробити оперативну пам'ять вільною - простіше перемістити оперативну пам’ять безпосередньо з одного використання на інше. І якщо оперативна пам’ять не буде використана незабаром, то зусилля, щоб зробити її вільною, знову марні. Зробити оперативну пам'ять безкоштовно - це крайній захід, який використовується лише в тому випадку, якщо в ОС немає іншого вибору, оскільки це додає додатковий крок, через який ОС доведеться пройти, щоб використовувати оперативну пам'ять.

Безкоштовна оперативна пам'ять потрібна лише для рідкісних випадків, коли потрібна оперативна пам'ять і операційна система не може перейти оперативну пам’ять з одного використання в інше (наприклад, в контексті переривання). Для цього потрібна лише дуже мала кількість оперативної пам’яті, як правило, на сучасних комп’ютерах - 64 Мб або більше. Більше вільної оперативної пам’яті, ніж це - лише відходи.

Подумайте, чи програма запускається, а потім зупиняється. Програма в ОЗП. Операційна система могла зробити оперативну пам'ять вільною або вона могла підтримувати програму в оперативній пам'яті. Якщо програма незабаром запуститься знову, збереження її в оперативній пам'яті - це величезний виграш - уникати вводу / виводу диска. І збереження програми в оперативній пам’яті дорівнює нулю, якщо оперативна пам’ять не потрібна для інших цілей. Таким чином, ОС зберігає програму в оперативній пам’яті, поки ця ОЗУ не потрібна для чогось іншого. Зробити оперативну пам'ять безкоштовно, коли не потрібна безкоштовна оперативна пам’ять - це суто програш.


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

Відмінна відповідь. Це йде рука об руку з "скільки мені потрібно оперативної пам'яті?" Вам потрібно лише стільки, скільки ви використовуєте.
Келтарі

9
Що люди не розуміють, це те, що вільна / простойна ОЗУ витрачається на марно пам'ять. Що це там взагалі? Люди були настільки звикли до способів робити XP, що мали величезні скарги на те, що Vista - це свиня з оперативної пам’яті (деякі з них були виправдані).
Каран

1
Проблема цих відповідей полягає в тому, що, хоча вони правильні, вони вирішують відсутність "вільної" оперативної пам'яті, пояснюючи її як кеш-пам'ять. Оперативна пам’ять «Кеш» відрізняється від тієї, що виділяється на запущені процеси, і, схоже, питання задає конкретно про оперативну пам’ять, яка використовується 'запущеними процесами. Оперативна пам’ять, яка використовується ОС для кешування, повинна бути повністю прозорою і не повинна відображатися як «використана» в диспетчері завдань (звичайно, якщо окремі процеси вирішать використовувати більше доступної ОЗУ для власного кешування, це не застосовується, і це може бути тут).
Боб

4
@Bob Випадок точно такий же, як пам'ять, що виділяється на запущені процеси. Майже вся фізична ОЗУ - це по суті кеш-пам'ять сучасної операційної системи. Пам'ять, виділена процесом, може відповідати фактичній фізичній оперативній пам’яті залежно від інших потреб ОС.
Девід Шварц

8

Windows 7 намагається скористатися всією вашою оперативною пам’яттю. Якщо жодна програма не використовує її, вона зберігатиме якомога більше інформації з вашого HD, так що коли програма вимагає певної інформації, вона буде доступна в оперативній пам'яті (це набагато швидше, ніж ваш диск).

Ця функція називається Superfetch, і ви можете прочитати інформацію про неї за цим посиланням, а також гугнути навколо. І якщо ви хочете дізнатися, як це впливає (покращує) продуктивність, перегляньте сайт " Тома" .

Якщо програмі потрібно більше пам’яті, Windows надасть вашій програмі необхідну оперативну пам’ять, тому це не те, про що ви повинні турбуватися.


4

Можливо, те, що ви спостерігаєте, - це функції кешування диска Windows 7 , вони фактично оптимізують використання оперативної пам’яті, навіть незважаючи на те, що відбувається навпаки.

Ядро Linux також має такий тип функцій .


1
Я використовую linux як свою основну ОС і щоб досягти 2,5 ГБ оперативної пам’яті, я повинен ... насправді я думаю, що ніколи не досягав 2.5 ГБ оперативної пам’яті, що я роблю.
Deus Deit

Чи є спосіб перевірити, чи це так? Чи є спосіб вимкнути цю функцію і подивитися, що відбувається? Я новачок у вікнах.
Deus Deceit

Так, це пояснює, як: addictivetips.com/windows-tips/disable-windows-7-superfetch (зауважте, що вони рекомендують не відключати для більшості випадків використання)
dtmland

3
Зауважте, що вимкнення Superfetch просто означає, що Windows може використовувати пам'ять для інших цілей. "Вільна пам'ять" врешті-решт означає, що Windows взагалі не має уявлення, що з цим робити.
MSalters

SuperFetch, нова "функція кешування диска" Windows 7 (і Vista, і 8, і 8.1, і 10), не займає оперативної пам'яті з "доступної" оперативної пам'яті. Оперативна пам’ять, яку вона "використовує", залишається у списку очікування і тому "доступна". Він просто використовується для кешування різних матеріалів - вмісту файлів, до яких ви недавно отримували доступ, на відміну від сторінок, які нещодавно були витіснені з процесів із низьким пріоритетом пам'яті.
Джеймі Ханрахан

3

2,5 Гбайт або оперативна пам’ять - це цілком нормальна кількість, яку використовує Windows 7. Наразі моя машина простоює і сидить на 2,51 ГБ використовуваної оперативної пам’яті. Я дуже сумніваюся, що у вас є вірус, це типове використання пам'яті.

Що стосується того, що використовується ця оперативна пам’ять, перегляньте свого диспетчера завдань і переконайтеся, що Show processes from all usersпрапорець встановлений. Без цього обраного ви не побачите жодних системних процесів (або інших користувачів) та їх використання в пам'яті.


1
Я погоджуюсь, я щойно зробив нову програму встановлення Win 7, а використання пам'яті становить приблизно 2,1 ГБ.
Мойсей

А що буде, якби хтось мав 2 ГБ оперативної пам’яті замість 8, який має мій ноутбук?
Deus Deit

4
Якби у вас було менше оперативної пам’яті, вона би використовувала менше.
Девід Шварц

@DeusDeceit, щоб додати коментар Девіда, будь-яка сучасна ОС (Windows, Linux, MacOSX) перегляне доступну для неї пам’ять і визначить найбільш ефективний спосіб її використання. Жодна сучасна система не намагається заповнити 2Gb оперативної пам’яті 3Gb даних і отримати дві третини шляху і сказати «ой».
Роб Муар

3

Це дуже схоже на загальну проблему Linux, що "Linux з'їв мою оперативну пам'ять". Я дуже використовую свою машину Windows 7, і коли у мене було 6 Гб фізичної оперативної пам’яті, вона їсть щось на зразок 5 Гб. Коли я оновив до 8 ГБ, це їсть 6-7 ГБ. Але я нічого не змінив тим, що роблю зі своєю машиною.

Він використовує оперативну пам’ять для кешування файлів, щоб пізніше отримати доступ до нього. Дуже схожий на Linux. Це дійсно безкоштовно, і Windows 7 вийде, коли вашому додатку потрібно виділити більше оперативної пам’яті.

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