Назад | Перейти на главную страницу

Как проверить использование опции загрузки userva на сервере Win 2K3

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

Я изменил boot.ini файл на одном из этих серверов, чтобы включить /userva=2560, на полпути между нормальным режимом работы и /3GB вариант. Обычно для достижения точки отказа требуются недели, но я хотел бы сразу посмотреть, действительно ли это имело какой-либо эффект.

Насколько я понимаю, эта опция ограничивает ядро ​​оставшимся адресным пространством (1536 МБ вместо 2048), но не обязательно предоставить приложению дополнительное адресное пространство в зависимости от флагов в заголовке PE приложения.

Как я могу определить, разрешает ли операционная система конкретному приложению, работающему в производственной среде, получать доступ к адресному пространству размером более 2 ГБ? Кроме того, как лучше всего контролировать систему, чтобы гарантировать, что ядро ​​не испытывает недостатка в адресном пространстве, и в целом, как мне найти оптимальное значение для этого параметра?

Две вещи, во-первых, вам все еще нужен /3GB флаг по данным КБ.

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

Память ядра (выгружаемая / невыгружаемая / кеш) - вы можете просмотреть это с помощью отладчика Windows. Файл> Отладка ядра> вкладка Локальные. "! vm" показывает память ядра. Важными значениями являются использование пула и максимум:

Использование NonPagedPool: 10300 (41200 КБ)
NonPagedPool Макс: 65281 (261124 КБ)
Использование PagedPool: 14531 (58124 КБ)
Максимум PagedPool: 134144 (536576 КБ)

Вы также можете проверить заголовок PE-образа программы с помощью PE Explorer. Поле «Характеристики» определяет, может ли программа получить доступ к памяти размером более 2 ГБ. Если он не установлен, / 3GB будет пустой тратой.

PE Explorer
http://www.pe-explorer.com/