Виртуальная память не позволяет

Обновлено: 02.07.2024

В этой статье содержатся основные сведения о реализации виртуальной памяти в 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 превышает установленный объем оперативной памяти), операционная система будет пытаться сохранить определенную часть установленной оперативной памяти доступной для немедленного использования путем копирования виртуальных страниц памяти, которые не используются на странице. Таким образом, этот счетчик не достигнет нуля и не обязательно является хорошим показателем того, не хватает ли вашей системе оперативной памяти.

Виртуальная память - что это?

Виртуальная память является подкачкой (дополнением) оперативной памяти. Она присутствует практически во всех операционных системах.

При запуске ресурсоемких программ у нас постоянно возникает потребность в виртуальной памяти. По этому сегодня мы рассмотрим подробный обзор «что это такое?» и как мы можем ее изменить в лучшую сторону.

Что такое виртуальная память?

Виртуальная память (Virtual Memory, ВП) — это метод управления памятью компьютера, использующий для работы файл подкачки (swap file). При недостатке существующего объема ОЗУ, позволяет запускать на ПК более ресурсозатратные программы. В таком случае данные приложения автоматически перемещаются между основной памятью и вторичным хранилищем.

Виртуальная память так же обладает рядом достоинств:

  • Работает полностью в автоматическом режиме и не требует от пользователя постоянного управления основным пространством.
  • Значительно повышает безопасность использования программного обеспечения (снижает вероятность вылетов, критического завершения работы, потери данных).
  • Позволяет запускать и использовать на ПК больше памяти, чем это доступно физически.

За счет ее использования компьютер способен изолировать запущенные процессы друг от друга и рационально распределять RAM.

Она расходуется только для хранения активно используемых областей. Виртуальная память может включать важные для пользователя пароли, логины и другую информацию. Эта возможность используется сотрудниками спецслужб и хакерами для получения доступа к остальным компонентам компьютера. Сделать это можно как аппаратно, так и системно.

Как узнать объем файла подкачки (swap file)

Файл подкачки хранится на винчестере компьютера. Если для работы устройства используется несколько жестких дисков, то он будет расположен на самом быстром из них. Определить объем ВП можно с использованием стандартных средств Windows или специального софта.

Системный монитор

Размер свапа подкачки можно узнать через штатную утилиту «Системный монитор».

Для этого:

  • Откройте меню «Пуск» и начните вводить название приложения для мониторинга.
  • Появится новое окно. Здесь вы найдете основную информации о свапе, пиковые значения подсчета обмена страниц, процент использования системой и размер.

При определении размера ВП система исходит не из объема ОЗУ, а из задач, которые выполняются на устройстве. Поэтому для определения размера необходимо запустить приложения и компоненты, которые обычно используются компьютером и посмотреть пиковое значение свапинга в течение этого сеанса. Он и будет определять величину файла подкачки.

Узнать объем ВП и другие параметры системы можно используя специальную утилиту Vmmap.exe. Она доступна для бесплатной загрузки на официальном сайте Microsoft и не требует установки. Поставляется в виде исполняемого файла, полностью на английском языке.

Dump File и его типы

Swap используется не только для расширения физической памяти, но и для создания аварийных дампов при возникновении «внештатных» аварийных ситуаций.

Как это работает:

  • Во время первоначального запуска системы, Windows создает и сохраняет на жестком диске специальную карту секторов, которые занимает на HDD свап.
  • Если происходит сбой, то операционная система изучает созданную карту на наличие неисправностей. В идеале она должна быть целостной. Если это так, то данные переписываются на винчестер и в свап по созданной карте секторов.
  • При следующем перезапуске компьютера SMSS анализирует ВП и проверяет его на наличие дампов, если он есть, то данные копируются из файла подкачки в специальный dump file. Дополнительно обновляется системный журнал. Поэтому открыв его можно узнать, была ли проведена эта операция.

Таким образом при автоматическом выборе размера свапа, Windows руководствуется настройками для создания аварийного дампа.

Загрузка и восстановление

Загрузка и восстановление

Дампы можно разделить на 4 типа:

В него записывается все содержимое RAM на момент незапланированного завершения работы. С учетом этой информации файл подкачки должен иметь размер равный физической памяти компьютера +1 МБ (используется для создания записи в системном журнале).

Выбирается системой автоматически только в том случае, если общий объем физической памяти 4 ГБ и менее.

В него записывается только информация и память, выделенная для ядра операционной системы. Он занимает сравнительно меньше места и его объема достаточно, чтобы Windows могла определить причины аварийного завершения работы.

Выбирается по умолчанию, если размер RAM превышает 4 ГБ. При выборе дампа памяти ядра важно следить, чтобы минимальный размер для файла подкачки составлял хотя бы ⅓ от общего объема физической.

Записывает только самую необходимую информацию для выявления причин аварийного сбоя. Здесь находится стоп-код и описание самой ошибки, дополнительно указываются загруженные на устройство драйвера и перечень запущенных процессов.

Необходимый размер файла подкачки для него —не менее 2 Мб.

Доступен только для операционных систем семейства Windows начиная от восьмерки и выше, либо Server 2012. Представляет собой аналог дампа ядра, но с тем отличием, что система может постоянно менять размер файла подкачки, позволяя ей выбирать оптимальный для работы вариант.

Размер свапа будет напрямую зависит от объема RAM и выбранного типа дампа. Дополнительно стоит учитывать и версию операционной системы. Это касается серверных и обычных сборок.

Как изменить Dump File

Перед тем, как менять размер виртуальной памяти, необходимо правильно определить и выбрать тип дампа. Сделать это можно используя штатные инструменты Windows. Для этого выполните следующие действия:

  • Правой кнопкой мыши кликните по значку «Мой компьютер» и выберите меню «Свойства» . Найдите пункт «Дополнительные параметры» . Откроются свойства системы.

Система

  • Попасть в них можно и другим способом. Откройте диалоговое меню: «Выполнить» и в нем наберите:
  • На вкладке «Дополнительно» найдите категорию, которая посвящена загрузке и восстановлению системы. После чего нажмите на кнопку «Параметры» .
  • В блоке «Отказ системы» найдите графу запись отладочной информации и выберите подходящий тип дампа. Для Windows 10 по умолчанию используется Автоматический.

Загрузка и восстановление

Загрузка и восстановление

  • По желанию дамп можно отключить. Для этого в выпадающем списке выберите «Нет» . После этого система не будет делать резервные копии.
Учтите, что это может привести к безвозвратной потери важных данных.

Нажмите «Ок» , как только внесете все необходимые изменения, чтобы они вступили в силу. Как только тип дампа будет выбран, можно приступать к изменению объема виртуальной памяти.

Как изменить объем виртуальной памяти через быстродействие

Запустите системную утилиту «Выполнить» одновременным нажатием клавиш Windows+R или откройте ее через Пуск. После этого:

и нажмите «Ок» .

  • Перейдите на вкладку «Дополнительно» и найдите здесь категорию «Быстродействие» .

Свойства системы

  • Кликните по серой кнопке «Параметры» . Откроется новое окно. Здесь перейдите на вкладку «Дополнительно» .
  • В нижней части экрана будет указан объем виртуальной памяти. Нажмите «Изменить» , чтобы ввести другой параметр и увеличить, либо уменьшить размер файла подкачки.

Параметры быстродействия

По умолчанию система определяет размер полностью в автоматическом режиме. Это наиболее оптимальная опция для Windows. При изменении объема свапа вручную важно, чтобы новый размер виртуальной памяти был не менее существующего, в противном случае возможны сбои в работе ПК.

После увеличение размера свапа перезагрузка не требуется. Если же он был наоборот уменьшен, то устройство необходимо обязательно перезапустить.

Как добавить виртуальную память на Windows

Как правило, среднестатистическому пользователю достаточно того объема ВП, которая выделяется устройством автоматически. Если на ПК мало физической RAM, то увеличить ее объем можно за счет свапа.

Для этого:

  • Правой кнопкой мыши кликните по значку «Мой компьютер» и в выпадающем списке выберите графу «Свойства» .
  • Откроется окно для работы с параметрами. В левой части экрана найдите надпись «Дополнительный параметры системы» .
Для этого необходимы права администратора. При появлении запроса на ввод пароля, укажите его, после чего продолжите изменение параметров.
  • Здесь найдите «Быстродействие» и через меню «Параметры» откройте дополнительные свойства. На отразившейся вкладке выберите «Изменить» напротив «Виртуальная память» .
  • Уберите галочку напротив графы «Автоматически выбирать объем файла подкачки» . После этого станут доступны остальные пункты.

Параметры быстродействия

  • Выберите диск, на котором много свободного места и чьи ресурсы будут использоваться для создания файла подкачки.
  • Отметьте пункт «Указать размер» , после чего добавьте значение в пустое поле. При этом число в поле «Максимальный» должно быть в 1,5 раза, чем в поле «Исходный» .

Как только закончите работу, подтвердите действия нажатием кнопки «Ок» . Все изменения автоматически вступят в силу.

В некоторых случаях увеличение Virtual Memory помогает повысить скорость работы ПК, увеличить общее быстродействие.

Рекомендации по использованию виртуальной памяти

VMMAP - Sysinternals

Если вы не знаете, какой оптимальный объем для свапа выбрать и на что это будет влиять, то далее мы предлагаем ознакомиться вам с небольшими советами, которые помогут увеличить быстродействие ПК.

Итак, рассмотрим ряд советов:

  • Если на устройстве используется несколько HDD или SSD, то для свапа указывайте тот диск, который не являетсясистемным. Здесь не должна быть установлена операционная система. В итоге это значительно повысит общую скорость работы.
  • Создавать можно несколько файлов подкачки. Если вы используете дамп, то хотя бы один свап должен находиться на системном диске. Для всех остальных случаев делать это не обязательно.
  • Если у вас несколько винчестеров с разными физическими параметрами, то выбирать следует тот, который отличается лучшими показателями скорости работы. Узнать это можно из технических характеристик HDD.
  • Если жесткий диск разбит на несколько разделов, то для файла подкачки следует выбирать тот, который является основным (первым). К этому участку есть мгновенный доступ, что серьезно влияет на скорость работы.
  • Не бойтесь указать слишком большой размер для файла подкачки. Если физический размер HDD позволяет это сделать, то выделите ВП от 4 объемов от существующей RAM. Слишком низкий показатель может привести к появлению ошибок, критическому завершению работы некоторых приложений (с потерей данных).
  • Старайтесь ограничивать минимальный объем swap файла. Это позволит избежать его постоянной фрагментации. Если вы используете компьютер для работы с ресурсозатратным ПО или он работает в качестве сервера для хранения баз данных, то размер файла подкачки должен составлять 2-3 полных объема ОЗУ. Во всех остальных случаях он должен быть равен RAM или быть больше в 1,5 раза.

После манипуляций с настройками компьютера и изменением размера ВП лучше перезагрузить компьютер (хотя это не всегда обязательно) и запустить специальную утилиту для дефрагментации. Это поможет переместить его ближе к началу раздела, чтобы система получала к нему моментальный доступ.

Так же подробно про ВП можно посмотреть в видеоролике ниже:

Виртуальная память или файл подкачки

В видео рассматривается оптимальный размер файла подкачки

Сегодня мы ответили на вопрос «Виртуальная память, что это? И для чего она нужна?». Она помогает значительно повысить быстродействие системы и используется для хранения информации при сбоях. По умолчанию объем файла подкачки регулируется Windows полностью в автоматическом режиме.

Если пользователь хочет указать его самостоятельно, то для этого необходимо учесть выбранный тип дампа (либо отключить его). Объем виртуальной памяти зависит от дампа и общего объема RAM.

Понравилась статья? Подпишитесь на канал, чтобы быть в курсе самых интересных материалов

Идея написать статью о "виртуальной" памяти и её отличии от "оперативной" родилась после чтения многочисленных постов в интернете. Сложно поверить, но живут люди до сих пор уверенные что ОЗУ это и есть виртуальная. Тут тока можно "хлопнуть себя по лбу" и начать рассказывать что делает каждая память, чем отличается, какая быстрее и как расширить место под виртуальную память.

Поверьте на слово: уж какой,какой, а оперативной памяти много не бывает. При "тугом кошельке" люди устанавливают по 32 гигабайта, 64 гигабайта ОЗУ. Но этого мало. Потребуется временное хранилище куда будет записываться избыток информации которая не поместилась в "оперативную". То есть например на компьютере установленно 4 Гб "оперативки". Запускаем игру поглощающую 8Гб ОЗУ. Тогда 4 Гб. Возьмет на себя оперативная память и 4 Гб. Уйдёт на виртуальную память(Замечали наверное как резко пропадает свободное место при запуске тяжёлой программы). Таким образом получается файл подкачки который не поместился в планки памяти. Сам файл скрытый поэтому разглядеть его получится только после манипуляции со скрытыми файлами. Виртуальная память медлительная. Но избежать появления виртуальной памяти не получится, даже при объёме в 128 Гигабайт ОЗУ, при запуске блокнота, пасьянса паука и музыки на машине в 16 Гб появится файл подкачки. Объяснить по чему так довольно сложно и честно говоря если знаете как это объяснить проще то напишите в комментариях. Совсем дотошным рекомендую разобраться с процессами на компьютере и их адресными пространствами.

Итак, мы остановились на файле подкачки созданном из излишка оперативной памяти. Каждому процессу выделено определенное количество памяти. Всё остальное не укладывающееся в рамки оперативки превращается в файл "Pagefile.sys". Размер этого файла выбирается автоматически, но можно установить и в ручную. Теперь минутка истории, в 1950 году столкнулись с проблемой: программы выходили за объём ОЗУ. И не удивляйтесь да в 1950 году был компьютер(кому интересно читайте статью на канале: ", как появился компьютер"). Так вот уже тогда озадачились тем как увеличить оперативную память да так что бы это было легко и понятно. Разделение памяти на блоки и потом поэтапное взаимодействие с каждым в отдельности легло в основу виртуальной памяти. Появившееся в 1956 году.

Теперь поговорим про оперативную память(память с произвольным доступом). Смешно конечно рассказывать про то что и так известно, но повторение как известно мать и тд. Планка оперативной памяти хранит информацию только пока на нее подается электричество. При переходе компьютера в режим сна содержимое переносится в файл hiberfil.sys. В ОЗУ хранится информация о запущенных программах. В отличие от кэша памяти (от скрытой памяти) Озу основывается на модулях динамической памяти. Поэтому проигрывает в скорости статической памяти кэш.

Думаю полученных знаний достаточно что бы понять что виртуальная память далеко не похожа на оперативную. И что запись в виртуальную память происходит по схеме адресации памяти. Кстати сделана такая схема для удобства не пользователей, а программистов. Но это рассмотрим в другой статье.

Давайте в конце определимся с размером("оптимальным") для файла виртуальной памяти. Некоторые "специалисты" рекомендуют вообще отключать этот файл. Тут сложно поспорить так как эта память медленная и большой объем может существенно замедлять систему. Но все же отключать её не стоит. Каждый "специалист" имеет свою точку зрения на этот счет и если кто-то знает точную формулу вычисления то напишите в комментариях. Тут лишь обозначим что на первом месте рекомендуется оставить автоматическое значение, а на втором придерживаться такой прогрессии: 4Гб. ОЗУ. = 3Гб. Подкачки. 8Гб. ОЗУ. = 2Гб. Подкачки. И тд. Повторюсь что отключать не рекомендую. Не то возможно выпадение синего экрана или некоторые программы перестанут запускаться.

Мы поговорили о видах памяти и узнали что быстрее. Даже вычислили сколько надо выставить что бы стало оптимально. Теперь узнаем как увеличить файл подкачки. Открываем свойства компьютера и переходим в дополнительно. Там находим Быстродействие и жмём параметры.Теперь дополнительно.Изменить. Значения верхние и нижние делаем одинаковые. Окей и перезагрузка.

Если есть желание что дополнить, то комментарии открыты. Обязательно жду лайк. От поднятого пальца вверх поднимается настроение, и появляется вдохновение. Подписывайтесь если вдруг забыли. И до свидания.

В этой и следующей лекциях речь пойдет о наиболее распространенной в настоящее время схеме управления памятью, известной как виртуальная память , в рамках которой осуществляется сложная связь между аппаратным и программным обеспечением. В начале будут рассмотрены аппаратные аспекты виртуальной памяти , а затем вопросы, возникающие при ее программной реализации.

Понятие виртуальной памяти

Разработчикам программного обеспечения часто приходится решать проблему размещения в памяти больших программ, размер которых превышает объем доступной оперативной памяти. Один из вариантов решения данной проблемы – организация структур с перекрытием – рассмотрен в предыдущей лекции. При этом предполагалось активное участие программиста в процессе формирования перекрывающихся частей программы. Развитие архитектуры компьютеров и расширение возможностей операционной системы по управлению памятью позволило переложить решение этой задачи на компьютер . Одним из главных достижений стало появление виртуальной памяти ( virtual memory ). Впервые она была реализована в 1959 г. на компьютере "Атлас", разработанном в Манчестерском университете.

Суть концепции виртуальной памяти заключается в следующем. Информация, с которой работает активный процесс, должна располагаться в оперативной памяти. В схемах виртуальной памяти у процесса создается иллюзия того, что вся необходимая ему информация имеется в основной памяти. Для этого, во-первых, занимаемая процессом память разбивается на несколько частей, например страниц. Во-вторых, логический адрес (логическая страница), к которому обращается процесс, динамически транслируется в физический адрес (физическую страницу). И, наконец, в тех случаях, когда страница, к которой обращается процесс, не находится в физической памяти, нужно организовать ее подкачку с диска. Для контроля наличия страницы в памяти вводится специальный бит присутствия , входящий в состав атрибутов страницы в таблице страниц .

Таким образом, в наличии всех компонентов процесса в основной памяти необходимости нет. Важным следствием такой организации является то, что размер памяти, занимаемой процессом, может быть больше, чем размер оперативной памяти. Принцип локальности обеспечивает этой схеме нужную эффективность.

Возможность выполнения программы, находящейся в памяти лишь частично, имеет ряд вполне очевидных преимуществ.

  • Программа не ограничена объемом физической памяти. Упрощается разработка программ, поскольку можно задействовать большие виртуальные пространства, не заботясь о размере используемой памяти.
  • Поскольку появляется возможность частичного помещения программы (процесса) в память и гибкого перераспределения памяти между программами, можно разместить в памяти больше программ, что увеличивает загрузку процессора и пропускную способность системы.
  • Объем ввода-вывода для выгрузки части программы на диск может быть меньше, чем в варианте классического свопинга, в итоге каждая программа будет работать быстрее.

Таким образом, возможность обеспечения (при поддержке операционной системы) для программы "видимости" практически неограниченной (характерный размер для 32-разрядных архитектур 2 32 = 4 Гбайт) адресуемой пользовательской памяти (логическое адресное пространство ) при наличии основной памяти существенно меньших размеров (физическое адресное пространство ) – очень важный аспект.

Но введение виртуальной памяти позволяет решать другую, не менее важную задачу – обеспечение контроля доступа к отдельным сегментам памяти и, в частности, защиту пользовательских программ друг от друга и защиту ОС от пользовательских программ. Каждый процесс работает со своими виртуальными адресами , трансляцию которых в физические выполняет аппаратура компьютера. Таким образом, пользовательский процесс лишен возможности напрямую обратиться к страницам основной памяти, занятым информацией, относящейся к другим процессам.

Например, 16-разрядный компьютер PDP-11/70 с 64 Кбайт логической памяти мог иметь до 2 Мбайт оперативной памяти. Операционная система этого компьютера тем не менее поддерживала виртуальную память , которая обеспечивала защиту и перераспределение основной памяти между пользовательскими процессами.

Напомним, что в системах с виртуальной памятью те адреса, которые генерирует программа (логические адреса), называются виртуальными, и они формируют виртуальное адресное пространство . Термин " виртуальная память " означает, что программист имеет дело с памятью, отличной от реальной, размер которой потенциально больше, чем размер оперативной памяти.

Хотя известны и чисто программные реализации виртуальной памяти , это направление получило наиболее широкое развитие после соответствующей аппаратной поддержки.

Следует отметить, что оборудование компьютера принимает участие в трансляции адреса практически во всех схемах управления памятью. Но в случае виртуальной памяти это становится более сложным вследствие разрывности отображения и многомерности логического адресного пространства. Может быть, наиболее существенным вкладом аппаратуры в реализацию описываемой схемы является автоматическая генерация исключительных ситуаций при отсутствии в памяти нужных страниц ( page fault ).

Любая из трех ранее рассмотренных схем управления памятью – страничной , сегментной и сегментно-страничной – пригодна для организации виртуальной памяти . Чаще всего используется cегментно- страничная модель , которая является синтезом страничной модели и идеи сегментации. Причем для тех архитектур, в которых сегменты не поддерживаются аппаратно, их реализация – задача архитектурно-независимого компонента менеджера памяти.

Читайте также: