關於“50% CPU 佔有率”題目的內容擴充套件
System Idle Process
Windows頁面記憶體管理程式,擁有0級優先。該程式作為單執行緒執行在每個處理器上,並在系統不處理其他執行緒的時候反派處理器的時間。有意思的是,它的CPU佔有率越大則表示可供分配的CPU資源越多。該程式是系統必須的,不能禁止,但它卻又不是系統程式,它允許於後臺而且不使用網路。該程式名稱為“系統空閒程式”,相應的描述為”處理器空閒時間百分比“。
那麼怎麼找到它呢?在Windows XP/Vista/7中,開啟工作管理員就可以直接看到,在Windows 8/8.1以及Windows 10中,則稍顯隱蔽,因此甚至許多人認為已經不存在了……
什麼是0級優先?
在Windows上,每個程式都有一個優先順序,範圍從0到31,0為最低優先順序,31為最高優先順序。當系統在決定程式排程的時候,會優先考慮優先順序為31的程式,如果存在則先執行。在執行完該程式後再查詢是否還有其他優先順序為31的程式,如果有的話則不會排程優先順序為0至30的程式。Windows支援6個優先順序類:Real-time(實時)、High(高)、Above normal(高於標準)、Normal(標準)、Below normal(低於標準)和Idle(空閒)。在程式中還有執行緒,執行緒同樣也有相對執行緒優先順序:Time-critical(關鍵時間)、Heightest(最高,不過沒有關鍵時間優先)、Above normal(高於標準)、Normal(標準)、Below normal(低於標準)、Lowest(最低,同樣,也比Idle優先)和Idle(空閒)。開發者不需要設定具體的優先順序0-31,Windows會主動將“優先順序類”和“相對程式優先順序”對映到相應的優先順序上。注意,這樣對映方式隨Windows版本的不同而不同,因此下圖只做參考。
DWORD
DWORD就是Double Word,每個Word為2個位元組的長度,DWORD雙字即為4個位元組,每個位元組是8位,共32位。
那麼如何在C++中需要include什麼呢?
#include "windows.h"
關於DWORD需要注意的一點是,它雖然表示的是32位無符號整數,但無論對於32位還是64位的Windows作業系統,DWORD都是32位無符號整數。
Sleep()
在C/C++中的Sleep()函式的功能是執行掛起一段時間,和DWORD需要一樣的標頭檔案。在Linux中則需要包含unistd.h標頭檔案。
#include<unistd.h>
注意在VC中Sleep的第一個字母是大寫的“S”,而在標準C中則是小寫。Sleep()需要一個無符號整形,單位是毫秒。而sleep()中則是秒。
GetTickCount()
DWORD GetTickCount(void)從0開始計時,返回自程式啟動後的毫秒數(不含系統暫停時間)。其同樣需要包含“windows.h”標頭檔案。
Perfmon.exe
為使本文得到斧正和提問,轉載請註明出處:
http://blog.csdn.net/nomasp
相關文章
- 內容分類擴充套件性標籤設計套件
- windows系統磁碟擴容/擴充套件Windows套件
- 關於32位oracle擴充套件SGA的一些問題Oracle套件
- chrome擴充套件推薦:此刻、今天、最近~一個關於時間管理的擴充套件 – MomentumChrome套件
- kotlin 擴充套件(擴充套件函式和擴充套件屬性)Kotlin套件函式
- 自己寫了個,阿里雲內容安全檢測擴充套件包阿里套件
- Chrome 擴充套件程式可防止基於 JavaScript 的 CPU 旁路攻擊Chrome套件JavaScript
- 關於翻譯包的擴充套件 dimsav/Laravel-translatable套件Laravel
- 【Kotlin】擴充套件屬性、擴充套件函式Kotlin套件函式
- Swift在擴充套件中關聯物件Swift套件物件
- Robot Framework(15)- 擴充套件關鍵字Framework套件
- Django內建許可權擴充套件案例Django套件
- docker內給php安裝zmq擴充套件DockerPHPMQ套件
- 基於MongoDB.Driver的擴充套件MongoDB套件
- 擴充套件工具套件
- Sanic 擴充套件套件
- Mybatis擴充套件MyBatis套件
- SpringMVC 擴充套件SpringMVC套件
- ORACLE 擴充套件Oracle套件
- 使用Kotlin擴充套件函式擴充套件Spring Data案例Kotlin套件函式Spring
- JMeter 擴充套件開發:擴充套件 TCP 取樣器JMeter套件TCP
- 分享自己寫的關於順豐同城配送的擴充套件包套件
- 查詢document及他的擴充套件模型裡的內容時需要多表查詢嗎?還是有內建的方法套件模型
- VS Code 的 Python 擴充套件有大更新Python套件
- C++ 對C的擴充套件有哪些C++套件
- 基於 GatewayWorker 開發的 Laravel 擴充套件GatewayLaravel套件
- 基於PHP擴充套件的WAF實現PHP套件
- ?用Chrome擴充套件管理器, 管理你的擴充套件Chrome套件
- ASP.NET Core擴充套件庫之Http通用擴充套件ASP.NET套件HTTP
- 記錄一些有關資料庫操作的擴充套件包資料庫套件
- iOS 通知擴充套件iOS套件
- swift擴充套件ExtensionsSwift套件
- 擴充套件BSGS/exBSGS套件
- Json擴充套件方法JSON套件
- 分類擴充套件套件
- 提高擴充套件性套件
- HttpContext擴充套件類HTTPContext套件
- DOM部分擴充套件套件
- LINQ擴充套件方法套件