Виртуальная память: параметры и рекомендации
Виртуальная память (также известная как «файл подкачки») — это, по сути, часть свободного места на вашем жестком диске или твердотельном накопителе, выделяемая ОС для использования в качестве ОЗУ, когда в вашем обычном ОЗУ мало места для поддержания работы всех программ. Она предоставляет собой дополнительное «фиктивное» ОЗУ, которое дает возможность программам работать дальше, но поскольку доступ к HDD и SSD и их производительность ограничены в сравнении с реальным ОЗУ, то при активном использовании виртуальной памяти обычно наблюдается значительная потеря производительности.
Управлять виртуальной памятью в системе Windows® довольно просто, но обычно в этом нет необходимости. В процессе работы Windows по умолчанию будет настраивать виртуальную память в соответствии с вашими потребностями и объемом установленного ОЗУ. ОС сама определяет необходимые настройки в зависимости от ваших требований и объема ОЗУ. Она автоматически обновит настройки в случае резкого увеличения использования памяти. Если вы на данный момент используете большой объем ОЗУ, то автоматические настройки могут в конечном итоге привести к использованию большого пространства на накопителе (например, система с ОЗУ объемом 8 ГБ часто по умолчанию использует 8 ГБ виртуальной памяти и может увеличить этот объем до 16 ГБ). Некоторые пользователи изменяют параметры виртуальной памяти для уменьшения объема пространства, используемого их ОС на жестком диске или твердотельном накопителе, потому что им кажется, что у них достаточный объем ОЗУ для полного исключения использования функции виртуальной памяти ОС. Пользователи также хотят сэкономить память, «которая тратится впустую,» если виртуальная память не задействована. Это особенно характерно при использовании более дорогой системы хранения на SSD. Однако уменьшение или удаление виртуальной памяти для освобождения места на диске сопряжено с определенным риском возникновения ошибок или нестабильной работой компьютера в тех случаях, когда необходим больший объем виртуальной памяти, но возможности вашей ОС ограничены.
Как правило, увеличение виртуальной памяти также не требуется. Случаи, когда больший объем виртуальной памяти отличает работающую программу от неработающей, лучше всего решаются обновлением ОЗУ, поскольку скорость ОЗУ значительно превышает производительность виртуальной памяти. Производительность вашей ОС будет ниже, чем в случае, если бы вы установили новое специализированное оборудование, предназначенное для обеспечения более высокой производительности.
Настройка этого параметра вручную выполняется на свой страх и риск. Ее не следует проводить в том случае, если у вас отсутствуют четкие рекомендации относительно необходимости данных действий. Недостаточное выделение пространства для виртуальной памяти может привести к сбоям в работе программ или вашей ОС. Кроме того, более старые версии программ разработаны с учетом того, что для их использования имеется файл подкачки. При этом в работе отдельных программ могут возникать сбои, если из-за неправильной конфигурации для их работы недостаточно виртуальной памяти.
Подробные инструкции для этих настроек в более старых версиях Windows немного отличаются от приведенных ниже рекомендаций, но все равно будут в основном применимы, так как эта функция незначительно изменилась с момента выпуска Windows XP.
- Задайте системные свойства, кликнув на опцию «Система» в подменю «Система и безопасность» в разделе «Панель управления» или посредством нажатия правой кнопки мыши на раздел «Компьютер» в меню «Пуск» и выбора пункта «Свойства» (только Windows 7 и более ранние версии). Выполнение этих последовательных действий приведет к открытию окна, изображенного ниже.
- Нажмите на кнопку ««Параметры»» в категории производительности (кнопка обведена и обозначена цифрой 2 на снимке экрана выше). Это действие приведет к открытию окна с опциями производительности.
- Сначала перейдите на вкладку «Дополнительно» (обведена и обозначена цифрой 3), а затем нажмите на кнопку «Изменить» (обведена и обозначена цифрой 4). Эти действия откроют окно «Виртуальная память» (выделено и обозначено цифрой 5), из которого можно выполнить любые настройки.
Если вы отключите функцию «автоматически управлять размером файла подкачки для всех дисков», то в этом окне вы сможете вручную установить размеры или диапазоны размеров, а также указать, на каком диске будет размещается это пространство, если у вас их больше одного (для освобождения места на SSD, переместив файл подкачки на дополнительный жесткий диск) или полностью отключить эту функцию.
Хотя некоторые пользователи полностью отключают функции автоматического управления или виртуальной памяти, мы официально рекомендуем оставить их. Если для вас удобнее уменьшить размер памяти в соответствии с ее использованием, это можно сделать безопасно, однако полное отключение этой функции может нанести вред системе. Даже если вы понимаете, что у вас достаточно ОЗУ, чтобы обойтись без этой функции, учтите, это изменение влечет за собой риск плохой оптимизации работы программного обеспечения, в частности, из-за утечки памяти, которая увеличивает объем ОЗУ и приводит к сбоям в работе.
Виртуальная память в 32-битной версии Windows — Windows Server
- Чтение занимает 7 мин
В этой статье
Применяется к: Windows 7 Пакет обновления 1, Windows Server 2012 R2
Исходный номер КБ: 2160852
Сводка
В этой статье содержатся основные сведения о реализации виртуальной памяти в 32-битных версиях Windows.
В современных операционных системах, таких как Windows, приложения и многие системные процессы всегда ссылаться на память с помощью виртуальных адресов памяти. Виртуальные адреса памяти автоматически переводятся на реальные (RAM) адреса с помощью оборудования. Только основные части ядра операционной системы обходят этот адрес и используют реальные адреса памяти напрямую.
Виртуальная память всегда используется, даже если память, необходимая всем запущенным процессам, не превышает объем оперативной памяти, установленной в системе.
Процессы и пространства адресов
Всем процессам (например, исполняемым приложениям), работающим в 32-битных версиях Windows, назначены виртуальные адреса памяти (виртуальное пространство адресов), в диапазоне от 0 до 4 294 967 295 (2*32-1 = 4 ГБ), независимо от того, сколько оперативной памяти установлено на компьютере.
В конфигурации Windows по умолчанию для личного использования каждого процесса назначаются 2 гигабайта (ГБ) этого виртуального адресного пространства, а остальные 2 ГБ делятся между всеми процессами и операционной системой. Как правило, приложения (например, Блокнот, Word, Excel и Acrobat Reader) используют только часть 2 ГБ частного адресного пространства. Операционная система назначает кадры страниц оперативной памяти только тем виртуальным страницам памяти, которые используются.
Расширение физического адреса (PAE) — это функция 32-битной архитектуры Intel, которая расширяет адрес физической памяти (RAM) до 36 бит. PAE не меняет размер виртуального адресного пространства (которое остается на уровне 4 ГБ), а только объем фактической оперативной памяти, который может быть рассмотрен процессором.
Перевод между 32-битным виртуальным адресом памяти, используемым кодом, работающим в процессе, и 36-битным адресом оперативной памяти обрабатывается компьютерным оборудованием автоматически и прозрачно в соответствии с таблицами переводов, которые поддерживаются операционной системой. Любая виртуальная страница памяти (32-битный адрес) может быть связана с любой физической страницей оперативной памяти (36-битным адресом).
В следующем списке описывается количество оперативной памяти различных Windows версий и выпусков (по данным на май 2010 г.):
Версия Windows | ОЗУ |
---|---|
Windows NT 4.0 | 4 ГБ |
Windows 2000 Professional | 4 ГБ |
Windows 2000 Standard Server | 4 ГБ |
Windows 2000 Advanced Server | 8 ГБ |
Windows 2000 Datacenter Server | 32 ГБ |
Windows XP Professional | 4 ГБ |
Windows Веб-издание Server 2003 | 2 ГБ |
Windows Сервер 2003 выпуск Standard | 4 ГБ |
Windows Сервер 2003 выпуск Enterprise | 32 ГБ |
Windows Выпуск центра обработки данных Server 2003 | 64 ГБ |
Windows Vista | 4 ГБ |
Windows Server 2008 Standard | 4 ГБ |
Windows Server 2008 Enterprise | 64 ГБ |
Windows Server 2008 Datacenter | 64 ГБ |
Windows 7 | 4 ГБ |
Файл подкачки
Оперативная память — это ограниченный ресурс, в то время как для большинства практических целей виртуальная память не ограничена. Может быть много процессов, и каждый процесс имеет свои собственные 2 ГБ частного виртуального адресного пространства. Если память, используемая всеми существующими процессами, превышает доступную оперативную память, операционная система перемещает страницы (4-КБ частей) одного или более виртуальных адресных пространств на жесткий диск компьютера. Это освободит раму оперативной памяти для других применений. В Windows системах указанные страницы хранятся в одном или Pagefile.sys файлах в корне раздела. В каждом разделе диска может быть один такой файл. Расположение и размер файла страницы настроены в System Properties
(нажмите кнопку Advanced, щелкните Производительность и нажмите кнопку Параметры).Пользователи часто задают вопрос о том, насколько большим должен быть этот pagefile? На этот вопрос нет единого ответа, так как он зависит от количества установленной оперативной памяти и от объема виртуальной памяти, требуемой рабочей нагрузкой. Если других сведений нет, то обычная рекомендация в 1,5 раза больше установленной оперативной памяти является хорошей отправной точкой. В серверных системах обычно необходимо иметь достаточно оперативной памяти, чтобы не было недостатка и чтобы не использовался pagefile. В этих системах это может не служить никакой полезной цели для поддержания большого pagefile. С другой стороны, если дискового пространства достаточно, сохранение большого pagefile (например, в 1,5 раза больше установленной оперативной памяти) не вызывает проблем, и это также устраняет необходимость беспокоиться о том, насколько большим он должен быть.
Производительность, ограничения архитектуры и оперативная память
На любой компьютерной системе по мере увеличения нагрузки (количество пользователей, объем работы) производительность снижается, но нелинейно. Любое увеличение нагрузки или спроса за определенной точкой приводит к значительному снижению производительности. Это означает, что некоторые ресурсы в критическом дефиците и стали узким местом.
В какой-то момент ресурс, который находится в дефиците, не может быть увеличен. Это означает, что архитектурный предел был достигнут. Некоторые часто сообщалось об архитектурных ограничениях в Windows включаем следующие:
- 2 ГБ общего виртуального адресного пространства для системы (ядра)
- 2 ГБ частного виртуального адресного пространства за один процесс (режим пользователя)
- 660 МБ системного хранилища PTE (Windows Server 2003 и ранее)
- 470 МБ хранилища пула страниц (Windows Server 2003 и ранее)
- 256 МБ неоплаченного хранилища пула (Windows Server 2003 и ранее)
Это относится к Windows Server 2003 в частности, но это может также применяться к Windows XP и Windows 2000. Однако Windows Vista, Windows Server 2008 и Windows 7 не разделяют эти архитектурные ограничения. Ограничения на память пользователя и ядра (цифры 1 и 2 здесь) одинаковы, но ресурсы ядра, такие как PTEs и различные пулы памяти, динамически. Эта новая функция позволяет использовать как страницу, так и неоплаченную память. Это также позволяет PTEs и пул сеансов расти за пределы, которые были рассмотрены ранее, до точки, где все ядро исчерпано.
Часто находятся и цитируются такие утверждения, как следующие:
С помощью терминалного сервера 2 ГБ общего адресного пространства будут полностью использоваться до использования 4 ГБ оперативной памяти.
В некоторых случаях это может быть верно. Однако необходимо следить за системой, чтобы узнать, применяются ли они к вашей конкретной системе или нет. В некоторых случаях эти утверждения являются выводами из определенных сред Windows NT 4.0 или Windows 2000 и не обязательно применимы к Windows Server 2003. В Windows Server 2003 были внесены значительные изменения, чтобы снизить вероятность того, что эти архитектурные ограничения будут фактически достигнуты на практике. Например, некоторые процессы, которые находились в ядре, были перенесены в неядерные процессы, чтобы уменьшить объем памяти, используемый в общем виртуальном пространстве адресов.
Мониторинг использования оперативной памяти и виртуальной памяти
Монитор производительности является принципиальным средством для мониторинга производительности системы и определения расположения узких мест. Чтобы запустить монитор производительности, нажмите кнопку Начните, нажмите панель управления, нажмите административные средства, а затем дважды щелкните Монитор производительности. Вот сводка некоторых важных счетчиков и то, что они вам говорят:
Memory, Committed Bytes: This counter is a measure of the demand for virtual memory.
Это показывает, сколько bytes было выделено процессами и к которым операционная система совершила раму страницы ram или слот страницы в pagefile (или возможно оба). По мере того, как количество совершенных bytes будет больше, чем доступная оперативная память, будет увеличиваться и размер используемой страницы также увеличится. В какой-то момент действие paging начинает существенно влиять на производительность.
Process, Working Set, _Total: Этот счетчик является показателем виртуальной памяти в активном использовании.
В этом счетчике показано, сколько оперативной памяти требуется, чтобы виртуальная память, используемая для всех процессов, была в оперативной памяти. Это значение всегда составляет несколько 4096, то есть размер страницы, используемый в Windows. Так как спрос на виртуальную память увеличивается за пределами доступной оперативной памяти, операционная система регулирует объем виртуальной памяти процесса в рабочем наборе, чтобы оптимизировать доступное использование оперативной памяти и свести к минимуму потери данных.
Paging File, %pagefile in use: This counter is a measure of how much of the pagefile is actually being used.
Используйте этот счетчик, чтобы определить, является ли pagefile подходящим размером. Если этот счетчик достигает 100, страница заполнена, и все перестает работать. В зависимости от волатильности рабочей нагрузки, возможно, необходимо, чтобы эта страница была достаточно большой, чтобы она использовалась не более чем на 50-075 процентов. Если большая часть страницы используется, наличие более одного на разных физических дисках может повысить производительность.
Memory, Pages/Sec. Этот счетчик является одним из наиболее непонимаемого.
Высокое значение для этого счетчика не обязательно означает, что узкое место производительности связано с нехваткой оперативной памяти. Операционная система использует систему paging для других целей, кроме замены страниц из-за чрезмерной приверженности памяти.
Memory, Pages Output/Sec. На этом счетчике показано, сколько страниц виртуальной памяти было записано на страницу, чтобы освободить кадры страниц оперативной памяти для других целей каждую секунду.
Это лучший счетчик, чтобы отслеживать, если вы подозреваете, что paging является узким местом производительности. Даже если установленный объем оперативной памяти превышает установленный объем оперативной памяти, если выход страниц/сек в основном низкий или нулевой, существенной проблемы производительности из-за недостаточной оперативной памяти не возникает.
Память, кэш-bytes, memory, Pool Nonpaged Bytes, Memory, Pool Paged Bytes, Memory, System Code Total Bytes, Memory, System Driver Total Bytes:
Сумма этих счетчиков — это показатель того, сколько из 2 ГБ общей части виртуального адресного пространства с 4 ГБ фактически используется. Используйте эти данные, чтобы определить, достигает ли ваша система одного из обсуждающихся ранее архитектурных ограничений.
Память, доступные MBytes. Этот счетчик измеряет, сколько оперативной памяти доступно для удовлетворения потребностей виртуальной памяти (либо новых выделений, либо для восстановления страницы с страницы).
При дефиците оперативной памяти (например, количество совершенных bytes превышает установленный объем оперативной памяти), операционная система будет пытаться сохранить определенную часть установленной оперативной памяти доступной для немедленного использования путем копирования виртуальных страниц памяти, которые не используются на странице. Таким образом, этот счетчик не достигнет нуля и не обязательно является хорошим показателем того, не хватает ли вашей системе оперативной памяти.
Ссылки
Расширения адресного окна
Функции виртуальной памяти — Win32 apps
- Чтение занимает 2 мин
В этой статье
Функции виртуальной памяти позволяют процессу управлять состоянием страниц в его виртуальном адресном пространстве. Они могут выполнять следующие операции:
- Зарезервируйте диапазон виртуального адресного пространства процесса. Резервирование адресного пространства не выделяет физическое хранилище, но не позволяет другим операциям выделения использовать указанный диапазон. Он не влияет на виртуальные адресные пространства других процессов. Резервирование страниц предотвращает необязательное использование физического хранилища, одновременно позволяя процессу резервировать диапазон адресного пространства, в котором может расти структура динамических данных. При необходимости процесс может выделить физическое хранилище для этого пространства.
- Зафиксируйте диапазон зарезервированных страниц в виртуальном адресном пространстве процесса, чтобы физическое хранилище (в ОЗУ или на диске) было доступно только для процесса выделения.
- Укажите доступ для чтения и записи, только для чтения или без доступа для диапазона зафиксированных страниц. Это отличается от стандартных функций выделения, которые всегда выделяют страницы с доступом на чтение и запись.
- Освободите диапазон зарезервированных страниц, сделав диапазон виртуальных адресов для последующих операций выделения вызывающим процессом.
- Отменяет выделение диапазона зафиксированных страниц, освобождая их физическое хранилище и делая их доступными для последующего выделения любым процессом.
- Блокировка одной или нескольких страниц выделенной памяти в физическую память (ОЗУ), чтобы система не могла переключать страницы в файл подкачки.
- Получение сведений о диапазоне страниц в виртуальном адресном пространстве вызывающего процесса или указанного процесса.
- Изменение защиты доступа для указанного диапазона зафиксированных страниц в виртуальном адресном пространстве вызывающего процесса или указанного процесса.
Дополнительные сведения см. в следующих статьях.
что такое, как устроена, как увеличить
Виртуальная память компьютера выступает в качестве дополнения к оперативной памяти и является частью оперативной памяти, расположенной на жестком диске. Пользователю компьютера это дает ощущение, что он имеет ОЗУ с неограниченным объемом.
Виртуальная память встречается практически во всех операционных системах, предназначенных для настольных компьютеров. Системные требования многих прикладных программ растут очень быстрыми темпами от версии к версии. И несмотря на то, что объем оперативной памяти, устанавливаемый на современные модели настольных компьютеров значительно вырос, все равно довольно часто возникает ситуация, когда его оказывается недостаточно.
Особенно в случаях, когда пользователь одновременно запускает несколько ресурсоемких программ. Отсюда возникает необходимость в наличии виртуальной памяти.
Что такое виртуальная память?Скажем так, это технология, позволяющая прикладной программе «считать», что она имеет неограниченный объем и непрерывное адресное пространство памяти. Хотя на деле память физически фрагментирована и ее объем искусственно увеличен на жестком диске.
Системы, использующие виртуальную память, способны выполнять приложения превышающие возможности оперативной памяти с высокой скоростью и использовать физическую память более эффективно, чем без нее. Виртуальная память отличается от технологии виртуализации.
Как работает виртуальная память?
Это очень полезная и нужная технология, которая использует фактическое пространство винчестера, манипулируя данными с помощью операционной системы и перемещая их в случае необходимости из оперативной памяти на жесткий диск. Часть пространства на жестком диске действует как временный носитель. Операционная система определяет, какие данные и в каком месте сохранены и обеспечивает к ним быстрый доступ, позволяя работать системе максимально быстро.
Виртуальная память работает в координации с оперативной памятью, операционная система определяет, какие данные, находящиеся в оперативной памяти, сравнительно долго не используются системой и сбрасывают их в виртуальную память. В случае необходимости они могут быть перемешены обратно в оперативную память. Вторичные устройства хранения данных, такие как жесткий диск, имеет большую емкость хранения, но предоставляют очень медленный доступ к данным.
Как организована виртуальная память?
Виртуальная память использует технологию файла подкачки, либо сегментации. Большинство систем используют таблицы страниц, для перевода виртуальных адресов в физические адреса, используемые процессором для выполнения инструкций. Таблица страниц сохраняет записи для отображения виртуальных адресов в физические адреса. Системы могут иметь одну таблицу страниц для всей системы или отдельные таблицы страниц для каждой прикладной программы.
Таким образом, файл подкачки может быть определен, как процесс перемещения неактивных страниц виртуальной памяти на диск и восстановление их в оперативной памяти по запросу. Существуют различные алгоритмы, чтобы выбирать, какие страницы должны быть перенесены на жесткий диск и которые должны быть сохранены.
Очень немногие системы используют концепцию сегментации для реализации виртуальной памяти. В сегментации память делится на сегменты переменного размера. Номер сегмента и смещение внутри сегмента вместе образуют виртуальный адрес.
Если процессор хочет получить конкретный элемент данных, он сначала ищет для своего сегмента номер в сегменте таблицы, чтобы найти дескриптор (описание) сегмента. Дескриптор сегмента дает информацию, является ли смещение внутри сегмента меньше, чем длина отрезка, и если не генерируется прерывание, уведомляет о том, что сегмент найден.
Если процессор не может найти сегмент в основной памяти, он генерирует аппаратное прерывание запроса операционной системы, чтобы поменять сегмент. Затем операционная система ищет сегменты, которые не были в эксплуатации в течение длительного времени и меняет их, перемещая из оперативной памяти на жесткий диск, чтобы освободить место для новых сегментов для чтения.
Как увеличить виртуальную память?
Если вы хотите увеличить объем виртуальной памяти на своей системе, то ознакомьтесь с пошаговой инструкцией. (Для Windows XP):
- Откройте меню «Пуск», выберите команду «Панель управления» Выберите пункт «Производительность и обслуживание» Далее выберите «Система» Выбираем вкладку «Дополнительно» Выбираем секцию «Быстродействие» и нажимаем кнопку Параметры Выбираем вкладку «Дополнительно» В секции «Виртуальная память» нажимаем на кнопку «Изменить» В списке Диск [метка тома] выберите диск, содержащий файл подкачки, если вы хотите изменить размер его виртуальной памяти. Вы можете выбрать объем памяти, который хотите зарезервировать для виртуальной памяти, введя начальный и максимальный размер. Нажмите кнопку «Задать» Перезагрузите компьютер
Если вам кажется, что ваш компьютер работает слишком медленно, то увеличение виртуальной памяти не поможет, это может быть только результатом «пробуксовки». Слишком частая перетасовка блоков виртуальной памяти между реальной памяти и дисков потребляет большую часть времени работы компьютера, тем самым вызывая пробуксовку. Хотя и существует некоторые меры, оптимизирующие работу виртуальной памяти, все же лучшим решением будет увеличение объема оперативной памяти.
Как увеличить объем виртуальной памяти
Иногда при использовании приложений, требовательных к ресурсам компьютера, операционная система выдает сообщение, что осталось слишком мало виртуальной памяти. Что представляет собой виртуальная память компьютера, какую роль она играет и как ее можно увеличить?
Что такое виртуальная память?
Виртуальная память – это временное хранилище данных на жестком диске, которое используется операционной системой в том случае, когда оперативной памяти становится недостаточно для выполнения той или иной задачи. Таким образом, виртуальная память или, как еще ее называют, файл подкачки представляет собой нечто вроде дополнительной оперативной памяти, только находится она на винчестере компьютера.
Если на вашем компьютере установлен небольшой объем оперативной памяти, то прироста производительности в программах можно добиться если увеличить объем файла подкачки. Однако учтите, что чтение с модуля оперативной памяти происходит значительно быстрее, чем с жесткого диска, поэтому если есть возможность добавить объем оперативной памяти, то предпочтительнее будет все-таки сделать это. Но когда такой возможности не имеется, виртуальная память может быть очень даже кстати.
Как увеличить объем виртуальной памяти?
Объем виртуальной памяти компьютера регулируется в параметрах быстродействия. Чтобы добраться до них, зайдите в меню Пуск, перейдите в Панель управления, затем в раздел Система и выберите пункт Дополнительные параметры системы.
В окне Свойства системы перейдите на вкладку Дополнительно и нажмите на кнопку Параметры в разделе Быстродействие.
В окне Параметры быстродействия перейдите во вкладку Дополнительно и нажмите на кнопку Изменить в подзаголовке Виртуальная память.
Здесь вам нужно будет установить флажок на пункте Указать размер и задать числовые значения для исходного и максимального размеров файла подкачки. Затем нажмите кнопку Задать. Изменения вступят в силу только после того, как вы перезагрузите компьютер.
Что касается размера файла подкачки, то здесь невозможно посоветовать установку какого-либо конкретного значения, поскольку объем виртуальной памяти должен выставляться в пропорциональной зависимости от объема оперативной памяти. Советуется устанавливать исходный размер файла подкачки в полтора раза больший, чем объем оперативной памяти, а максимальный – в три раза больший, чем исходный. Однако при этом файл подкачки будет постепенно фрагментироваться, что скажется на скорости его работы. Поэтому если объем установленной у вас оперативной памяти превышает хотя бы 3 Гб, лучше задать одинаковый размер для исходного и максимального значений файла подкачки – в полтора-два объема оперативной памяти.
Наша компания предоставляет услугу обслуживание компьютеров и серверов.
Для чего нужна виртуальная оперативная память.
Виртуальная оперативная память используется во всех современных операционных системах. Она позволяет имитировать больше RAM памяти, чем фактически установлено на вашем компьютере.
Но, давайте посмотрим, как это работает. Приложения и их данные для того, чтобы использоваться процессором, должны браться с жёсткого диска, где хранятся, в оперативную память, из которой и будут доступны непосредственно процессору. Поэтому для правильной работы системы и возникает необходимость в достаточном размере оперативной памяти.
Несколько лет назад RAM память для компьютера была очень дорогим товаром. Если добавить к этому тот факт, что не все запущенные приложения, используются одновременно, встаёт необходимость в контроле использования памяти самой системой.
Хотя RAM память была дорогой, но ведь есть жёсткий диск. Так для увеличения памяти стал использоваться жёсткий диск. Процедура была простой, на жёсткий диск передавалась часть, в данный момент не используемой оперативной памяти.
Этот метод имитирует больший размер памяти. В обычной операционной системе имитация достигает двойного размера установленной оперативной памяти. Что, в свою очередь, иногда может немного тормозить систему.
Проблема в том, что скорость доступа к расположенным на жёстком диске данным в тысячи раз медленнее, чем к RAM памяти. Если часть памяти находится на диске, системе требуется время, чтобы взять её и вернуть в основную память, так как это единственное место, которое может использоваться процессором.
Оперативная память организована по уровням. Сначала процессор использует данные из кэша, находящегося вблизи процессора, затем в оперативной памяти, и уж в последнюю очередь на жёстком диске. Чем ближе к процессору, тем больше скорость.
Почему виртуальная оперативная память так важна.
Если не хватает памяти, невозможно запустить другие программы, а в тех, что запущены, могут быть проблемы при работе с большим количеством данных. Но, из-за использования виртуальной оперативной памяти ваш компьютер может работать медленнее. Это произойдёт, если ему придётся использовать память на жёстком диске. Как всегда получается компромисс между скоростью и количеством обрабатываемых системой данных.
Никогда никакие параметры виртуальной памяти не могут быть лучше, чем расширение оперативной памяти. Более того, в идеале лучше иметь такой компьютер, в котором эта функция отключена.
Использование виртуальной оперативной памяти в современных операционных системах.
С каждой новой версией операционных систем улучшались управление и алгоритмы регулировки памяти. Однако всё более широкое использование графических интерфейсов и всё более сложные инструменты делают систему пожирателем RAM.
Одна из возможностей увеличить скорость системы использовать SSD. Но имейте в виду, что даже такое не очень эффективное улучшение скорости доступа к данным, может очень помочь компьютеру при нехватке памяти.
Стоит ли отключать виртуальную оперативную память.
Стоит ли отключать функцию виртуальной оперативной памяти и принесёт ли это улучшение производительности. В принципе обычному пользователю отключать функцию виртуальной оперативной памяти не рекомендуется. Если у вас в компьютере много памяти, вы не используйте одновременно много приложений, но у вас есть проблемы с производительностью, тогда можно и попробовать отключить эту функцию.
Короче говоря, виртуальная оперативная память позволяет увеличить вашу способность работать с несколькими программами одновременно, но и может снизить производительность вашего компьютера.
Что такое виртуальная память?
Я постараюсь начать медленно, а затем соберу все это для вас. Это вот так:
Виртуальная память, как обычно используется, относится к «пейджингу». Как следует из названия, пейджинг похож на блокнот для человека.
Когда вы работаете с простыми суммами или изучаете простую информацию, вы делаете все это в своей голове: вы просто загружаете всю информацию, обрабатываете ее и получаете ответ. Это как компьютер, загружающий файлы с жесткого диска — он загружает программы или изображения или другую информацию, необходимую ему для работы, в свою «реальную память» (или «физическую память») и работает с ними «мозгом» ( его процессор).
Однако, когда вы изучаете сложную информацию или работаете со сложными суммами, вы, возможно, не сможете вместить все это сразу. Вы запутываетесь, начинаете замедляться, не можете сразу все это держать, и вам нужно что-то забыть, чтобы вспомнить что-то еще.
Человеческое решение состоит в том, чтобы использовать блокнот. Мы записываем на страницах все вещи, которые мы не можем вспомнить сразу, но обращаемся к ним, делая суммы. Возможно, нам не удастся запомнить огромный список данных о продажах за месяц, но мы можем просматривать страницы, получать информацию постепенно и обрабатывать каждый бит. Это похоже на то, как компьютер «пейджирует» свою память — пишет страницы, полные информации, и помещает ее в «виртуальную память» для последующего использования, понимая, что ему нужна страница, и загружая эту страницу обратно из виртуальной памяти в реальную память. В Linux и Unix место, где хранятся эти страницы, буквально называется «файл подкачки», а страницы данных в памяти буквально называются «страницы». Различные системы имеют разные названия для этих вещей, но общая концепция во многом одинакова.
На самом деле, пейджинг очень прост. Все страницы информации не помещаются в памяти, поэтому некоторые страницы помещаются на диск и загружаются позже.
Теперь все усложняется тем, что современные системы поддерживают отображение памяти и защиту памяти, которые обычно обрабатываются одной и той же аппаратной системой компьютера: блоком управления памятью или MMU.
На (современном) многозадачном компьютере, который может запускать много программ одновременно и имеет защиту памяти, каждая программа обычно отделена от других программ, работающих в той же системе. Таким образом, одна программа не может изменить другую программу, просто обращаясь к ее памяти — MMU физически отделяет адресное пространство одной программы от адресного пространства других. Другими словами, программы пользователя не видят программы других пользователей или даже другие программы. Они не видят «реальную память» — они видят свою собственную «виртуальную память».
Теперь эта концепция изоляции памяти и концепция файла подкачки — это две концептуально разные вещи, поэтому, вероятно, вы запутались. Тем не менее, ключ в том, что они оба работают, используя MMU — модуль управления памятью, который разделяет память на страницы и отображает страницы в виртуальное адресное пространство.
Таким образом, когда программа запрашивает память по определенному «адресу памяти», на самом деле происходит то, что страницы памяти для этой программы и их соответствующие адреса («адресное пространство» программы) ищутся, и страница, которая соответствует этот блок памяти найден. Эта страница может быть либо загружена где-то в реальной памяти, в этом случае программе предоставляется доступ, либо она может быть выгружена на диск. Если он выгружен, то он вызывает «сбой страницы» — доступ к диску и страница загружаются в память. Таким образом, программа работает даже тогда, когда не хватает памяти, но работает МЕДЛЕННО, если ей приходится использовать диск для того, что обычно обеспечивает очень быстрый доступ к памяти.
Теперь, если недостаточно места для загрузки этой страницы в память, у вас есть проблема. В этом случае некоторую ДРУГУЮ страницу, которая уже находится в памяти, необходимо «переставить» на диск, чтобы можно было загрузить страницу первой программы. Или это могут быть страницы из одной и той же программы. Это иногда можно увидеть в графических программах, например, в сильно загруженных системах, когда часть изображения загружается медленно и рисуется быстро, затем следующая часть загружается одинаково медленно и рисуется быстро, и когда вы возвращаетесь к работе с первым часть, она медленная СНОВА. Это потому, что они загружаются для дальнейшей работы, а затем снова заменяются, так что можно заняться чем-то другим. Очевидно, это очень медленный способ работы, и вам действительно нужно больше РЕАЛЬНОЙ памяти.
Виртуальная память в операционной системе
Виртуальная память — это схема распределения памяти, в которой вторичная память может быть адресована, как если бы она была частью основной памяти. Адреса, которые программа может использовать для обращения к памяти, отличаются от адресов, которые система памяти использует для идентификации физических мест хранения, а адреса, сгенерированные программой, автоматически преобразуются в соответствующие машинные адреса.
Размер виртуальной памяти ограничен схемой адресации компьютерной системы, а объем вторичной памяти доступен не по фактическому количеству ячеек основной памяти.
Вниманию читателя! Не прекращайте учиться сейчас. Получите все важные концепции теории CS для собеседований SDE с помощью курса CS Theory Course по приемлемой для студентов цене и будьте готовы к работе в отрасли.
Это метод, который реализуется с использованием как аппаратного, так и программного обеспечения. Он отображает адреса памяти, используемые программой, называемые виртуальными адресами, в физические адреса в памяти компьютера.
- Все ссылки на память в процессе являются логическими адресами, которые динамически преобразуются в физические адреса во время выполнения.Это означает, что процесс можно переключать в основную память и выгружать из нее так, чтобы он занимал разные места в основной памяти в разное время в ходе выполнения.
- Процесс может быть разбит на несколько частей, и эти части не обязательно должны постоянно находиться в основной памяти во время выполнения. Сочетание динамической трансляции адресов во время выполнения и использования таблицы страниц или сегментов позволяет это.
Если эти характеристики присутствуют, то не обязательно, чтобы все страницы или сегменты присутствовали в основной памяти во время выполнения.Это означает, что требуемые страницы необходимо загружать в память всякий раз, когда это необходимо. Виртуальная память реализована с использованием разбивки на страницы по запросу или сегментации по запросу.
Пейджинг по запросу:
Процесс загрузки страницы в память по запросу (всякий раз, когда происходит сбой страницы) известен как пейджинг по запросу.
Процесс включает в себя следующие шаги:
- Если ЦП пытается обратиться к странице, которая в настоящее время недоступна в основной памяти, он генерирует прерывание, указывающее на ошибку доступа к памяти.
- ОС переводит прерванный процесс в состояние блокировки. Для продолжения выполнения ОС должна занести в память нужную страницу.
- ОС будет искать нужную страницу в логическом адресном пространстве.
- Требуемая страница будет перенесена из логического адресного пространства в физическое адресное пространство. Алгоритмы замены страниц используются для принятия решения о замене страницы в физическом адресном пространстве.
- Таблица страниц будет соответственно обновлена.
- Сигнал будет отправлен в CPU, чтобы продолжить выполнение программы, и он вернет процесс в состояние готовности.
Следовательно, всякий раз, когда происходит сбой страницы, операционная система выполняет эти шаги, и требуемая страница переносится в память.
Преимущества:
- В основной памяти может поддерживаться больше процессов: поскольку мы собираемся загружать только некоторые страницы любого конкретного процесса, остается место для большего количества процессов.Это приводит к более эффективному использованию процессора, поскольку более вероятно, что по крайней мере один из более многочисленных процессов будет в состоянии готовности в любой конкретный момент времени.
- Процесс может быть больше, чем вся основная память: снято одно из самых фундаментальных ограничений в программировании. Процесс, размер которого превышает основную память, может быть выполнен из-за разбиения на страницы по запросу. Сама ОС загружает страницы процесса в основную память по мере необходимости.
- Позволяет увеличить уровни мультипрограммирования за счет использования меньшего объема доступной (первичной) памяти для каждого процесса.
Время обслуживания ошибки страницы:
Время, затраченное на обслуживание ошибки страницы, называется временем обслуживания ошибки страницы. Время обслуживания ошибки страницы включает время, затраченное на выполнение всех шести вышеуказанных шагов.
Пусть Время доступа к основной памяти: м Время обслуживания ошибки страницы составляет: с Частота ошибок страницы: p Тогда эффективное время доступа к памяти = (p * s) + (1-p) * m
Swapping:
Замена процесса означает удаление всех его страниц из памяти или их пометку для их удаления. обычным процессом замены страницы.Приостановка процесса гарантирует, что он не будет работать, пока он выгружен. Некоторое время спустя система возвращает процесс из вторичного хранилища в основную память. Когда процесс занят перестановкой страниц, такая ситуация называется перегрузкой.
Обращение:
В любой момент времени только несколько страниц любого процесса находятся в основной памяти, и поэтому в памяти может храниться больше процессов. Кроме того, экономится время, поскольку неиспользуемые страницы не выгружаются и не выгружаются из памяти.Однако ОС должна уметь управлять этой схемой. В установившемся режиме практически вся основная память будет занята страницами процессов, так что процессор и ОС имеют прямой доступ к как можно большему количеству процессов. Таким образом, когда ОС вводит одну страницу, она должна выбросить другую. Если он выбрасывает страницу непосредственно перед тем, как она будет использована, то ему просто нужно будет получить эту страницу снова почти сразу. Слишком много этого приводит к состоянию, называемому взбалтыванием. Система тратит большую часть своего времени на обмен страницами, а не на выполнение инструкций.Так что необходим хороший алгоритм замены страниц.
На данной диаграмме начальная степень мультипрограммирования до некоторой точки (лямбда), загрузка ЦП очень высока, а системные ресурсы используются на 100%. Но если мы еще больше увеличим степень мультипрограммирования, загрузка ЦП резко упадет, и система будет тратить больше времени только на замену страниц, а время, необходимое для завершения выполнения процесса, увеличится. Такая ситуация в системе называется перебоями.
Причины сбоя:
- Высокая степень мультипрограммирования : Если количество процессов в памяти продолжает увеличиваться, то количество кадров, выделенных каждому процессу, будет уменьшено. Таким образом, для каждого процесса будет доступно меньше кадров. Из-за этого сбой страницы будет происходить чаще, и больше процессорного времени будет тратиться на простую замену страниц и обратно, а использование будет продолжать снижаться.
Например:
Let free frames = 400
Case 1 : Number of process = 100
Тогда каждый процесс получит 4 кадра.Случай 2 : Количество процессов = 400
Каждый процесс получит 1 кадр.
Случай 2 — это условие перегрузки, когда количество процессов увеличивается, количество кадров на процесс уменьшается. Следовательно, процессорное время будет расходоваться только на замену страниц. - Отсутствие кадров : Если у процесса меньше кадров, то меньшее количество страниц этого процесса сможет находиться в памяти и, следовательно, потребуется более частая подкачка и выгрузка. Это может привести к взлому.Следовательно, каждому процессу должно быть выделено достаточное количество кадров, чтобы предотвратить перегрузку.
Восстановление перебивки:
- Не позволяйте системе переходить к перебоям, указав долгосрочному планировщику не переносить процессы в память после порогового значения.
- Если система уже перегружена, дайте среднему расписанию команду приостановить некоторые процессы, чтобы мы могли восстановить систему после перегрузки.
Как работает виртуальная память | HowStuffWorks
Виртуальная память является общей частью большинства операционных систем на настольных компьютерах.Он стал настолько распространенным, потому что дает пользователям большие преимущества по очень низкой цене.
Из этой статьи вы узнаете, что такое виртуальная память, для чего ваш компьютер ее использует и как настроить ее на своем компьютере для достижения оптимальной производительности.
Большинство современных компьютеров имеют примерно 32 или 64 мегабайта оперативной памяти, доступной для использования центральным процессором (подробнее об оперативной памяти см. В разделе «Как работает оперативная память»). К сожалению, этого объема оперативной памяти недостаточно для одновременного запуска всех программ, которые большинство пользователей ожидают запустить.
Например, если вы загружаете операционную систему, программу электронной почты, веб-браузер и текстовый процессор одновременно в оперативную память, 32 мегабайта недостаточно, чтобы вместить все это. Если бы не было такой вещи, как виртуальная память, то после того, как вы заполнили доступную оперативную память, ваш компьютер должен был бы сказать: «Извините, вы не можете загружать больше приложений. Закройте другое приложение, чтобы загрузить новое». С виртуальной памятью компьютер может искать в оперативной памяти области, которые в последнее время не использовались, и копировать их на жесткий диск.Это освобождает место в ОЗУ для загрузки нового приложения.
Поскольку это копирование происходит автоматически, вы даже не знаете, что это происходит, и это заставляет ваш компьютер чувствовать, что у него неограниченное пространство ОЗУ, хотя на нем установлено только 32 мегабайта. Поскольку место на жестком диске намного дешевле, чем чипы ОЗУ, оно также дает хороший экономический эффект.
Скорость чтения / записи жесткого диска намного ниже, чем у ОЗУ, а технология жесткого диска не ориентирована на одновременный доступ к небольшим частям данных.Если ваша система слишком сильно полагается на виртуальную память, вы заметите значительное падение производительности. Ключ в том, чтобы иметь достаточно оперативной памяти для одновременной обработки всего, над чем вы обычно работаете — тогда вы «чувствуете» медлительность виртуальной памяти только тогда, когда при смене задач возникает небольшая пауза. В таком случае виртуальная память идеальна.
Когда это не так, операционная система должна постоянно обмениваться информацией между ОЗУ и жестким диском.Это называется перебивкой , и это может сделать ваш компьютер невероятно медленным.
Область жесткого диска, в которой хранится образ RAM, называется файлом подкачки . Он содержит страниц ОЗУ на жестком диске, и операционная система перемещает данные туда и обратно между файлом подкачки и ОЗУ. На компьютере с Windows файлы подкачки имеют расширение .SWP.
Далее мы рассмотрим, как настроить виртуальную память на компьютере.
В вашей системе не хватает виртуальной памяти — Office
- 2 минуты на чтение
- Применимо к:
- Офис 2010, Офис 2007, Офис 2003
В этой статье
Примечание
Office 365 профессиональный плюс переименовывается в Microsoft 365 Apps for enterprise .Дополнительные сведения об этом изменении см. В этом сообщении в блоге.
Симптомы
При запуске любой из программ Microsoft Office 2010, 2007 или 2003 может появиться сообщение об ошибке, подобное следующему сообщению об ошибке:
В вашей системе не хватает виртуальной памяти. Чтобы обеспечить правильную работу Windows, увеличьте размер файла подкачки виртуальной памяти. Для получения дополнительной информации см. Справку.
Если нажать ОК , может появиться следующее сообщение об ошибке:
В вашей системе не хватает виртуальной памяти.Windows увеличивает размер файла подкачки виртуальной памяти. Во время этого процесса запросы памяти для некоторых приложений могут быть отклонены. Для получения дополнительной информации см. Справку.
Причина
Такое поведение наблюдается при попытке запустить любую из программ, входящих в состав Office, на компьютере, на котором значение параметра файла подкачки слишком низкое.
Разрешение
Чтобы решить эту проблему, увеличьте размер файла подкачки. Для этого выполните следующие действия в зависимости от вашей операционной системы.
Примечание. Microsoft Office 2010 и Office 2007 требует Windows XP или более поздней версии.
Windows 2000
Щелкните правой кнопкой мыши Мой компьютер , а затем щелкните Свойства .
В диалоговом окне System Properties щелкните Advanced
Щелкните Параметры производительности .
На панели Виртуальная память щелкните Изменить , чтобы увеличить файл подкачки.
Windows 2000 требует начального значения 126 МБ для отладки.
После изменения настройки щелкните Установить , а затем щелкните ОК .
В диалоговом окне Апплет системной панели управления щелкните OK и появится следующее сообщение:
Внесенные вами изменения требуют перезагрузки компьютера, прежде чем они вступят в силу.
Щелкните OK , чтобы закрыть диалоговое окно Performance Options , а затем щелкните OK , чтобы закрыть диалоговое окно System Properties .
Когда вам будет предложено перезагрузить компьютер, нажмите Да .
Windows XP
- Щелкните Пуск , щелкните правой кнопкой мыши Мой компьютер , а затем щелкните Свойства .
- В диалоговом окне Свойства системы щелкните вкладку Advanced .
- На панели Performance щелкните Settings .
- В диалоговом окне Performance Options щелкните вкладку Advanced .
- На панели Виртуальная память щелкните Изменить .
- Измените значение Исходный размер и Максимальный размер на более высокое значение, щелкните Установить , а затем щелкните ОК .
- Щелкните OK , чтобы закрыть диалоговое окно Performance Options , а затем щелкните OK , чтобы закрыть диалоговое окно System Properties .
Дополнительная информация
С виртуальной памятью компьютер может использовать пространство на жестком диске в качестве оперативной памяти (RAM).Компьютер использует виртуальную память для увеличения обычной оперативной памяти, установленной на компьютере. Если уменьшить размер файла подкачки, программа Office может запуститься некорректно или вообще не запуститься. Это может происходить, даже если на компьютере много оперативной памяти. Дополнительные сведения см. В разделе «Советы по освобождению дискового пространства на вашем компьютере».
Это устранило проблему?
Проверьте, устранена ли проблема. Если проблема устранена, вы закончите работу с этим разделом. Если проблема не устранена, вы можете обратиться в службу поддержки.
Виртуальная память в 32-битной версии Windows — Windows Server
- Читать 8 минут
В этой статье
Применимо к: Windows 7 с пакетом обновления 1, Windows Server 2012 R2
Исходный номер базы знаний: 2160852
Сводка
В этой статье содержится основная информация о реализации виртуальной памяти в 32-разрядных версиях Windows.
В современных операционных системах, таких как Windows, приложения и многие системные процессы всегда обращаются к памяти с помощью адресов виртуальной памяти. Адреса виртуальной памяти автоматически преобразуются аппаратными средствами в реальные адреса (RAM). Только основные части ядра операционной системы обходят эту трансляцию адресов и напрямую используют реальные адреса памяти.
Виртуальная память используется всегда, даже если объем памяти, необходимый для всех запущенных процессов, не превышает объема оперативной памяти, установленной в системе.
Процессы и адресные пространства
Всем процессам (например, исполняемым файлам приложений), которые выполняются в 32-разрядных версиях Windows, назначаются адреса виртуальной памяти (виртуальное адресное пространство ) в диапазоне от 0 до 4294967295 (2 * 32-1 = 4 ГБ), независимо от того, сколько оперативной памяти установлено на компьютере.
В конфигурации Windows по умолчанию 2 гигабайта (ГБ) этого виртуального адресного пространства предназначены для частного использования каждым процессом, а остальные 2 ГБ используются совместно всеми процессами и операционной системой.Обычно приложения (например, Блокнот, Word, Excel и Acrobat Reader) используют только часть 2 ГБ частного адресного пространства. Операционная система назначает страничные фреймы RAM только тем страницам виртуальной памяти, которые используются.
Physical Address Extension (PAE) — это функция 32-битной архитектуры Intel, которая расширяет адрес физической памяти (RAM) до 36 бит. PAE не изменяет размер виртуального адресного пространства (которое остается на уровне 4 ГБ), а только объем реальной оперативной памяти, к которой может обращаться процессор.
Преобразование между 32-битным адресом виртуальной памяти, который используется кодом, выполняемым в процессе, и 36-битным адресом ОЗУ автоматически и прозрачно обрабатывается аппаратным обеспечением компьютера в соответствии с таблицами преобразования , которые поддерживаются операционная система. Любая страница виртуальной памяти (32-битный адрес) может быть связана с любой физической страницей RAM (36-битный адрес).
В следующем списке указано, сколько оперативной памяти поддерживают различные версии и выпуски Windows (по состоянию на май 2010 г.):
Версия Windows | RAM |
---|---|
Windows NT 4.0 | 4 ГБ |
Windows 2000 Professional | 4 ГБ |
Стандартный сервер Windows 2000 | 4 ГБ |
Windows 2000 Advanced Server | 8 ГБ |
Windows 2000 Datacenter Server | 32 ГБ |
Windows XP Professional | 4 ГБ |
Windows Server 2003 Web Edition | 2 ГБ |
Windows Server 2003 Standard Edition | 4 ГБ |
Windows Server 2003 Enterprise Edition | 32 ГБ |
Windows Server 2003 Datacenter Edition | 64 ГБ |
Windows Vista | 4 ГБ |
Windows Server 2008 Standard | 4 ГБ |
Windows Server 2008 Корпоративная | 64 ГБ |
Windows Server 2008 Datacenter | 64 ГБ |
Windows 7 | 4 ГБ |
Файл подкачки
RAM — ограниченный ресурс, тогда как для большинства практических целей виртуальная память не ограничена.Процессов может быть много, и каждый процесс имеет свои собственные 2 ГБ частного виртуального адресного пространства. Когда объем памяти, используемый всеми существующими процессами, превышает доступную оперативную память, операционная система перемещает страницы (части размером 4 КБ) одного или нескольких виртуальных адресных пространств на жесткий диск компьютера. Это освобождает этот фрейм RAM для других целей. В системах Windows эти выгруженных страниц хранятся в одном или нескольких файлах (файлы Pagefile.sys) в корне раздела. В каждом разделе диска может быть один такой файл.Расположение и размер файла подкачки настраиваются в Свойства системы (щелкните Advanced , щелкните Performance , а затем щелкните кнопку Settings ).
Пользователи часто спрашивают , какого размера я должен сделать файл подкачки? На этот вопрос нет однозначного ответа, потому что он зависит от объема установленной оперативной памяти и от того, сколько виртуальной памяти требуется для рабочей нагрузки. Если нет другой доступной информации, типичная рекомендация 1.5-кратный объем установленной оперативной памяти — хорошая отправная точка. В серверных системах обычно требуется достаточное количество оперативной памяти, чтобы никогда не было недостатка и чтобы файл подкачки не использовался. В этих системах поддержка большого файла подкачки может оказаться бесполезной. С другой стороны, если на диске много места, поддержка большого файла подкачки (например, в 1,5 раза превышающего установленную оперативную память) не вызывает проблем, а также избавляет от необходимости беспокоиться о том, насколько большим он должен быть.
Производительность, архитектурные ограничения и ОЗУ
На любой компьютерной системе по мере увеличения нагрузки (количества пользователей, объема работы) производительность снижается, но нелинейно.Любое увеличение нагрузки или спроса сверх определенной точки приводит к значительному снижению производительности. Это означает, что некоторых ресурсов крайне не хватает, и они стали узким местом.
В какой-то момент дефицит ресурса не может быть увеличен. Это означает, что достигнут архитектурный предел . Некоторые часто упоминаемые архитектурные ограничения в Windows включают следующее:
- 2 ГБ общего виртуального адресного пространства для системы (ядра)
- 2 ГБ частного виртуального адресного пространства на процесс (пользовательский режим)
- 660 МБ системного хранилища PTE (Windows Server 2003 и более ранние версии)
- 470 МБ хранилища выгружаемого пула (Windows Server 2003 и более ранние версии)
- 256 МБ хранилища невыгружаемого пула (Windows Server 2003 и более ранние версии)
Это относится конкретно к Windows Server 2003, но может также относиться к Windows XP и Windows 2000.Однако не все Windows Vista, Windows Server 2008 и Windows 7 разделяют эти архитектурные ограничения. Ограничения на память пользователя и ядра (здесь номера 1 и 2) одинаковы, но ресурсы ядра, такие как PTE и различные пулы памяти, являются динамическими. Эта новая функция позволяет использовать как выгружаемую, так и невыгружаемую память. Это также позволяет PTE и пулу сеансов вырасти за пределы, которые обсуждались ранее, до точки, когда все ядро будет исчерпано.
Часто встречающиеся и цитируемые утверждения, например следующие:
При использовании сервера терминалов 2 ГБ общего адресного пространства будут полностью использованы до использования 4 ГБ ОЗУ.
В некоторых случаях это может быть правдой. Однако вы должны контролировать свою систему, чтобы знать, применимы ли они к вашей конкретной системе или нет. В некоторых случаях эти утверждения являются выводами из конкретных сред Windows NT 4.0 или Windows 2000 и не обязательно применимы к Windows Server 2003. В Windows Server 2003 были внесены значительные изменения, чтобы снизить вероятность того, что эти архитектурные ограничения действительно будут достигнуты на практике. . Например, некоторые процессы, которые находились в ядре, были перемещены в процессы, не относящиеся к ядру, для уменьшения объема памяти, используемой в совместно используемом виртуальном адресном пространстве.
Мониторинг использования ОЗУ и виртуальной памяти
Performance Monitor — это основной инструмент для мониторинга производительности системы и определения узких мест. Чтобы запустить монитор производительности, щелкните Пуск , щелкните Панель управления , щелкните Администрирование , а затем дважды щелкните Монитор производительности . Вот краткое описание некоторых важных счетчиков и того, что они вам говорят:
Память, выделенные байты: этот счетчик измеряет потребность в виртуальной памяти.
Показывает, сколько байтов было выделено процессами и для которых операционная система зафиксировала кадр страницы RAM или слот страницы в файле подкачки (или, возможно, и то, и другое). По мере того, как выделенных байтов становится больше, чем доступная ОЗУ, разбиение на страницы будет увеличиваться, и размер используемого файла подкачки также увеличится. В какой-то момент пейджинговая активность начинает существенно влиять на производительность.
Процесс, рабочий набор, _Total: Этот счетчик является мерой виртуальной памяти в активном использовании .
Этот счетчик показывает, сколько ОЗУ требуется, чтобы виртуальная память, используемая для всех процессов, находилась в ОЗУ. Это значение всегда кратно 4096, что является размером страницы, используемым в Windows. Когда потребность в виртуальной памяти превышает доступную RAM, операционная система регулирует, какая часть виртуальной памяти процесса находится в его рабочем наборе, чтобы оптимизировать использование доступной RAM и минимизировать разбиение на страницы.
Файл подкачки,% используемого файла подкачки: Этот счетчик является мерой того, какая часть файла подкачки фактически используется.
Используйте этот счетчик, чтобы определить, имеет ли файл подкачки подходящий размер. Если этот счетчик достигает 100, файл подкачки заполнен и все перестает работать. В зависимости от нестабильности вашей рабочей нагрузки вам, вероятно, понадобится достаточно большой файл подкачки, чтобы он использовался не более чем на 50–075 процентов. Если используется большая часть файла подкачки, наличие нескольких файлов на разных физических дисках может повысить производительность.
Память, страниц / сек: Этот счетчик — одна из самых неправильно понимаемых мер.
Высокое значение этого счетчика не обязательно означает, что узкое место в производительности происходит из-за нехватки оперативной памяти. Операционная система использует систему подкачки для других целей, кроме подкачки страниц из-за чрезмерного использования памяти.
Память, вывод страниц / сек: этот счетчик показывает, сколько страниц виртуальной памяти было записано в файл подкачки, чтобы освободить страничные фреймы RAM для других целей каждую секунду.
Это лучший счетчик для отслеживания, если вы подозреваете, что подкачка является узким местом производительности.Даже если выделенное количество байтов больше установленной ОЗУ, если количество выходных страниц в секунду мало или равно нулю большую часть времени, нет значительных проблем с производительностью из-за недостатка ОЗУ.
Память, кэш-байты, память, невыгружаемые байты пула, память, выгружаемые байты пула, память, общее количество байтов системного кода, память, общее количество байтов системного драйвера:
Сумма этих счетчиков является мерой того, какая часть из 2 ГБ совместно используемой части виртуального адресного пространства размером 4 ГБ фактически используется.Используйте их, чтобы определить, достигает ли ваша система одного из рассмотренных ранее архитектурных ограничений.
Память, доступные МБ: этот счетчик измеряет, сколько оперативной памяти доступно для удовлетворения требований к виртуальной памяти (либо для нового выделения, либо для восстановления страницы из файла подкачки).
Когда ОЗУ не хватает (например, выделенных байтов больше, чем установленного ОЗУ), операционная система будет пытаться сохранить определенную долю установленной ОЗУ доступной для немедленного использования, копируя страницы виртуальной памяти, которые не используются активно, в Файл подкачки.Следовательно, этот счетчик не достигнет нуля и не обязательно является хорошим показателем того, не хватает ли в вашей системе оперативной памяти.
Список литературы
Расширения окна адреса
У вас слишком мало виртуальной памяти? Вот как это исправить!
Ваша установка Windows 10 замедляется со временем? Вы этого не представляете. Поскольку требования к оборудованию для популярных приложений возрастают, ваше устаревшее оборудование страдает.
Часто виноват простой: нехватка памяти. Если у вас недостаточно системной памяти, ваша система будет медленно сканировать, когда вы попытаетесь запустить несколько ресурсоемких программ.
Вот как можно исправить размер виртуальной памяти Windows 10, чтобы эти проблемы исчезли.
Что такое виртуальная память?
В вашем компьютере есть два типа памяти: жесткий диск или твердотельный накопитель и оперативная память.
На жестком диске находится ваша операционная система, а также ваши фотографии, музыка, игры, документы и т. Д. В вашей оперативной памяти хранятся данные, относящиеся к конкретной программе. Это намного быстрее, но также более изменчиво, так как оно действует как рабочая область для хранения программ и файлов, которые вы открываете.
Итак, что такое виртуальная память?
Что ж, если вы используете всю оперативную память, доступную для вашей системы, она будет использовать виртуальную память, также известную как файл подкачки или подкачки, для обеспечения временного расширения.Виртуальная память вашей системы делает это, используя часть памяти жесткого диска для эффективного расширения оперативной памяти. Итак, эта виртуальная память чрезвычайно полезна. Это позволяет вашей системе обрабатывать больше данных для большего количества программ, чем было доступно ранее.
Однако память вашего жесткого диска (и даже более быстрый твердотельный накопитель) намного медленнее, чем ваша сверхбыстрая оперативная память, поэтому ваша производительность может пострадать.
Когда у вас заканчивается память, в игру вступает файл подкачки.Некоторые данные, хранящиеся в ОЗУ, будут перемещены в файл подкачки, предоставляя дополнительное пространство для высокоскоростных функций памяти.
Заканчивается виртуальная память
Если ваша виртуальная память заканчивается, вы увидите следующее сообщение:
В вашей системе мало виртуальной памяти. Windows увеличивает размер файла подкачки виртуальной памяти. Во время этого процесса запросы памяти для некоторых приложений могут быть отклонены.Для получения дополнительной информации см. Справку.
Если вручную увеличить размер файла подкачки, это сообщение будет уменьшено, как и в сообщении об ошибке. Windows устанавливает исходный файл подкачки виртуальной памяти равным объему установленной оперативной памяти. Размер файла подкачки — минимум в 1,5 раза больше и максимум в три раза больше физической памяти.
Вы можете рассчитать размер файла подкачки, используя следующую систему.Например, в системе с 4 ГБ ОЗУ минимум 1024x4x1,5 = 6144 МБ [1 ГБ ОЗУ x Установленное ОЗУ x Минимум]. Принимая во внимание, что максимальное значение составляет 1024x4x3 = 12 288 МБ [1 ГБ ОЗУ x Установленная ОЗУ x Максимум].
Тем не менее, 12 ГБ для файла подкачки огромны. Я бы не рекомендовал использовать верхний предел. Почему? Потому что, как только ваш файл подкачки увеличится до определенного размера, ваша система станет нестабильной. В этом случае файл подкачки является временным исправлением.
Как увеличить виртуальную память
Возникает естественный вопрос: «Сколько виртуальной памяти я должен установить?»
Вот как можно увеличить размер файла подкачки, чтобы избавиться от сообщения об ошибке виртуальной памяти.
- Перейдите в Панель управления > Система и безопасность> Система .
- Выберите Advanced System Settings , чтобы открыть Свойства системы. Теперь откройте вкладку Advanced .
- В разделе Performance выберите Settings . Откройте вкладку Advanced .В Виртуальная память выберите Изменить . Вот ваши варианты виртуальной памяти.
По умолчанию установлено значение . Автоматически управлять размером файла подкачки для всех дисков . Снимите этот флажок, чтобы активировать выделенный в данный момент раздел ниже. Выберите диск, для которого вы хотите изменить размер файла подкачки. Обычно это ваш диск C :.
Теперь выберите Нестандартный размер. Установите Максимальный размер , который вы хотите для файла подкачки, в соответствии с рекомендуемым размером для вашей системы. Помните, что Windows ограничивает размер файла подкачки , в три раза превышающим размера установленной вами оперативной памяти. Это необходимо для обеспечения стабильности системы. Установите Исходный размер на Текущий выделенный размер (см. Ниже).
Щелкните Set , а затем OK .Вы успешно увеличили размер виртуальной памяти вашей системы. +1 знания на день!
Обратите внимание, что Windows не отображает предупреждение об увеличении размера файла подкачки (виртуальной памяти), но системные предупреждения отображаются при его уменьшении. Внезапное уменьшение может вызвать повреждение системы.
Другие способы увеличения виртуальной памяти
Если вы обнаружите, что ваша система по-прежнему работает медленно после настройки размера файла подкачки, вам следует подумать об обновлении оперативной памяти.
Обновление ОЗУ — единственный способ увеличить виртуальную память за счет увеличения общего объема памяти, доступной системе. В этом случае вы уменьшите проблему виртуальной памяти во время процесса и также сможете увеличить скорость работы вашей системы.
Связанный: Какие обновления улучшат производительность вашего ПК больше всего?
Существует бесчисленное количество учебных пособий, как текстовых, так и видео, которые помогут вам в решении этой задачи, и многие из них можно найти специально для вашего устройства.Отличное место для начала определения совместимой оперативной памяти — PC Part Picker.
Каковы лучшие настройки виртуальной памяти?
Я склонен оставить в покое настройки виртуальной памяти. Windows 10 управляет вашей физической памятью и виртуальной памятью вместе с ней. Если вы продолжаете достигать предела памяти для файлов подкачки, вам следует подумать об обновлении оперативной памяти. Это будет иметь огромное значение, особенно для старых систем.
Краткое и грязное руководство по оперативной памяти: что нужно знатьRAM — важный компонент каждого компьютера, но это может сбивать с толку.Вот RAM, объясненный в терминах, которые каждый может понять.
Читать далее
Об авторе Гэвин Филлипс (Опубликовано 977 статей)Гэвин — младший редактор отдела Windows and Technology Explained, постоянный автор Really Useful Podcast и регулярный обозреватель продуктов.У него есть степень бакалавра (с отличием) в области современного письма с использованием методов цифрового искусства, разграбленных на холмах Девона, а также более десяти лет профессионального писательского опыта. Он любит много пить чая, настольные игры и футбол.
Более От Гэвина ФиллипсаПодпишитесь на нашу рассылку новостей
Подпишитесь на нашу рассылку, чтобы получать технические советы, обзоры, бесплатные электронные книги и эксклюзивные предложения!
Нажмите здесь, чтобы подписаться
|
|
Виртуальная память — настройки и предложения
Виртуальная память (также известная как файл подкачки) — это, по сути, блок пространства на жестком диске или твердотельном накопителе, выделенный ОС для работы под ОЗУ, когда в вашей физической ОЗУ не хватает активно работающих программ. Он предоставляет дополнительную «фальшивую» оперативную память, позволяющую программам продолжать работу, но поскольку доступ к жестким дискам и твердотельным накопителям и их производительность намного ниже, чем у реальной оперативной памяти, обычно наблюдается заметная потеря производительности, если в значительной степени полагаться на виртуальную память.
Управлять виртуальной памятью в системе Windows® относительно просто, но в значительной степени в этом нет необходимости. Windows по умолчанию настраивает виртуальную память на лету в зависимости от ваших потребностей и установленной оперативной памяти. Он пытается настроить себя на то, что он ожидает от вас, в зависимости от установленной вами оперативной памяти, и он сам подстроится, если ваше использование резко возрастет. Это может привести к его самонастройке, что в конечном итоге займет много места, если вы в настоящее время используете большой объем ОЗУ (например, система с 8 ГБ ОЗУ часто по умолчанию использует 8 ГБ виртуальной памяти и может вырасти до 16 ГИГАБАЙТ).Некоторые пользователи изменяют настройки виртуальной памяти, чтобы уменьшить пространство, используемое их ОС на жестком диске или твердотельном накопителе, потому что они считают, что у них достаточно оперативной памяти, чтобы им никогда не понадобилась функция виртуальной памяти в их ОС. Пользователи также хотят освободить пространство, которое «тратится впустую», если виртуальная память не используется, особенно это происходит с более дорогостоящим хранилищем на SSD. Однако уменьшение или устранение вашей виртуальной памяти для освобождения места на диске сопряжено с некоторым риском ошибки или нестабильность системы в тех случаях, когда вам нужно больше виртуальной памяти, но вы ограничили то, что ваша система может использовать.
Увеличение этого параметра памяти также обычно не требуется. Экземпляры, в которых большее количество виртуальной памяти влияет на то, работает программа или нет, лучше всего решить с помощью обновления ОЗУ, поскольку скорость ОЗУ значительно превышает производительность виртуальной памяти. Производительность вашей системы будет снижена по сравнению с улучшением специального оборудования, предназначенного для обеспечения этого преимущества.
Ручная настройка этого параметра выполняется на ваш страх и риск, и не следует пытаться это делать, если у вас нет четких рекомендаций относительно того, что вам действительно нужно.Недостаточное выделение пространства для виртуальной памяти может привести к сбоям в работе программ или системы в целом. Кроме того, более старые программы разрабатываются с учетом наличия файла подкачки для их использования, и могут возникнуть сбои в работе отдельных программ, если для них недоступна соответствующая виртуальная память из-за неправильной конфигурации.
Подробные инструкции по этим настройкам в более старых версиях Windows немного отличаются от приведенных ниже инструкций, но по-прежнему будут в основном применимы, поскольку эта функция практически не изменилась со времени Windows XP.
- Войдите в свойства системы с помощью ссылки System в подменю System and Security панели управления или щелкните правой кнопкой мыши Computer в меню «Пуск» и выберите Properties (только для Windows 7 и более ранних версий). ). Это откроет окно, изображенное ниже.
- Нажмите кнопку «Настройки» в категории производительности (выделенная кнопка с меткой 2 на снимке экрана выше). Откроется окно параметров производительности.
- Перейдите на вкладку «Дополнительно» (обведена и помечена 3), затем нажмите кнопку изменить (обведена и помечена 4). Это откроет окно виртуальной памяти (обведено и помечено 5), в котором могут быть сделаны любые настройки.
Если вы отключите «автоматическое управление размером файла подкачки для всех дисков», это окно позволит вам вручную установить размеры или диапазоны размеров, указать, на каком диске будет размещено это пространство, если у вас их больше одного (чтобы освободить место на SSD, переместив файл подкачки на дополнительный жесткий диск) или полностью отключить эту функцию.
Хотя некоторые пользователи отключают автоматическое управление или функции виртуальной памяти в целом, наша официальная рекомендация — оставить их на месте. Если вам удобно уменьшать размер в зависимости от вашего использования, это можно сделать безопасно, но полностью отключить это не обязательно. Даже если вы чувствуете, что у вас достаточно оперативной памяти, чтобы обойтись без этого, это изменение действительно подвергает вас риску плохо оптимизированного программного обеспечения, особенно того, что связано с проблемой утечки памяти, которая увеличивает объем оперативной памяти, вызывая сбои в работе позже.
.