欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

面向異構多核體系的進程調(diào)度方法

文檔序號:6573497閱讀:559來源:國知局
專利名稱:面向異構多核體系的進程調(diào)度方法
技術領域
本發(fā)明涉及計算機操作系統(tǒng)領域,尤其涉及一種面向異構多核體系的進程調(diào)度方法。
背景技術
在操作系統(tǒng)中,進程調(diào)度負責動態(tài)地把處理器分配給進程。因此,它又叫處理器調(diào)度或低級調(diào)度。操作系統(tǒng)中實現(xiàn)進程調(diào)度的程序稱為進程調(diào)度程序,或分派程序。
處理器的調(diào)度策略很多;現(xiàn)介紹如下幾種1、先來先服務算法先來先服務算法是按照進程進入就緒隊列的先后次序來分配處理器。先進入就緒隊列的進程優(yōu)先被挑選,運行進程一旦占有處理器將一直運行下去直到運行結束或阻塞。這種算法容易實現(xiàn),但效率不高,顯然不利于I/O頻繁的進程。
2、時間片輪轉調(diào)度輪轉法調(diào)度也稱之為時間片調(diào)度,具體做法是調(diào)度程序每次把CPU分配給就緒隊列首進程使用一個時間片,例如100ms,就緒隊列中的每個進程輪流地運行一個這樣的時間片。當這個時間片結束時,就強迫一個進程讓出處理器,讓它排列到就緒隊列的尾部,等候下一輪調(diào)度。實現(xiàn)這種調(diào)度要使用一個間隔時鐘,例如,當一個進程開始運行時,就將時間片的值置入間隔時鐘內(nèi),當發(fā)生間隔時鐘中斷時,就表明該進程連續(xù)運行的時間已超過一個規(guī)定的時間片。此時,中斷處理程序就通知處理器調(diào)度進行處理器的轉換工作。這種調(diào)度策略可以防止那些很少使用外圍設備的進程過長的占用處理器而使得要使用外圍設備的那些進程沒有機會去啟動外圍設備。
最常用的輪轉法是基本輪轉法。它要求每個進程輪流地運行相同的一個時間片。在分時系統(tǒng)中,這是一種較簡單又有效的調(diào)度策略。一個分時系統(tǒng)有許多終端設備,終端用戶在各自的終端設備上同時使用計算機,如果某個終端用戶的程序長時間的占用處理器,勢必使其它終端用戶的要求不能得到及時響應。一般說分時系統(tǒng)的終端用戶提出要求后到計算機響應給出回答的時間只能是幾秒鐘,這樣才能使終端用戶感到滿意。采用基本輪轉的調(diào)度策略可以使系統(tǒng)及時響應。例如,一個分時系統(tǒng)有10個終端,如果每個終端用戶進程的時間片為100ms,那么,粗略地說,每個終端用戶在每秒鐘內(nèi)可以得到大數(shù)100ms的處理器時間,如果對于終端用戶的每個要求,處理器花費300ms的時間就可以給出回答時,那么終端響應的時間大致就在3秒左右,這樣可算得上及時響應了。
基本輪轉法的策略可以略加修改。例如,對于不同的進程給以不同的時間片;時間片的長短可以動態(tài)地修改等等,這些做法主要是為了進一步提高效率。
輪轉法調(diào)度是一種剝奪式調(diào)度,系統(tǒng)耗費在進程切換上的開銷比較大,這個開銷與時間片的大小很有關系。如果時間片取值太小,以致于大多數(shù)進程都不可能在一個時間片內(nèi)運行完畢,切換就會頻繁,系統(tǒng)開銷顯著增大,所以,從系統(tǒng)效率來看,時間片取大一點好。另一方面,時間片長度固定,那么隨著就緒隊列里進程數(shù)目的增加,輪轉一次的總時間增大,亦即對每個進程的響應速度放慢了。為了滿足用戶對響應時間的要求,要么限制就緒隊列中的進程數(shù)量,要么采用動態(tài)時間片法,根據(jù)當前負載狀況,及時調(diào)整時間片的大小。所以,時間片大小的確定要從系統(tǒng)效率和響應時間兩方面考慮。
3、優(yōu)先權調(diào)度每一個進程給出一個優(yōu)先數(shù),處理器調(diào)度每次選擇就緒進程中優(yōu)先數(shù)最大者,讓它占用處理器運行。怎樣確定優(yōu)先數(shù)呢?可以有以下幾種考慮,使用外圍設備頻繁者優(yōu)先數(shù)大,這樣有利于提高效率;重要算題程序的進程優(yōu)先數(shù)大,這祥有利于用戶;進入計算機時間長的進程優(yōu)先數(shù)大,這樣有利于縮短作業(yè)完成的時間;交互式用戶的進程優(yōu)先數(shù)大,這樣有利于終端用戶的響應時間等等。
這些級別的進程調(diào)度方法都是最簡單的調(diào)度方法,對于在單個處理器的體系結構中,操作系統(tǒng)采用這些調(diào)度就能夠?qū)崿F(xiàn)對多道程序的支持。

發(fā)明內(nèi)容
在異構體系結構中,有一個用于通用處理的主處理核和若干個針對特殊應用進行優(yōu)化的輔助處理核。本發(fā)明提出了一個面向這種主從關系的異構多核的進程調(diào)度的方法。
本發(fā)明解決技術問題所采用的技術方案是1)進程分配策略把異構多核分為主處理核和輔助處理核,操作系統(tǒng)為所有處理核維護一個的共用的就緒隊列,每一個就緒進程有一個標志位標記該進程是運行在主處理核還是輔助處理核上;當某一個處理核空閑時,就從就緒隊列里選取一個相應進程運行于該處理核上;2)操作系統(tǒng)的實現(xiàn)機制操作系統(tǒng)采用主從式管理結構,操作系統(tǒng)的核心進程運行在主處理核上,其他處理器僅運行可以在該類核上運行的各種應用程序,當應用程序需要請求操作系統(tǒng)服務時,請求將被傳遞到主處理核上的操作系統(tǒng)程序;3)進程的調(diào)度I.均分負載的進程調(diào)度當某一個處理核空閑時,就選擇一個可以在該處理核上運行的就緒進程占有該處理器運行,一個進程就可以在任意時間在任意可運行該進程的處理核上運行;II.處理器專用的進程調(diào)度給一個應用程序?qū)iT指派一組處理器,一旦一個應用程序被調(diào)度,它的每一個線程被分配一個處理器并一直占有這個處理器運行直到整個應用程序運行結束。
本發(fā)明具有的有益的效果是進程調(diào)度方法能夠使得進程在異構多核上合理的進行調(diào)度,從而實現(xiàn)應用程序任務在各個處理核之間的負載均衡。


附圖是進程調(diào)度處理流程。
具體實施方法1)進程分配策略的實現(xiàn)在異構多核體系下,所有的處理并不是完全相同的,而是有一個主控的通用處理核和若干個相同的輔助處理核組成,但所有處理其在數(shù)據(jù)操作上卻是相同的,即對主存和I/O設備的訪問方式相同,所有采用對主處理核單獨處理,而其他多個輔助處理核則被作為一個處理核池來對待。
采取動態(tài)分配策略,操作系統(tǒng)為所有處理核維護一個的共用的就緒隊列,每一個就緒進程有一個標志位標記該進程是運行在主處理核還是輔助處理核上。當某一個處理核空閑時,就從相應的就緒隊列里選取一個就緒進程運行于該處理核上。附圖所示,概要說明了就緒隊列的模型。
2)操作系統(tǒng)的實現(xiàn)機制操作系統(tǒng)采用主從式管理結構,操作系統(tǒng)的核心進程運行在主處理核上,其他處理器運行可以在該類核上運行的各種應用程序用戶程序,當用戶程序需要請求操作系統(tǒng)服務時,請求將被傳遞到主處理核上的操作系統(tǒng)程序。
每一個進程都有一個也只有一個進程控制塊,是操作系統(tǒng)用于記錄和刻劃進程狀態(tài)及有關信息的數(shù)據(jù)結構。也是操作系統(tǒng)掌握進程的唯一資料結構,它包括了進程執(zhí)行時的情況,以及進程讓出處理器后所處的狀態(tài)、斷點等信息。
每個進程控制塊包含了操作系統(tǒng)管理所需的所有進程信息,進程控制塊的集合事實上定義了一個操作系統(tǒng)的當前狀態(tài)。進程控制塊使用或修改權僅屬于操作系統(tǒng)程序,包括調(diào)度程序、資源分配程序、中斷處理程序、性能監(jiān)視和分析程序等。有了進程控制塊,進程才能被調(diào)度執(zhí)行,因而,進程控制塊可看作是一個虛的CPU。
3)進程的調(diào)度1.均分負載的進程調(diào)度當某一個處理核空閑時,就選擇一個可以在該處理核上運行的就緒進程占有該處理器運行。一個進程就可以在任意時間在任意可運行該進程的處理核上運行。
II.處理器專派的進程調(diào)度給一個應用專門指派一組處理器,一旦一個應用被調(diào)度,它的每一個線程被分配一個處理器并一直占有這個處理器運行直到整個應用運行結束。
進程調(diào)度的基本思想是由操作系統(tǒng)和應用進程共同完成調(diào)度。操作系統(tǒng)負責在應用進程之間劃分處理器。應用程序則根據(jù)它的標志位來確定需要哪一類的處理器單元。
在這一調(diào)度中,當一個進程達到或要求新的處理器時,操作系統(tǒng)的調(diào)度程序主要限制處理器的分配,并且按照下面的步驟處理1)如果有空閑的處理器,滿足要求,就分配指定的處理器;2)否則,對于新到達進程,通過查看該進程的標記位確定需要哪一類處理器,并從當前分配了一個以上處理器的進程手中收回一個,并把它分配給新到達進程;3)如果沒有空閑或者可以回收的處理器,則保留申請直到出現(xiàn)可用的處理器或要求取消;4)當某個應用程序進程釋放了一個或多個處理器后,掃描申請?zhí)幚砥鞯倪M程隊列,按照先來先服務的原則把處理器逐一分配給每個申請進程直到?jīng)]有可用處理器。
權利要求
1.一種面向異構多核體系的進程調(diào)度方法,其特征在于1)進程分配策略把異構多核分為主處理核和輔助處理核,操作系統(tǒng)為所有處理核維護一個的共用的就緒隊列,每一個就緒進程有一個標志位標記該進程是運行在主處理核還是輔助處理核上;當某一個處理核空閑時,就從就緒隊列里選取一個相應進程運行于該處理核上;2)操作系統(tǒng)的實現(xiàn)機制操作系統(tǒng)采用主從式管理結構,操作系統(tǒng)的核心進程運行在主處理核上,其他處理器僅運行可以在該類核上運行的各種應用程序,當應用程序需要請求操作系統(tǒng)服務時,請求將被傳遞到主處理核上的操作系統(tǒng)程序;3)進程的調(diào)度I.均分負載的進程調(diào)度當某一個處理核空閑時,就選擇一個可以在該處理核上運行的就緒進程占有該處理器運行,一個進程就可以在任意時間在任意可運行該進程的處理核上運行;II.處理器專用的進程調(diào)度給一個應用程序?qū)iT指派一組處理器,一旦一個應用程序被調(diào)度,它的每一個線程被分配一個處理器并一直占有這個處理器運行直到整個應用程序運行結束。
全文摘要
本發(fā)明公開了一種面向異構多核體系的進程調(diào)度方法。這種方法采用所有處理核共用一個就緒進程隊列,每一個就緒進程有一個標志位標記該進程是運行在主處理核還是輔助處理核上的實現(xiàn)方式。這種方法中操作系統(tǒng)采用主從式管理結構,操作系統(tǒng)的核心進程運行在主處理核上,其他處理器僅運行可以在該類核上運行的各種應用程序,當應用程序需要請求操作系統(tǒng)服務時,請求將被傳遞到主處理核上的操作系統(tǒng)程序。進程調(diào)度采用均分負載調(diào)度算法和處理器專派調(diào)度算法,實現(xiàn)了進程的合理調(diào)度。
文檔編號G06F9/46GK101013388SQ20071006692
公開日2007年8月8日 申請日期2007年1月26日 優(yōu)先權日2007年1月26日
發(fā)明者陳天洲, 黃振寶 申請人:浙江大學
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
阳原县| 玛纳斯县| 临沂市| 黔南| 会宁县| 天津市| 五指山市| 鸡泽县| 阿坝| 贵溪市| 大兴区| 美姑县| 京山县| 华亭县| 水富县| 明水县| 北京市| 太原市| 聂拉木县| 长岭县| 中方县| 南丹县| 伽师县| 济阳县| 逊克县| 霍邱县| 黄石市| 永胜县| 托里县| 永吉县| 永平县| 太白县| 都昌县| 深圳市| 双城市| 克山县| 梨树县| 安岳县| 柘荣县| 泽普县| 科技|