У меня Windows 2003 Server работает немного медленно, где плата за коммит и использование файла подкачки увеличивались до тех пор, пока я в итоге не перезагрузился. Чтобы это исправить, мне нужно выяснить, что потребляет всю память, и в этом заключается большая загадка.
Текущая статистика из диспетчера задач:
Physical Memory (K): 2096400
Commit Charge (K): 5364848
Page file usage: 5.11 GB
Хорошо, так что давайте откроем SysInternals Process Explorer и проверим размер рабочего набора всего запущенного. Крупнейшим виновником является экземпляр Tomcat, использующий 121 980 КБ WS, 481 284 КБ ВМ. Ничто в этом не приближается к объяснению комиссии за фиксацию в 5 ГБ.
Следующий шаг: SysInternals pslist :, pslist -m
разделите выходные данные по столбцам и вычислите суммы столбцов для 61 процесса, о которых сообщается.
SUM (Working Set) : 681,484 K
SUM (Private Bytes): 593,424 K
Я в корне неправильно понимаю, о чем сообщают инструменты? У меня всегда было впечатление, что операционная система на самом деле выделяет гораздо меньше памяти, чем полный объем виртуальной памяти, отображаемой процессом, при условии, что она фактически никогда не будет использовать так много, и что взгляд на виртуальную машину здесь красная сельдь