Виртуална памет и пейдж файл (page file)
Използването на виртуална памет е често срещан подход в операционните системи. Това е така понеже тя предоставя доста преимущества, на ниска цена.
Както знаете всеки компютър разполага с оперативна памет (RAM), в която се разполагат всички стартирани програми. Всеки един техен процес заема част от паметта и ако отворим прекалено много програми тя може да свърши. Тук идва на помощ виртуалната памет.С използването на виртуална памет, периодично части от RAM паметта, които не сте използвали скоро, се записват на твърдия диск. По този начин се освобождава място от RAM паметта за нови програми. Прехвърлянето на части от паметта и записването им на хард диска става автоматично и се ръководи от операционната система. Благодарение на виртуалната памет вие разполагате с много повече памет от колкото е вашата реална оперативна памет. Получава се много по-ефективно използване на RAM паметта, като само най-често достъпваните части от нея остават реално върху нея, а неизползваните се прехвърлят на хард диска. Ако от някой процес бъде поискана информация намираща се на хард диска, то тя се прехвърля в паметта. Ако няма празна памет, то част от заетата се прехвърля на хард диска.
Какво е пейдж файл (page file)?
Мястото на твърдия диск, където се записва тази информация се нарича пейдж файл (page file). Името идва от думата страница (page). При използване на виртуална памет, реалната памет се разделя на равни по големина участъци, наречени страници. Това са и парчетата информация които се прехвърлят.Идеята на виртуалната памет се състои в това, всяка програма да си мисли че разполага с повече памет отколкото реално има свободна. Използват се виртуални адреси, които са различни от истинските адреси в паметта. Така два различни процеса може да работят с еднакви виртуални адреси. По-късно те се преобразуват в различни реални адреси. Тоест програмите работят с виртуалните адреси, а хардуера с реалните. За да бъде преобразуван един виртуален адрес в реален се използва таблица на страниците (page table). В тази таблица се съдържа информация, която асоциира всяка виртуална страница, или с адрес в реалната памет или с адрес в пейдж файла (page file).
Къде трябва да бъде пейдж файла (page file)?
За по-бърза работа на виртуалната памет, пейдж файла трябва да бъде лесно и бързо достъпван от главата на хард диска. Ако имате един хард диск, разположете пейдж файла в този дял, в който има най-много активност, тоест където са инсталирани програмите. Там е най-голям шанса да е главата на хард диска през повечето време. Ако имате повече от един хард диск, разположете пейдж файла в този, в който не е инсталирана операционната система и в който няма голяма активност. Така когато веднъж файла бъде достъпен главите на този хард диск ще си останат там и ще са готови да го достъпят бързо.Каква трябва да е големината на пейдж файла?
Това е доста често обсъждан въпрос. За жалост отговорът не е много прост и еднозначен. Доста пъти съм виждал да се препоръчва големината му да е 1.5 или 2 пъти размера на RAM паметта. Също минималната и максималната му големина да са еднакви за да не се получава бавене при промяна на големината му. Ако спазя тези препоръки трябва да настроя моят пейдж файл (page file) да е винаги 3GB. Това не е най-доброто решение.Минималната му големина е добре да е толкова колкото е нормално неговата ползваемост. Погледнете в Task Manager-а и вижте при нормална работа колко долу горе е неговата големина. Това е стойността, която ще ви гарантира че няма непрестанно да се увеличава и намалява. Максималният му размер вече не е проблем да е доста голяма стойност, при положение че имате място на твърдият диск.
Примерно аз имам 1.5GB RAM памет, а като погледна големината на пейдж файла в момента е около 400 – 500MB. Отворил съм браузър, антивирусна, скайп и още няколко малки програми които по принцип са отворени, плюс още една работна програма. Общо взето това е най-честото състояние на компютъра ми. Смятам да задам минимална големина на пейдж файла (page file) 500MB, а понеже имам много място ще задам максимална големина 2GB. Тези 2GB плюс моите 1.5GB RAM памет са ми напълно достатъчни, поне във Windows XP. Естествено ще е още по-добре ако имам повече RAM, тогава ще се използва още по-малко виртуалната памет.
Ако на вашият компютър използвате няколко потребителски акаунта и при смяна между акаунтите остават по много програми включени, вероятно ще ви трябва по-голям пейдж файл.
