Код статьи: 929605 - Последнее изменение :: 28 ноября 2007 г. - Редакция: 1.1 В диалоговом окне "Сведения о системе" в Windows Vista показывается объем системной памяти меньше ожидаемого, если на компьютере установлено 4 ГБ ОЗУНа этой страницеПроблемаЕсли на компьютере установлено 4 гигабайта (ГБ) оперативной памяти (ОЗУ), то в диалоговом окне Сведения о системе операционной системы Windows Vista показывается меньший объем ОЗУ. Например, в диалоговом окне Сведения о системе показывается 3120 мегабайт (МБ) системной памяти, в то время как на компьютере установлено 4 ГБ (4096 МБ) памяти.
Примечание. Чтобы открыть диалоговое окно Сведения о системе, выполните указанные ниже действия.
Причина Такое поведение является закономерным результатом влияния определенных аппаратных и программных факторов.
Различным устройствам типичного компьютера требуется доступ через отображаемую память. Этот механизм называется MMIO. Чтобы пространство MMIO было доступно 32-разрядным операционным системам, оно должно располагаться в первых 4 ГБ адресного пространства. Например, при наличии видеоадаптера с 256 МБ собственной памяти эта память должна отображаться в первые 4 ГБ адресного пространства. Если на компьютере уже установлено 4 ГБ системной памяти, часть адресного пространства должна быть зарезервирована для отображения памяти видеоадаптера. Для отображения памяти видеоадаптера используется часть системной памяти. В результате общий объем системной памяти, доступной операционной системе, сокращается. То, насколько сократится объем доступной системной памяти, зависит от установленных на компьютере устройств. Однако для того чтобы избежать потенциальных проблем с совместимостью драйверов, в 32-разрядных версиях системы Windows Vista общий объем доступной памяти ограничен 3,12 ГБ. Сведения о возможных проблемах с совместимостью драйверов см. в разделе "Дополнительные сведения" данной статьи. Если на компьютере установлено много устройств, объем доступной памяти может составить 3 ГБ или меньше. Однако максимально возможный объем доступной памяти в 32-разрядных версиях Windows Vista обычно составляет 3,12 ГБ. Временное решениеЧтобы системе Windows Vista были доступны все 4 ГБ памяти, установленные на компьютере, компьютер должен удовлетворять указанным ниже требованиям.
Примечание. Если объем физически установленной на компьютере оперативной памяти равен объему адресного пространства, поддерживаемому набором микросхем, общий объем системной памяти, доступной операционной системе, будет всегда меньше объема физической памяти. Предположим, например, что в компьютере используется набор микросхем Intel 975X, поддерживающий 8 ГБ адресного пространства. Если установить 8 ГБ ОЗУ, объем системной памяти, доступной операционной системе, сократится из-за памяти, необходимой для конфигурации шины PCI. В данном случае, для конфигурации шины PCI потребуется примерно от 200 МБ до 1 ГБ памяти, и именно на эту величину сократится объем памяти, доступной операционной системе. Реальный объем доступной памяти зависит от конфигурации. Дополнительная информацияПроблемы с совместимостью драйверов, связанные с режимом расширения физических адресовПричиной проблем с совместимостью драйверов, связанных с технологией предотвращения выполнения данных обычно является несовместимость с режимом расширения физических адресов.Примечание. Режим расширения физических адресов необходимо использовать только на компьютерах с процессорами, на аппаратном уровне поддерживающими технологию предотвращения выполнения данных. Технология предотвращения выполнения данных может стать причиной проблем с совместимостью для любых драйверов, создающих код или использующих технологии создания исполняемого кода в режиме реального времени. Многие драйверы, с которыми возникали подобные проблемы, были исправлены. Поскольку технология предотвращения выполнения данных всегда включена для драйверов, работающих в 64-разрядных версиях Windows, с этими драйверами часто возникают проблемы совместимости. Однако нет никакой гарантии, что все драйверы были обновлены для устранения проблем с совместимостью с режимом расширения физических адресов. Впрочем, число драйверов, использующих эти технологии, невелико. Технология предотвращения выполнения данных сама по себе обычно не приводит к проблемам с совместимостью драйверов. Проблемы с совместимостью драйверов возникают в основном при использовании режима расширения физических адресов на 32-разрядных компьютерах. Режим расширения физических адресов позволяет процессору использовать более 4 ГБ памяти. Основное различие между схемами подкачки памяти в режиме расширения физических адресов и в обычном режиме заключается в дополнительном уровне подкачки, необходимом в режиме расширения физических адресов. В режиме расширения физических адресов используется три уровня подкачки вместо двух. Некоторые драйверы могут не загружаться при включенном режиме расширения физических адресов, поскольку устройство может не поддерживать 64-разрядную адресацию. Кроме того, при написании драйвера могло быть сделано предположение о том, что для режима расширения физических адресов требуется более 4 ГБ памяти. Подобные драйверы пишутся с расчетом на то, что в режиме расширения физических адресов всегда будут использоваться 64-разрядные адреса, поэтому драйвер или устройство не смогут правильно интерпретировать адрес. Другие драйверы загружаются в режиме расширения физических адресов, но нарушают стабильность системы, пытаясь напрямую изменять записи в системной таблице элементов страниц (PTE). В режиме расширения физических адресов такие драйверы вместо ожидаемых 32-разрядных записей получают 64-разрядные записи таблицы страниц. Наиболее распространенные сложности при использовании драйверов в режиме расширения физических адресов связаны с прямым доступом к памяти (DMA) и выделением регистров отображения. Многие устройства, которые поддерживают прямой доступ к памяти (как правило, 32-разрядные адаптеры), не могут выполнять 64-разрядную адресацию памяти. Если устройство запущено в 32-разрядном режиме, ему доступен весь диапазон физических адресов. В режиме расширения физических адресов данные могут располагаться по адресам за пределами диапазона 4 ГБ. Для обеспечения такой работы устройств с этими ограничениями в операционной системе Microsoft Windows 2000 Server и более поздних версиях Windows используется система двойной буферизации транзакций DMA. Операционная система Windows 2000 Server и более поздние версии Windows осуществляют это с помощью предоставления 32-разрядного адреса, указанного в регистре отображения. Это позволяет устройству осуществлять прямой доступ к памяти по 32-разрядному адресу. Ядро копирует память по 64-разрядному адресу, предоставленному драйверу. Если режим расширения физических адресов отключен, драйверы для 32-разрядных устройств не требуют выделения системной памяти в их регистры отображения. Это означает, что двойная буферизация не нужна, поскольку все устройства и драйверы располагаются в 32-разрядном диапазоне адресов. Тестирование драйверов для 32-разрядных устройств на компьютерах с 64-разрядными процессорами показало, что протестированные клиентами драйверы, использующие прямой доступ к памяти, обычно рассчитаны на неограниченное количество регистров отображения. В этой статье упомянуты продукты независимых производителей. Корпорация Майкрософт не дает никаких подразумеваемых и прочих гарантий относительно работы или надежности этих продуктов. Информация в данной статье относится к следующим продуктам.
| Переводы статьи
|
Перейти к началу страницы
