Alter.Org.UA
 << Back Home EN en   Donate Donate

CacheSet utility
by Mark Russinovich

(updated)

CacheSet_v1d.rar/tgz (18.9 Kb/19.8 Kb)

Старая добрая утилита для управления системным кешем для NT-семейства. В w2k появилась дополнительная информация о кеше. Собственно ее отображение и было добавлено.

Исходники:

CacheSet_v1d_src.rar/tgz (7.6 Kb/7.7 Kb)

Подробности

Раньше (до NT4 включительно) функция NtQuerySystemInformation() по запросу

#define SYSTEMCACHEINFORMATION 0x15

заполняла структуру следующего формата:

typedef struct {
	ULONG    	CurrentSize;
	ULONG    	PeakSize;
	ULONG    	PageFaultCount;
	ULONG    	MinimumWorkingSet;
	ULONG    	MaximumWorkingSet;
	ULONG    	Unused[4];
} SYSTEM_CACHE_INFORMATION, *PSYSTEM_CACHE_INFORMATION;

В w2k было изменено значение некоторых полей (конечно же недокументировано). Изменение было опубликовано только в XP DDK.

typedef struct {
	ULONG    	CurrentSize;
	ULONG    	PeakSize;
	ULONG    	PageFaultCount;
	ULONG    	MinimumWorkingSet;
	ULONG    	MaximumWorkingSet;
	ULONG    	TransitionSharedPages;
	ULONG    	PeakTransitionSharedPages;
	ULONG    	Unused[2];
} SYSTEM_CACHE_INFORMATION, *PSYSTEM_CACHE_INFORMATION;

Вместе с этим изменилось назначение параметра System Cache в Task Manager. Раньшн это был объем файлового кеша (CurrentSize и PeakSize). В w2k стала отображаться сумма файлового кеша и объема памяти, занимаемой загруженными dll'ами процессов. Примечательно то, что после завершения процесса эта память автоматически не освобождается довольно длительное время. Это выражается в постоянно растущем объеме System Cache, а при shutdown'е - в виде страшных тормозов даже при использовании Fast Reboot.


2004.03.30



Автор: Alter (Александр А. Телятников) Сервер: Apache+PHP под FBSD © 2002-2024