• <output id="aynwq"><form id="aynwq"><code id="aynwq"></code></form></output>

    <mark id="aynwq"><option id="aynwq"></option></mark>
  • <mark id="aynwq"><option id="aynwq"></option></mark><label id="aynwq"><dl id="aynwq"></dl></label>
  • 學習啦 > 學習電腦 > 電腦硬件知識 > CPU知識 > CPU是如何在WINDOWS下處理多任務的

    CPU是如何在WINDOWS下處理多任務的

    時間: 捷鋒774 分享

    CPU是如何在WINDOWS下處理多任務的

      中央處理器(CentralProcessingUnit)的縮寫,即CPU,CPU是電腦中的核心配件,只有火柴盒那么大,幾十張紙那么厚,但它卻是一臺計算機的運算核心和控制核心。下面是學習啦小編帶來的關于CPU是如何在WINDOWS下處理多任務的的內容,歡迎閱讀!

      CPU是如何在WINDOWS下處理多任務?

      windows任務處理可分為兩類:協同式多任務和搶先式多任務處理模式。

      1)使用協同式多任務處理模式,CPU的分配直接由應用程序決定,所以系統性能好壞取決于應用程序設計好壞。而運行搶先式多任務處理模式,各進程占用CPU的時間由系統調度程序決定,當調度程序檢測出有比當前任務優先級更高的程序事件后,暫停當前任務并將CPU時間分配給優先級更高的進程。所有的Win16應用程序都在同一臺虛擬機上運行,各程序之間采用的是協同式多任務處理。每個Win32應用程序和MS-DOS應用程序都具有自己專用的虛擬機,其進程按搶先式多任務處理方式運行。

      2)Windows中的多任務調度策略

      Windows中調度的任務有兩種狀態:運行狀態和等待狀態。正在運行的任務處于運行狀 態,當該任務把CPU控制權交給其他任務后,就被置為等待狀態。為了便于任務調度和保存每個任務運行的參數,Windows在裝載應用程序時,由LoadModule()函數創建一任務數據庫(簡稱TDB),該任務數據庫在內存中是以鏈表的形式存在,TDB鏈表中的結點記下了每個任務切換時的堆棧指針、中斷處理程序地址及此任務對應的模塊句柄和實例句柄等

      Windows就是根據TDB鏈表中存放的各個任務的數據信息來完成任務調度的。 對Windows而言,CPU屬于臨界資源,在某一時刻只有一個任務獨占CPU。為了合理分配CPU,提高系統的性能,Windows根據任務是否存在等待事件來進行任務調度。如果當前任務沒有事件可供處理,那么就應該把控制權交給其他具有等待事件的任務。為了記錄每個任務的等待事件個數,在TDB鏈表中,為每個任務建立一個事件計數器(TDB偏移6處的值),系統調度程序就是根據該計數器來進行任務調度。我們可以通過Windows中未公開的核心函數PostEvent()把指定任務的事件計數器值增1,人為地偽造一個事件,引起相應的任務被喚醒。 當有多個任務都具有等待事件時,Windows采用的最高優先級(HPF)算法進行調度。為此Windows定義了任務的優先權值:范圍從-32到+15,任務的優先權值越小,它的優先級就越高,其任務結點在TDB鏈表中的位置也越靠前。而在實際應用中,絕大多數Windows應用程序的優先值都是0,若優先權值相同,則按先來先服務的原則進行。任務的優先權值只對具有等待事件的任務生效,如果一個任務沒有等待事件,即使優先權再高,也不會被調度。 若當前任務所分配的時間片用完或當前任務再無等待事件,任務調度程序就要釋放當前任務的控制權,把控制權交給已選中的可調度任務。但在WindowsAPI中并沒直接公開這樣一個函數,許多具有釋放控制權功能的函數都被隱藏在GetMessage()或PeekMessage()這樣的消息函數中,當應用程序在消息環中沒有消息可供接收時,它就會把控制權交給別的任務,以防止當前任務進入死循環。當前任務釋放控制權以后,如果沒一個任務被調度程序選中,調度程序就會使Windows進入系統空閑狀態,相應的電源管理軟件就會使整個系統處于低能耗的睡眠狀態,直至有任務被喚醒而重新開始正常運轉

      3)多任務處理

      多任務處理是指用戶可以在同一時間內運行多個應用程序,每個應用程序被稱作一個任務.Linux、windows就是支持多任務的操作系統,比起單任務系統它的功能增強了許多。當多任務操作系統使用某種任務調度策略允許兩個或更多進程并發共享一個處理器時,事實上處理器在某一時刻只會給一件任務提供服務。因為任務調度機制保證不同任務之間的切換速度十分迅速,因此給人多個任務同時運行的錯覺。多任務系統中有3個功能單位:任務、進程和線程。

      相關閱讀推薦:

      1982年,Intel推出80286芯片,它比8086和8088都有了飛躍的發展,雖然它仍舊是16位結構,但在CPU的內部集成了13.4萬個晶體管,時鐘頻率由最初的6MHz逐步提高到20MHz。其內部和外部數據總線皆為16位,地址總線24位,可尋址16MB內存。80286也是應用比較廣泛的一塊CPU。IBM 則采用80286 推出了AT 機并在當時引起了轟動,進而使得以后的 PC 機不得不一直兼容于PC XT/AT。

      1985年Intel推出了80386芯片,它X86系列中的第一種32位微處理器,而且制造工藝也有了很大的進步。80386內部內含27.5萬個晶體管,時鐘頻率從12.5MHz發展到33MHz。80386的內部和外部數據總線都是32位,地址總線也是32位,可尋址高達4GB內存,可以使用Windows操作系統了。但80386芯片并沒有引起IBM 的足夠重視,反而是 Compaq 率先采用了它。可以說,這是 P C 廠商正式走“兼容”道路的開始,也是AMD 等 CPU 生產廠家走“兼容”道路的開始和 32 位 CPU的開始,直到今天的 P4 和 K7 依然是 32 位的 CPU(局部64位)

      1989年,Intel推出80486芯片,它的特殊意義在于這塊芯片首次突破了100萬個晶體管的界限,集成了120萬個晶體管。80486是將80386和數學協處理器80387以及一個8KB的高速緩存集成在一個芯片內,并且在80X86系列中首次采用了RISC(精簡指令集)技術,可以在一個時鐘周期內執行一條指令。它還采用了突發總線(Burst)方式,大大提高了與內存的數據交換速度。

      1989 年,80486 橫空出世,它第一次使晶體管集成數達到了 120 萬個,并且在一個時鐘周期內能執行 2 條指令。

    看了CPU是如何在WINDOWS下處理多任務的文章內容的人還看:

    1.cpu性能對多任務處理

    2.如何判斷自己電腦是否適合裝Win7系統

    3.熱賣的多核CPU推薦

    4.路由器上網很慢怎么辦

    5.怎么看CPU的好壞

    6.CPU超線程技術是什么

    7.千元級處理器推薦

    8.linux下載系統分區

    9.有效處理多任務的技巧

    10.硬盤各種接口IDE、SATA與SATA II的優缺點分析

    677870 主站蜘蛛池模板: aa视频免费看| 中文字幕在线观看一区| 精品无码AV一区二区三区不卡| 在线观看免费精品国产| 亚州1区2区3区4区产品乱码2021| 老司机午夜视频在线观看| 国产黄色app| 久久99精品久久久久久国产 | 国产激情久久久久影| 岛国免费v片在线观看完整版| 亚洲国产精品无码久久久| 自拍偷自拍亚洲精品播放| 国产网站免费看| 中文字幕日韩人妻不卡一区| 欧美韩国日本在线观看| 国产一区二区三区在线观看影院 | 欧美精品一区二区三区在线| 国产一级特黄a大片免费| 91精品成人福利在线播放| 无码人妻熟妇AV又粗又大| 亚洲成人高清在线观看| 美女奶口隐私免费视频网站| 国产精品久久福利网站| 一本一本久久a久久综合精品| 柳岩老师好紧好爽再浪一点| 免费的毛片基地| 高清国产精品久久| 国模吧一区二区| 中文字幕亚洲第一| 极品美女一级毛片| 免费看污污的网站| 青青草国产免费国产| 国产美女网站视频| 上课公然调教h| 明星造梦一区二区| 亚洲精品伊人久久久久| 美女破处在线观看| 国产成人yy免费视频| 99免费视频观看| 性猛交xxxxx按摩欧美| 久操视频免费观看|