Fix Kernel User Timer and added ProcessTimes to QueryInformatinProcess

svn path=/trunk/; revision=9176
This commit is contained in:
James Tabor 2004-04-18 00:50:53 +00:00
parent b5ae6df350
commit 27b608d040
2 changed files with 27 additions and 1 deletions

View file

@ -22,6 +22,7 @@
HANDLE PsIdleThreadHandle = NULL;
extern ULONG DpcQueueSize;
PETHREAD PiIdleThread;
extern CHAR KiTimerSystemAuditing;
/* FUNCTIONS *****************************************************************/
@ -38,6 +39,11 @@ PsIdleThreadMain(PVOID Context)
KiDispatchInterrupt();
KeLowerIrql(oldlvl);
}
/*
* Tell ke/timer.c it's okay to run.
*/
KiTimerSystemAuditing = 1;
NtYieldExecution();
Ke386HaltProcessor();

View file

@ -1,4 +1,4 @@
/* $Id: process.c,v 1.127 2004/03/10 09:14:29 gvg Exp $
/* $Id: process.c,v 1.128 2004/04/18 00:50:53 jimtabor Exp $
*
* COPYRIGHT: See COPYING in the top level directory
* PROJECT: ReactOS kernel
@ -1084,6 +1084,26 @@ NtQueryInformationProcess(IN HANDLE ProcessHandle,
case ProcessQuotaLimits:
case ProcessIoCounters:
case ProcessTimes:
if (ProcessInformationLength != sizeof(KERNEL_USER_TIMES))
{
Status = STATUS_INFO_LENGTH_MISMATCH;
}
else
{
PKERNEL_USER_TIMES ProcessTimeP =
(PKERNEL_USER_TIMES)ProcessInformation;
ProcessTimeP->CreateTime = (TIME) Process->CreateTime;
ProcessTimeP->UserTime.QuadPart = Process->Pcb.UserTime * 100000;
ProcessTimeP->KernelTime.QuadPart = Process->Pcb.KernelTime * 100000;
ProcessTimeP->ExitTime = (TIME) Process->ExitTime;
if (ReturnLength)
{
*ReturnLength = sizeof(KERNEL_USER_TIMES);
}
}
break;
case ProcessDebugPort:
case ProcessLdtInformation:
case ProcessWorkingSetWatch: