

If you have lent out a computer to someone or sent it for repair somewhere you do not trust and are looking to see how the person you sent it to was using it, you can easily access your computer’s usage history to see its recent usage information. It may not outwardly display these details, but they can be accessed from the system for anyone whose looking for them. It keeps track of how long you were using your computer, when, and for what purpose. Write-Host Service is $search.Whenever you use your computer, it keeps tabs of your activity. Write-Host 'Service is' $search.Status', Memory consumed: '$searchmem' MB, CPU Usage: '$searchcpu' %' $searchmem = ::Round($searchcpu1.WorkingSetPrivate / 1mb,1) $searchcpu = ::Round(($searchp2p1 / $searcht2t1 * 100) /$cpu.NumberOfLogicalProcessors, 1) $searcht2t1 = $searchcpu2.Timestamp_Sys100NS - $searchcpu1.Timestamp_Sys100NS

$searchp2p1 = $searchcpu2.PercentProcessorTime - $searchcpu1.PercentProcessorTime $searchcpu1 = Get-WmiObject Win32_PerfRawData_PerfProc_Process | Where $searchmem = Get-WmiObject Win32_Service -Filter "Name = 'WSearch'" This is an example of Windows Search Service. There was a requirement to get status and cpu / memory usage of some specific windows servers. This logic applies for all programming language which supports WMI queries P2 indicated PercentProcessorTime retrieved for the second time, and p1 indicateds the PercentProcessorTime retrieved for the first time, t2 and t1 is for TimeStamp_Sys100NS.Ī sample Perl code for this can be found in the link Apply CPU% utilization formula CPU%= ((p2-p1)/(t2-t1)*100)/NumberOfLogicalProcessors To retrieve the values of PercentProcessorTime, TimeStamp_Sys100NS ( CPU utilization formula has be applied get the actual utilization percentage)and WorkingSetPrivate ( RAM ) minimum of 2 times with a sleep interval of 1 second select * from Win32_PerfRawData_PerfProc_Process where IDProcess=1234ģ.


To retrieve the total number of logical process select NumberOfLogicalProcessors from Win32_ComputerSystemĢ. We need to execute 2 WMI Select Queries and apply CPU% utilization formulaġ. You can also try using a C#/Perl/Java script get the utilization data using WMI Commands, and below is the steps for it.
