added display of standby repurposed pages

git-svn-id: svn://svn.code.sf.net/p/processhacker/code@3992 21ef857c-d57f-4fe0-8362-d861dc6d29cd
This commit is contained in:
wj32
2011-01-10 00:31:30 +00:00
parent 4eb9adea1e
commit dd52ea21b5
7 changed files with 78 additions and 32 deletions
+2 -1
View File
@@ -2,7 +2,8 @@ Process Hacker
2.11
* NEW/IMPROVED:
* Added WS Watch to ExtendedTools plugin
* Added WS Watch and other features to ExtendedTools
plugin
2.10
* NEW/IMPROVED:
+9 -8
View File
@@ -998,13 +998,14 @@ typedef struct _SYSTEM_THREAD_INFORMATION
typedef struct _TEB *PTEB;
// private
typedef struct _SYSTEM_EXTENDED_THREAD_INFORMATION
{
SYSTEM_THREAD_INFORMATION ThreadInfo;
PVOID StackBase;
PVOID StackLimit;
PVOID Win32StartAddress;
PTEB TebBaseAddress; /* Windows 7 and above */
PTEB TebBase;
ULONG_PTR Reserved2;
ULONG_PTR Reserved3;
ULONG_PTR Reserved4;
@@ -1433,13 +1434,13 @@ typedef struct _SYSTEM_SESSION_MAPPED_VIEW_INFORMATION
// private
typedef struct _SYSTEM_MEMORY_LIST_INFORMATION
{
ULONG ZeroPageCount;
ULONG FreePageCount;
ULONG ModifiedPageCount;
ULONG ModifiedNoWritePageCount;
ULONG BadPageCount;
ULONG PageCountByPriority[8];
ULONG RepurposedPagesByPriority[8];
ULONG_PTR ZeroPageCount;
ULONG_PTR FreePageCount;
ULONG_PTR ModifiedPageCount;
ULONG_PTR ModifiedNoWritePageCount;
ULONG_PTR BadPageCount;
ULONG_PTR PageCountByPriority[8];
ULONG_PTR RepurposedPagesByPriority[8];
} SYSTEM_MEMORY_LIST_INFORMATION, *PSYSTEM_MEMORY_LIST_INFORMATION;
// private
+3 -3
View File
@@ -945,19 +945,19 @@ typedef struct _PS_CREATE_INFO
};
ACCESS_MASK AdditionalFileAccess;
} InitState;
// PsCreateFailOnSectionCreate
struct
{
HANDLE FileHandle;
} FailSection;
// PsCreateFailExeName
struct
{
HANDLE IFEOKey;
} ExeName;
// PsCreateSuccess
struct
{
@@ -1,5 +1,6 @@
1.2
* Added WS Watch
* Added display of standby repurposed pages
1.1
* Fixed ETW crash
@@ -127,41 +127,51 @@ BEGIN
LTEXT "Static",IDC_MESSAGE,7,7,262,8
END
IDD_MEMLISTS DIALOGEX 0, 0, 139, 186
IDD_MEMLISTS DIALOGEX 0, 0, 228, 186
STYLE DS_SETFONT | DS_MODALFRAME | DS_FIXEDSYS | WS_MINIMIZEBOX | WS_POPUP | WS_CAPTION | WS_SYSMENU
EXSTYLE WS_EX_TOPMOST
CAPTION "Memory Lists"
FONT 8, "MS Shell Dlg", 400, 0, 0x1
BEGIN
DEFPUSHBUTTON "Close",IDOK,82,165,50,14
DEFPUSHBUTTON "Close",IDOK,171,165,50,14
LTEXT "Zeroed",IDC_STATIC,7,7,24,8
LTEXT "Free",IDC_STATIC,7,18,16,8
LTEXT "Modified",IDC_STATIC,7,29,28,8
LTEXT "Modified no-write",IDC_STATIC,7,40,56,8
LTEXT "Bad",IDC_STATIC,7,51,13,8
LTEXT "Free",IDC_STATIC,7,17,16,8
LTEXT "Modified",IDC_STATIC,7,28,28,8
LTEXT "Modified no-write",IDC_STATIC,7,39,56,8
LTEXT "Bad",IDC_STATIC,7,50,13,8
LTEXT "Standby",IDC_STATIC,7,62,28,8
LTEXT "Priority 0",IDC_STATIC,23,74,30,8
LTEXT "Priority 1",IDC_STATIC,23,85,30,8
LTEXT "Priority 2",IDC_STATIC,23,96,30,8
LTEXT "Priority 3",IDC_STATIC,23,107,30,8
LTEXT "Priority 0",IDC_STATIC,23,73,30,8
LTEXT "Priority 1",IDC_STATIC,23,84,30,8
LTEXT "Priority 2",IDC_STATIC,23,95,30,8
LTEXT "Priority 3",IDC_STATIC,23,106,30,8
LTEXT "Priority 4",IDC_STATIC,23,118,30,8
LTEXT "Priority 5",IDC_STATIC,23,129,30,8
LTEXT "Priority 6",IDC_STATIC,23,140,30,8
LTEXT "Priority 7",IDC_STATIC,23,151,30,8
RTEXT "Static",IDC_ZZEROED_V,73,7,59,8,SS_ENDELLIPSIS
RTEXT "Static",IDC_ZFREE_V,73,18,59,8,SS_ENDELLIPSIS
RTEXT "Static",IDC_ZMODIFIED_V,73,29,59,8,SS_ENDELLIPSIS
RTEXT "Static",IDC_ZMODIFIEDNOWRITE_V,73,40,59,8,SS_ENDELLIPSIS
RTEXT "Static",IDC_ZBAD_V,73,51,59,8,SS_ENDELLIPSIS
RTEXT "Static",IDC_ZFREE_V,73,17,59,8,SS_ENDELLIPSIS
RTEXT "Static",IDC_ZMODIFIED_V,73,28,59,8,SS_ENDELLIPSIS
RTEXT "Static",IDC_ZMODIFIEDNOWRITE_V,73,39,59,8,SS_ENDELLIPSIS
RTEXT "Static",IDC_ZBAD_V,73,50,59,8,SS_ENDELLIPSIS
RTEXT "Static",IDC_ZSTANDBY_V,73,62,59,8,SS_ENDELLIPSIS
RTEXT "Static",IDC_ZSTANDBY0_V,73,74,59,8,SS_ENDELLIPSIS
RTEXT "Static",IDC_ZSTANDBY1_V,73,85,59,8,SS_ENDELLIPSIS
RTEXT "Static",IDC_ZSTANDBY2_V,73,96,59,8,SS_ENDELLIPSIS
RTEXT "Static",IDC_ZSTANDBY3_V,73,107,59,8,SS_ENDELLIPSIS
RTEXT "Static",IDC_ZSTANDBY0_V,73,73,59,8,SS_ENDELLIPSIS
RTEXT "Static",IDC_ZSTANDBY1_V,73,84,59,8,SS_ENDELLIPSIS
RTEXT "Static",IDC_ZSTANDBY2_V,73,95,59,8,SS_ENDELLIPSIS
RTEXT "Static",IDC_ZSTANDBY3_V,73,106,59,8,SS_ENDELLIPSIS
RTEXT "Static",IDC_ZSTANDBY4_V,73,118,59,8,SS_ENDELLIPSIS
RTEXT "Static",IDC_ZSTANDBY5_V,73,129,59,8,SS_ENDELLIPSIS
RTEXT "Static",IDC_ZSTANDBY6_V,73,140,59,8,SS_ENDELLIPSIS
RTEXT "Static",IDC_ZSTANDBY7_V,73,151,59,8,SS_ENDELLIPSIS
RTEXT "Static",IDC_ZREPURPOSED_V,162,62,59,8,SS_ENDELLIPSIS
RTEXT "Static",IDC_ZREPURPOSED0_V,162,74,59,8,SS_ENDELLIPSIS
RTEXT "Static",IDC_ZREPURPOSED1_V,162,85,59,8,SS_ENDELLIPSIS
RTEXT "Static",IDC_ZREPURPOSED2_V,162,96,59,8,SS_ENDELLIPSIS
RTEXT "Static",IDC_ZREPURPOSED3_V,162,107,59,8,SS_ENDELLIPSIS
RTEXT "Static",IDC_ZREPURPOSED4_V,162,118,59,8,SS_ENDELLIPSIS
RTEXT "Static",IDC_ZREPURPOSED5_V,162,129,59,8,SS_ENDELLIPSIS
RTEXT "Static",IDC_ZREPURPOSED6_V,162,140,59,8,SS_ENDELLIPSIS
RTEXT "Static",IDC_ZREPURPOSED7_V,162,151,59,8,SS_ENDELLIPSIS
RTEXT "(Repurposed)",IDC_STATIC,162,50,59,8
END
IDD_PROCDISKNET DIALOGEX 0, 0, 260, 260
@@ -301,7 +311,7 @@ BEGIN
IDD_MEMLISTS, DIALOG
BEGIN
LEFTMARGIN, 7
RIGHTMARGIN, 132
RIGHTMARGIN, 221
TOPMARGIN, 7
BOTTOMMARGIN, 179
END
@@ -77,12 +77,17 @@ static VOID EtpUpdateMemoryListInfo(
)))
{
ULONG_PTR standbyPageCount;
ULONG_PTR repurposedPageCount;
ULONG i;
standbyPageCount = 0;
repurposedPageCount = 0;
for (i = 0; i < 8; i++)
{
standbyPageCount += memoryListInfo.PageCountByPriority[i];
repurposedPageCount += memoryListInfo.RepurposedPagesByPriority[i];
}
SetDlgItemText(hwndDlg, IDC_ZZEROED_V, PhaFormatSize((ULONG64)memoryListInfo.ZeroPageCount * PAGE_SIZE, -1)->Buffer);
SetDlgItemText(hwndDlg, IDC_ZFREE_V, PhaFormatSize((ULONG64)memoryListInfo.FreePageCount * PAGE_SIZE, -1)->Buffer);
@@ -98,6 +103,15 @@ static VOID EtpUpdateMemoryListInfo(
SetDlgItemText(hwndDlg, IDC_ZSTANDBY5_V, PhaFormatSize((ULONG64)memoryListInfo.PageCountByPriority[5] * PAGE_SIZE, -1)->Buffer);
SetDlgItemText(hwndDlg, IDC_ZSTANDBY6_V, PhaFormatSize((ULONG64)memoryListInfo.PageCountByPriority[6] * PAGE_SIZE, -1)->Buffer);
SetDlgItemText(hwndDlg, IDC_ZSTANDBY7_V, PhaFormatSize((ULONG64)memoryListInfo.PageCountByPriority[7] * PAGE_SIZE, -1)->Buffer);
SetDlgItemText(hwndDlg, IDC_ZREPURPOSED_V, PhaFormatSize((ULONG64)repurposedPageCount * PAGE_SIZE, -1)->Buffer);
SetDlgItemText(hwndDlg, IDC_ZREPURPOSED0_V, PhaFormatSize((ULONG64)memoryListInfo.RepurposedPagesByPriority[0] * PAGE_SIZE, -1)->Buffer);
SetDlgItemText(hwndDlg, IDC_ZREPURPOSED1_V, PhaFormatSize((ULONG64)memoryListInfo.RepurposedPagesByPriority[1] * PAGE_SIZE, -1)->Buffer);
SetDlgItemText(hwndDlg, IDC_ZREPURPOSED2_V, PhaFormatSize((ULONG64)memoryListInfo.RepurposedPagesByPriority[2] * PAGE_SIZE, -1)->Buffer);
SetDlgItemText(hwndDlg, IDC_ZREPURPOSED3_V, PhaFormatSize((ULONG64)memoryListInfo.RepurposedPagesByPriority[3] * PAGE_SIZE, -1)->Buffer);
SetDlgItemText(hwndDlg, IDC_ZREPURPOSED4_V, PhaFormatSize((ULONG64)memoryListInfo.RepurposedPagesByPriority[4] * PAGE_SIZE, -1)->Buffer);
SetDlgItemText(hwndDlg, IDC_ZREPURPOSED5_V, PhaFormatSize((ULONG64)memoryListInfo.RepurposedPagesByPriority[5] * PAGE_SIZE, -1)->Buffer);
SetDlgItemText(hwndDlg, IDC_ZREPURPOSED6_V, PhaFormatSize((ULONG64)memoryListInfo.RepurposedPagesByPriority[6] * PAGE_SIZE, -1)->Buffer);
SetDlgItemText(hwndDlg, IDC_ZREPURPOSED7_V, PhaFormatSize((ULONG64)memoryListInfo.RepurposedPagesByPriority[7] * PAGE_SIZE, -1)->Buffer);
}
else
{
@@ -115,6 +129,15 @@ static VOID EtpUpdateMemoryListInfo(
SetDlgItemText(hwndDlg, IDC_ZSTANDBY5_V, L"Unknown");
SetDlgItemText(hwndDlg, IDC_ZSTANDBY6_V, L"Unknown");
SetDlgItemText(hwndDlg, IDC_ZSTANDBY7_V, L"Unknown");
SetDlgItemText(hwndDlg, IDC_ZREPURPOSED_V, L"Unknown");
SetDlgItemText(hwndDlg, IDC_ZREPURPOSED0_V, L"Unknown");
SetDlgItemText(hwndDlg, IDC_ZREPURPOSED1_V, L"Unknown");
SetDlgItemText(hwndDlg, IDC_ZREPURPOSED2_V, L"Unknown");
SetDlgItemText(hwndDlg, IDC_ZREPURPOSED3_V, L"Unknown");
SetDlgItemText(hwndDlg, IDC_ZREPURPOSED4_V, L"Unknown");
SetDlgItemText(hwndDlg, IDC_ZREPURPOSED5_V, L"Unknown");
SetDlgItemText(hwndDlg, IDC_ZREPURPOSED6_V, L"Unknown");
SetDlgItemText(hwndDlg, IDC_ZREPURPOSED7_V, L"Unknown");
}
}
+11 -1
View File
@@ -62,6 +62,16 @@
#define IDC_ENABLEETWMONITOR 1038
#define IDC_ENABLE 1039
#define IDC_WSWATCHENABLED 1041
#define IDC_ZREPURPOSED_V 1042
#define IDC_ZREPURPOSED0_V 1043
#define IDC_ZREPURPOSED1_V 1044
#define IDC_ZREPURPOSED2_V 1045
#define IDC_ZREPURPOSED3_V 1046
#define IDC_ZREPURPOSED4_V 1047
#define IDC_ZREPURPOSED5_V 1048
#define IDC_ZREPURPOSED6_V 1049
#define IDC_ZSTDREP7_V 1050
#define IDC_ZREPURPOSED7_V 1050
// Next default values for new objects
//
@@ -69,7 +79,7 @@
#ifndef APSTUDIO_READONLY_SYMBOLS
#define _APS_NEXT_RESOURCE_VALUE 111
#define _APS_NEXT_COMMAND_VALUE 40001
#define _APS_NEXT_CONTROL_VALUE 1042
#define _APS_NEXT_CONTROL_VALUE 1051
#define _APS_NEXT_SYMED_VALUE 109
#endif
#endif