TW526452B - System and method for scheduling system resources - Google Patents

System and method for scheduling system resources Download PDF

Info

Publication number
TW526452B
TW526452B TW088122782A TW88122782A TW526452B TW 526452 B TW526452 B TW 526452B TW 088122782 A TW088122782 A TW 088122782A TW 88122782 A TW88122782 A TW 88122782A TW 526452 B TW526452 B TW 526452B
Authority
TW
Taiwan
Prior art keywords
user
time
clock
scheduling
waiting
Prior art date
Application number
TW088122782A
Other languages
English (en)
Inventor
John F Harris
Mark J Lorenc
Original Assignee
Ibm
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Ibm filed Critical Ibm
Application granted granted Critical
Publication of TW526452B publication Critical patent/TW526452B/zh

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • G06F9/505Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the load
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/4881Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Multi Processors (AREA)
  • Hardware Redundancy (AREA)
  • Saccharide Compounds (AREA)
  • Diaphragms For Electromechanical Transducers (AREA)
  • Luminescent Compositions (AREA)

Description

五、 發明説明( 曼Μ背景^ 領域 ' 本發明係關於一系絲ΜΛ Α 驅動多處理器手^特別地係關於將有調度 北 予”无貝格的資源排程至使用者。 复i技藝 排程器係提供用以在作業系統中以控制 系統資源量。由G A nQ · 、k j者4耗的 M ^ ^ · V1S〇n於6/2/94申請之尚在審理中的 美國專利申請案案雜A筮c 中的 種系統。 末戒為弟S/N。8/252,864號之申請案說明此 / =腦系統中’許多程式或是使用者需要並行執 1 把有至少—可使用的處理器執行多程式。任-處理 f只可以在任—時間執行-程式或是異動。假使至少二程 式在相同時間需要執行,而且只有一處理器或是只有少於 需要執行之程式數目的處理器時,作業系統必須決定何程 式可以在任一時間使用該處理器或是各處理器。通常此決 定^依據各程式之相對優先順序。通常,亦且在等待狀態 <程式如那些等待一慢速1/0操作完成之程式,將被I,懸置,, 以及所以不論優先順序為何將沒有資格爭奪處理器。 除決定何程式可以在一特別時間利用該處理器或是各處 理器以外,作業系統亦必須決定所選擇之程式可以在開始 執行之後利用該個別處理器多長時間,所以為相等(或是可 能較低)優先順序之程式亦可以輪流執行。具有多數已知技 術用於決足各程式在開始執行之後必須被許可利用該個別 處理器多長時間。在最簡單的技術中’最高優先順序之程 -4 - 本紙張尺度適用中國國家標準(CNS) A4規格(210X297公釐) 526452 [SI l 五 發明説明( I止(持使用’直到該程式本身完成使用該處” t止(或疋懸置)。然而,此技術可能允許此程式 二 處理器,以及使其他程式,,挨餓”。 疼 所選擇用於執行之各程wi〗#已知技術中, 吁W丁 <合釭式為給予總體處理器時 ^總體處理器時間,,片„。程式之共用可以為為相等 佳地依據各種不同因素而加權。一種已知技術如下列2 將共用加權。其中一些程式被定義為命令總 ; 之"絕對,,或是明確共用,而其他程式被 4:: :里=之:,相對"共用。該絕對共用"由上層移去 八以/、相對共用依比率劃分剩餘時間。例如,第一 f十 絕對共用加以定義,第二程式以⑽相對共用加= f以及第三程式以鳩相對共用加以定義。在此方案中,第 -程式將命令4G%之總體處理器時間,第二程式將命人 總體處理器時間而第三程式將命令45%之總體處理 一程式可能不需要其全部絕對或是相對共用。以此絕對/ 相對共用環境分配過剩之一種已知技術為將把所有過剩時 間給予具有最高絕對或是相對共用之程式。假使該過剩時 間為㈣分總體處理器時間時’此已知技術將足夠滿足需 要。2而’在許多案例中,該過剩時間為大量,如總體處 理j間《-半,所以將所有過剩時間分配給一程式可能 不是最佳方式。 之使用者有權利使用之系統相對共用為依據目前競爭系統 育源的所有相對共用使用者優先順序比率給予資格。然
而’所有系統資源不需要為相對共用使用者可利用。假使 ,有絕對共用使用者競爭資源時,那些絕對共用使用者為 、剩餘之系統共用在相對共用使用者之間依比率劃分之前 首先給丁其部分《系統。這些關係通常表示如下: 剩餘共用=100 %系統一所有絕對共用總體 之後剩餘共用在相對共用使用者之間依比率劃分: 相對使用者之共用=剩餘共用*(使用者相對共用/所有相 對使用者之總體共用) Y小時間片為-既定使用者許可由排程器職檢視而不具 :斷的處理器時間f。小時間片的大小與機器速度以及可 肊之用戶汉疋有關。當一使用者被調度時,CPU時間以小 時間片的時間量加以設定。當時間量期料,此計時器減 少以及呈現中冑,因此發出信號至排程ϋ表示使用者的小 時間片已經結束。 -受限之使用者,亦即”限制固定"使用者,為限制值定義 :代表擁有最大量處理器資源之一使用者。此限制值代表 =大使用共用’以及用以計算使用者的調度優先順序。通 苇 制串列&供為放置那些超越或是將超越其最大許可 ”用(處理⑨貝源的限制固定使用者。當—使用者在限制 串列上(或是另外由限制狀態加以特徵化)時,資源不會為 -6 -
該使用者調度使用。 —人工日時鐘(ATOD)於調度使用者工作時使用。at〇d 值以和機器的日時鐘(T0D)相同速率増加,但是只有在使 用者工作(以和非使用者工作如作業系統工作區別)由機器 &成期間增加。在目前系統中’至少一部分依賴at〇d排 私系統資源,縱使當CPU資源使用時,受限制之共用使用 者可能不被允許達到其最大使用共用。明顯地是,在具有 閒置處理器資源時間的低負載情況中,人工日時鐘(Μ。⑺ 值在閒置期間移動不狗快速。所以,正執行之那些限制固 疋使用者的優先順序相對於ATQD較其應該之移動更快速以 及其過早地進人限制串列(也就是說,設定限制狀態)。甚 至於,使用者可能不需要維持在限 用之⑷樣理器監视該串列。在低負載情況中為(;= 足夠疋工作使所有處理器保持忙碌的時間),較少作用之處 理器為作用,以致限制串列較不常被監視。此情:= 於使用者必須離開限制串列與處理器偵測使用者必須離開 :::列《間的時間增加。迄今為止,沒有一機構在處理 。為作用《等待狀態的時間期間將使用者由限制串列移 2 α在此情況中’具有當處理器沒有使用者工作將執行的 •、及所以在作用之等待機構中迴路,以及在限制串列 者保持在串列上直到在另—處理器上可能造成 限制串列將檢查之其他事件發生為止。 統具有較;使用在t述Davlsr申請案中說明的系 從幻耆在上面,或是當該系統不為忙碌時,當 -7 - 本纸張尺奴财s
526452
Si 6. 五、發明説明(5 ) 使用者必須能夠具有最高至硬性限制的使用時,系 器給予使用者較使用者硬性限制少的cpu時間。在具i 常少使用者在電腦系統上的案例中,說也奇怪使用者^ 較應得之CPU時間明顯為少’最高少於2〇%。此情J二 c P U時間為計費的案例中特別會形成使用者抱怨得不到 付費用的所有CPU時間。相反地,CPU時間可能應計費而 不計費。 本發明 < 一目的為提供一種排程器系統和方法,以加強 允許使用者在低負載情況中存取系統資源精密接近或是等 於其硬性限制。 本發明<另一目的為提供一種改良之排程器,加強系統 資源之最佳化計費以及減低使用者在冑資源彳費上的不安 或是可使用性。 本發月之另目的為提供一種系統和方法,因此監視資 料使用為系統使用的排程演算法之一回馈機構以決定使用 者優先順序以及決足接下來何使用者必須被許可加以執 行。 本發明 < 另一目的為提供一種系統和方法,用以藉由不 會太快將具有限制存取之使用者置放在限制串列上以及不 會太慢將使用者由限制串列移除而將系統資源排程至該使 用者。 本發明之另一目的為提供一種系統和方法,用於不會太 k因為使:貝源能夠排程而排程系統源給具有限制存取之使 用者’以及不會太快禁止資源之排程。 裝 訂 -8- yzb^yz
系統資源由使用 鐘而排程使用.在持—第一時鐘、維持一第二時 只有當該使用者處理期間,假使有工作將執行時, 調度優先順序排程ί::狀態時’將系統資源之使用依據 進一俊用去咕、.。孩使用者;否則以將第一時鐘往前推 間和等待以及以將第二時鐘往前推進—使用者時 πφ 胃,以及在等待處理期間,假使有工作將執行 =時度處理;否則,計時等待時間;以及假使在等 .:越預足值時具有一個為等待狀態的使用者時, 第時鐘一等待時間和呼叫調度處理。 裝 月’、他悲樣和優點將由本發明目前較佳具體實施例 的下列詳細說明與附圖結合而變得明顯。 圖式之簡單說明 圖1為製作本發明較佳具體實施例之方法和資料結構 統圖; μ 圖2為電腦作業系統流程圖; 圖3(a-c)形成調度器流程圖; 線 圖4為圖2作業系統内排程器的(小部分)流程圖; 圖5解釋調度串列;以及 一圖6為製作本發明方法之較佳具體實施例之程式模組圖 TJT ° 實施本發明之最佳模式 如本發明較佳具體實施例,為在尚在審理中的專利申請 案案號為第S/N 08/252,864號之申請案中的系統改良,之
-9- 、度適用中國國家標準(CNS) A4規格(210X297公釐) 526452
則 作業系統藉由不會太快將該具有有限之存取的使用 者放置在限制串列中而將系統資源排程至該使用者,以及 不會太慢將使用者由該限制串列移除。 裝 訂 線 、因此提供一種系統和方法用於在一,調度驅動,多處理系 統中經由建互在-作用之等待常式的監視器之使用限制一 特別使用者之CPU使用為_絕對值。該使用之機構為cpu 貝源必/綠制的使用者争列,所以其消耗不會超越該限制 值。孩使用者特徵為具有,限制狀態,。該限制串列 之作用等待以衫在低負載情況下何時該使用者必須由該 串列移除(因此重新儲存為,調度狀態,)以及因此在CPU可使 用時遞送最大CPU使用至使用者。如本發明較佳具體實施 例此作用之等待¥式(亦稱之為處理,或是程序)監視在 限制串列上的使用者以決定何時為呼叫調度常式之時間以 將使用者由該串卿除,利用監視之效能資料並回饋以動 態調整排程常式而增強決定使用者優先順序和《定何使用 者必須被允許接著執行(調度)之效應。當AT0D2被計算為 在使用者限制串列優先順序之一小時間片之内時,一使用 者由该凋度常式從該限制串列移除。 使用者工作為依據代表使用者時間片結束之調度優先順 序值而加以調度執行。此值為日時鐘格式,以及在下文中 更進一步說明。 參考圖1,一系統圖解釋本發明較佳具體實施例之程式 (貝料和万法)結構。這些程式結構包含系統資源2〇、即時 時鐘22、使用者最小共用指定24、使用者最大共用指定 -10- 本紙張尺度適用中國國家標準(CNS) A4規格(210 X 297公釐)
26。作用之等待連績監視器3〇、進入工作、調度器、 排私器44、ATOD2 21、ATOD 23 '偏移25、限制串列 2 7在限制串列上停留期間(亦稱之為停留時間)2 9、使用 者優先順序界限3 5、碉度_列3 7、最大降落量丨8和T〇D_ TIED 28。介於製作本發明方法之較佳具體實施例之這些結 構之間的鏈接,將在下文中解釋。 再次參考圖1,在操作中如以線88表示,假使有工作將執 行時,碉度器40尋找進入工作32以及使其依據由排程器扨 設定之優先順序執行。如以線82表示,假使沒有工作將執 行時,調度器40呼叫作用之等待連續監視器3〇。如以線㈠ 表示,作用之等待處理3 〇連續監視系統之進入工作3 2以及 更進一步以線8 2表示,呼叫調度器4 〇以當工作到達時加以 執行该工作。如以線8 4表示,調度器4 〇呼叫排程器4 4以當 使用者達到小時間片結束時重新計算使用者優先順序。如 分別以線85、86、87和88表示,排程器44使用為至調度 優先順序計算系統資源20、及時時鐘22、使用者最小共用 指足24、使用者最大共用指定26之輸入。如以線89表示, 排程器44將ATOD2往前推進一實際使用者使用之cpu時間 量加上自上次ATOD2更新時的任何等待時間(沒有工作可使 用於執行),而更新ATOD2 21。如以線90表示,排程器44 將ATOD往前推進一自上次ATOD更新起的實際使用者之 CPU時間量,以及基本上在本發明特定狀況下亦一往前推 進一等待時間,而更新ATOD2 23。該更新之at〇D=先前之 ATOD加上自上次AT0D重新計算之使用者cpu時間。 -11 - 本紙張尺度適用中國國家標準(CNS) A4規格(210X297公釐) 526452 五、發明説明(9 裝 線 如以線91表示,排程器44計算使用者偏移25,該偏移將在 優先順序計算中使用。當使用者調度優先順序被計算時, 偏移25被用為現行at〇D 23值之位移。如以線92和93表 不’使用者調度串列優先順序3 5 (亦稱之為期限優先順序或 疋預測之芫成時間)為依據排程器4 4之計算以及在界限内依 據現行ATOD 23值和使用者偏移2 5之大小加以設定。如以 線3 1和3 3表示,使用者調度串列優先順序被用以優先順序 置放一使用者工作在調度串列37上,以致於調度器4〇視其 為需要執行之進入工作32。排程器44使用ATOD 23計算使 用者碉度串列優先順序3 5以將使用者置放在調度串列3 7上 以及當使用者資源消耗需要藉由將其置放在限制串列27上 時使用AT0D2 21計算限制串列2 7優先順序。如以線9 5表 示’计鼻之上限稱為TOD-TIED 28。如以線94表示,計算 之下限稱為最大降落量1 8。如以線9 6表示,調度優先順序 3 5由排程器計算為在最大降落量界限丨8外部之限制共用使 用者加入至限制串列2 7。如以線9 7和9 8表示,在限制串列 2 7上之停留期間2 7的預測依據at〇D2 2丨製成。如以線9 9 表示’使用者停留在限制串列27上直到由排程器44移除的 時間為止。如以線i 20表示,在低負載情況中,作用之等 待處理3 0監視限制串列27以決定何時一使用者可能必須被 移除。 決疋ATOD、TOD-TIED、調度優先順序和偏移以及將資 源加以排程至使用者所需之計算將在下文中說明。用於計 算最大降落量之等式為·· -12- 本紙張尺度適用中國國家標準(CNS) A4規格(210X 297公釐) 526452 A7 B7 五、發明説明(1〇 最大降落量=AT0D + 4*偏移 用於計算偏移之等式為: 偏移-(小時間片-超限)/ ( CpU數*共用) 其中超限=在使用者先前小時間片上剩餘時間量,假使使用 者已經由較高優先順序佔先。 使用者碉度優先順序為計算為在優先順序界限最大降落量 和TOD-TIED之界限内的整數值。TOD-TIED機構之更完整 解釋提供在下文中。 就整體而言,ATOD 23和AT0D2 21為用以累加在系統上 之所有使用者的使用者時間和系統等待時間之資料結構(欄 位)。單獨使用者時間及/或等待時間不需要追蹤。這些累加 被用於預測將發生之特定事件如和系統作用比較之使用者 小時間片的結束。 圖2 -圖5 ,以及下列之說明由Davison之尚在審理中申請 案案號為S/N 08/252,864號加以改編,以及組成瞭解本發^ 不可或缺之基本觀念的基本指導,本發明主要為提供^調 整ATOD和ATOD2以包含等待時間之機構的改良,以此方 式實質上在不會太快增加使用者至限制串列或是不會太慢 將該使用者移除之目的上改良。 9 ^ 圖2解釋一作業系統包括調度器4〇、堆疊器^、排程器 44和其餘功能46。該堆疊器為介於作業系統排程器和調度 -13- 526452
五、發明説明(11 器以及介於調度器和排程器和其餘功能之間的介面。下文 為處理流程之高階說明。在—典型方案中,使用者發出一 請求至作業系統”其餘功能”46以執行一些工作。該工作請 求傳送至記錄使用者狀態為”備妥”之堆疊器〇。縱使當使 用者可旎具有其工作之不同觀點,該堆疊器將由使用者到 達之工作視為至少一”異動”。當一使用者狀態由完全閒置 性(’·閒置變成準備執行(”備妥,,)狀態時,—個,f新的,,異 動開:L亦具有第二狀態為,,懸置",當一使用者仍然具有 工作(異動)進行,但是等待一虛擬1/〇請求完成以及所以暫 時不準備執行時存在。懸置週期不足以宣告一個新的異 動接著,該堆疊器傳送該請求至此使用者工作佇列。該 隹疊器亦乎叫排程器以獲得指示此使用者相對於在調度串 列3^^上之其他使用者之調度優先順序3 5的資訊。之後,該 堆疊器置放此使用者(實際上為使用者VMDBK)在調度串列 、、及回轉至作業系統"其他功能,,。該調度優先順序使 —周度串列上的使用者順序起效應。當作業系統其他功能 :成$現行工作件時,其傳送控制至調度器4〇以決定將執 仃心j一使用者和工作件。該調度器之後在調度串列37選 擇=將執行之第一備妥使用者以及在使用者工作侍列中 的工作件。之後,調度器4〇傳送控制至作業系統其他 力此兀以開始執行此工作。調度之工作之後執行預定歷時 足時^ 1 ’、例如1亳秒。假使該工作項目在1毫秒時間片結 束、^凡成時,該碉度器由相同使用者工作佇列中選擇另 作件加以執行。在此時間片結束時,假使該使用者仍 -14 - :297公釐) 裝 訂 線 526452 五、發明説明(12 然具有工作執行時’則該調度器再次+叫排程器44以獲得 此使用者次-時間片的新優先順序。此新優先順序使得使 用者在v周度串列中重新足位,依次決定何時相同使用者之 此次時間片將開始。介於相同使用者之此次時間片之間的 時間邵分決定此使用者處理器時間之共用。 無論其絕對或是相對共用,所有使用者於一致歷時之離散 時間片加以調度和執行β在前述之例子中,各時間片為玉毫 秒。-時間片-般依據處理器速度且選擇於此具體實施例 之1毫秒僅為例子’以及可以置換以調諧系統。在各使用者 (™ΒΚ表示)完成一時間片之後,被中斷以及向下移動 至限制串列中(重新排優先順序此情形一般允許另 者使用此處理器。各使用者之處理器共用由介於分配至使 用者的時間片和使用者利用各時間片所需之時間之間的間 隔決定;各使用者不需要消⑹連續毫秒中的單—時間片。 =使該使用者必須等待_1/〇操作時,其暫時懸置以及移去 處理益(但疋保留在調度串列37中),〃致於等則川操作+ 成之時間不計數此使用者時間片。例如,縱使_ι/〇操作= 能需要多數€秒完成時,—I/Q界限使用者將經常能夠啟私 以及在使用完單-時間片之前等待至少ι〇 ι/〇操作完成: :且’假使工作為具有較高優先順序之另-使用者到達 =該調度器在使用者時間片結束之前可能由其處理移= 執仃《使用者以及將其懸置一週期。該作業系 由控制介於時間片之間的間隔而_各使用者之&理= 間的實際共用。使用者介於時間片之間的間隔相當於 -15- 本紙張尺度適用中國國家標準(CNS) A4規格(21〇 X 297公爱) 裝 訂 526452
五 發明説明(13
在碉度串列37巾❹者和調度_財 :;::;:小的倒數。每次—完成二= :位。在;:二之:™BK重新排優先順序以及重新 段段使用的案例中,排程器不重新 =片ΪΓ時間片之間的間隔,直到累加時間等-毫 在下文更詳細說Γ於決疋介於時間片之間微小間隔的技術 二在t路敗系、统中之各CPU具有日時(TOD)鐘22和一cpu ::器二該T0D時鐘包括52位元硬體暫存器,每微秒增加 一次。當作業系統被啟始(啟動)時,該T0D時鐘被設定以 及在設足之後從不改變。在N4MP系統中,所有则固丁⑽ 時鐘為相互準確同步至微秒。該·時鐘被設定為如此時 間0為1990年1月1日午夜。以52位元(亦即位元〇.51) 丁⑽ 時鐘計算微秒,該T0D時鐘在重覆之前可以運行超過i4〇 年。該TOD時鐘從不停丨,以及總是增加且為可靠和正確 的時間戳記及即時量測。 孩CPU計時器包括另一 5 2位元硬體暫存器,由作業系統 38使用以將各時間片加以計時。假使以及當系統操作員停 止CPU時,該CPU計時器停止,以及只要操作員重新啟動 CPU時,该CPU計時器將再次啟動(然而該TQD時鐘連續運 行)。當CPU再次啟動時,該CPU計時器和時間片之前進繼 績進行。當各使用者開始其時間片時,開始時間由cpu計 時器通知。類似地是,使用者每次變成懸置時,該cpu計 時器之時間被通知以決定此使用者再次執行時剩餘多少時 -16- 本紙張尺度適用中國國家標準(CNS) A4規格(210X297公釐) 526452 A7 B7 五、發明説明(14 ) 間。因此,當CPU停止時該使用者正處理,以及相對於 CPU計時器量測,不會遺失其任何時間片資格。 該排程器亦具有稱之為人工日時(ATOD)鐘(亦稱之為第 二人工日歷鐘AT0D2,稍後說明)之軟體時鐘。該ATOD時 鐘類似於硬體TOD時鐘,除了只有一個(不是各CPU具有一 個)以及運行較慢以外。CPU總體可使用處理功率之特定量 花費在作業系統管理負擔上,不能定為任何特別使用者之 屬性。所以,此總體可使用處理時間量不可使用於劃分為 使用者之共用。總體處理之百分比為時時刻刻變化之系統 管理負擔,使其困難地知道少於100%多少為可使用於使用 者之共用。當作業系統正執行管理負擔功能時,此困難度 為藉由定義ATOD時鐘將停止而規避,以及之後在遞送共用 至使用者的計算中使用ATOD時間而非TOD時間。在ATOD 時鐘中,之後時間停止而管理負擔被執行。因此,由該 ATOD時鐘量測之100%時間相當於可使用之處理。遞送共 用之計算,為依據ATOD時鐘,假使100 %處理為可使用於 使用者之共用,所以可以計算。 在作業系統3 8中,優先順序數較低代表較高之實際優先 順序。優先順序數始終為使用者改變以及調度順序為依據 介於備妥使用者之間的相對優先順序。當一使用者 /VMDBK被置放在限制串列37中時,優先順序數由排程器 依據個別絕對或是相對共用加以計算。當為剛進入調度串 列之使用者計算時,通常優先順序數較現行ATOD時鐘值稍 大(些許毫秒)。(然而,實際上,對起先之些許時間片而 -17- 本紙張尺度適用中國國家標準(CNS) A4規格(210 X 297公釐) 裝 訂 線 526452
;’假使非常短異動時較小之優先順序數被用以提供使用 者快速回應。此變換如此短,所以不甚影響使用者之共 用)。因為ATOD總是往前進,所讀舊、未完成之工作經 常具有較錢先順隸以及所以具錢㈣工作為高之優 先順序,傾向於位在接近調度串列上方。如下文之更詳細 說月'•周度器在執行串列上(該串列為調度串列3 7之複製, 排除未備妥或是懸置使用者’因此為具有執行狀態使用者 疋聚集或是串列)由上往下尋找以將使用者定位而執行。如 時:往前進,假如使用者因為較高優先順序備妥工作而沒 有得到調度或是假如使用者得到調度但是為I/Q限制以及花 費許多時間"懸置,,而沒有完成其時間片時,則使用者之優 先順序相對於⑴更新啟動異動之使用者及⑺不是ι/〇限制 之使用者而增加。此二拿祙八私丨& 士 爭仵刀別為真,因為(1)使用者之優 先順序數㈣固定直到其時間片完成為止,然而啟動新異 動之其他使用者於AT0D增加時逐漸指定較高之優先順序數 以及(2)更多CPU限制使用者使用許多時間片以及在各使用 者(後往下移動。因此,1/〇限制使用者傾向於具有較非 I/O限制使用者為高的相對優先順序以及通常,定位於接近 :度和執行串列之上方以及當備妥執行,亦即在各ι/〇操作 完成之後,被快速提供CPU。 對各使用者而s ’具有絕對或是相對共用24、26(在系统 請中制訂以及有時由系統操作員改變卜對各使用者而 ,,亦具有制訂之”軟性限制„、"硬性限制"或是"沒有限制 。如未使用之處理時間變成可使用,假使沒有未使用之處 •18- ;=,所有使用者開始接收和其計算之絕對共用與相 I、用成比率的過量處理時間。然而,當任何硬性限制使 用者達到其硬性限制時,此沒有更進一步之分配。沒有硬 性限制使用者可以始終分配超越硬性限制的處理時間之丑 用。當任何軟性限制使用者達到其軟性限制時,假使任ς 其他款性限制使用者已經達到其軟性限制或是任何其他硬 性限制使用者已經達到其硬性限制或是假使具有能約使用 過量處理時間之任何未限制使用者時,此軟性限制使用者 沒有更進—步之分配。尚未達到其限制之其他軟性限制和 硬性限制使用者繼續接收额外共用,直到他财達到其個 別限制為止。當时其㈣性限制使用者已經達到其軟性 限制以及所有硬性限制使用者已經達到其硬性限制以及沒 有非限制使用者能夠使用過量處理時間時,則具有最大絕 對共用或是相對共用(假使沒有未使用之處理時間時計算 又款性限制使用者接收所有剩餘之未使用處理時間。另 外,當所有款性限制使用纟已經達到其軟性限制以及所有 硬性限制使用纟已經達到其硬,f生限制以及沒有非限制使用 者能夠使用過量處理時間時,則所有軟性限制使用者與假 使沒有未使用之處理時間時計算之絕對共用或是相對共用 成比率共用剩餘之未使用處理時間。 如下文之更詳細解釋,共用分配技術藉由在使用者完成 各時間片之後在調度串列中往下重新定位或是偏移各使用 者而加以製作。該偏移量為依據絕對或是相對共用之大 小。當在完成各時間片之後藉由從剛完成該時間片之前 526452 A7 _______B7 五、發明説明(17 ) 用者位置啟動偏移而在調度串列中重新定位使用者時,各 使用者ucm制之相對量納人考慮。因此,假使使用者為非 常I/O限制時,在完成其時間片之前將被定位在非常接近調 度串列上方,所以縱使在完成時間片之後將被重新定位在 調度串列高處以及經歷往下偏移。(當—使用者首先進入調 度串列時,該偏移由接近ATOD處開始)。 調度器40如圖3(a-c)所解釋加以製作。在步驟1〇〇中,一 CPU ^成使用者之一件工作之執行且通知調度器。回應 時,第一位準調度器決定是否使用者已經完成其現行丨毫秒 時間片(決足1〇2)。假使未芫成,則第一位準調度器決定是 否較高優先順序使用者正等待處理器(決定1〇4)。假使不 是,則第一位準調度器決定是否剛完成一件工作之使用者 具有另一件工作執行,亦即在其工作佇列中的另一件工作 (決定106)。假使有,則第一位準調度器呼叫第二位準調度 器以由此使用者佇列調度次一件工作在剛完成此相同使用 者另一件工作的相同CPU上執行(步騾110)。回應時,第二 位準調度器選擇此使用者工作佇列上的第一件工作以及傳 送控制至作業系統中的合適常式以處理此特別件工作(步騾 112)。 再次參考決定102、104和106,假使決定1〇2為是、決定 1 〇4為是或是決定1〇6為否,則第一位準調度器前進至決定 120以決定是否為更新排程器at〇d時鐘(和ATOD2時鐘)的 時間如下文說明。此決定為依據自時鐘上次更新後是否 已經期滿至少一毫秒。假使是,則調度器呼叫堆疊器以通 —-20- 本紙張尺度適用中g g家標準(CNS) μ規格(21GX297公爱) 526452 五、發明説明(18 ) 知排程器更新ATOD和AT0D2時鐘(步騾122)。接著,第一 位準調度器藉由首先記錄使用者時間片有多少剩餘 用 而”未調度”使用者(步㈣0),假使時間片有剩餘。假使決 =1〇2導致步驟130,則此時間片沒有剩餘。然而,假使決 足104或是決足1〇6在步騾13〇之前,則剩餘些許之時間片。 接著,第一位準調度器決定是否時間片已經完成(以及一些 其他排程器情況如是否使用者必須循環回至合適串列之任 何情況被檢查)(決·定132)。假使是已經完成,第一位準調 度器呼叫堆疊器以通知排程器處理時間片之結束或是其他 排程情況(步騾134)。接著,第一位準調度器由剛完成異動 執行之CPU的執行串列選擇最高優先順序使用者(步騾 136)。假使具有此種使用者(決定14〇),則第一位準調度器 標示此使用者為調度、將時間片(或是由此剩餘之時間 入至CPU計時器以將此使用者之時間片加以計時且之後去 到第二位準調度器(步騾142)。回應時,第二位準調度器由 使用者之工作佇列選擇此使用者之第一件工作以及傳送控 制至作業系統部分46中的合適常式以處理此特別件工作 驟 144 ) 〇 再次參考決定140,假使沒有發現剛完成異動執行之cpu 的任何使用者時,第一位準調度器由另一cpu之執行串列 選擇最高優先順序使用者(步驟15〇)。假使發現該使用者 (決足152)時,第一位準調度器前進至步驟142以由另一 cpu之執行串列調度此使用者。然而,假使在另一之 執行串列沒有發現任何使用者時,則第一位準調度器前進 ___ -21 - 本紙張尺度相·> _標準_ Α4Λ(⑽χ297公爱) A7
至等待狀態(步騾154 )。 圖4田解釋一部分排程器44。在由第二位準調度器接 由堆璺器)將排程之新使用者識別之後,排程器如下決定” ^度串?j,、用(步驟2GQ )。在步驟2G2中,排程器以上述先 前技藝VM/ESA作業系統之方式換轉使用者絕對或是相對 共用為系統處理時間小數部分,亦即所有絕對共用由上方 移出γ以及假使總體時間大於99%時依比率減少且剩餘部 刀在㈣串列上之其他使用者之間依據其相對共用比率加 以劃分。各使用者之結果為處理器時間小數部分(介於〇和1 門)、以及所有使用者值加至i。接著,該排程器決定此使 用者〈"所需小數”(R,)以補償使用者花費在等待一,•合適” 串列之時間(步驟204)。當一使用者準備執行時被置放口在合 通串列中/但是不具有足夠之記憶體可使用於執行使用者 d。簡需小數藉由將步驟2〇2中決定之所需小數乘以 (在碉度串列之時間+在合適率列之時間)/(在調度串列之時 )、決足各使用者之所需小數在各使用者停留在合適串 列《後重新計算且結果用於在調度串列之次—週期。然 而’所有使用者經常具有足夠之記憶體,所以至合適串列., ^程”很稀少且㈣,步驟2。4為步驟202結果乘幻之簡單 乘法。接著,排程ϋ將此使用者所f小數R,加以正規化, 所以在财串列之所有使用者所f小數加至丨(步驟卜 使:者〈正規化所需小數R為"調度串列共用,,(或是執行串 用)以及將在下文更詳細說明。由此使用者之調度串列 -用,排程器決定沿調度串列和執行串列之”偏移”。粗略 -22- 526452 A7 B7 五、發明説明(2〇 地’使用者之偏移為調度串列共用倒數乘以時間片長度以 及除以系統中真實CPU數。偏移越小使用者具有更多存取 至CPU,反之亦然。使用者偏移之精確值在下文中更詳細 說明。 ' 圖5解釋在時間瞬間點之調度串列3〇〇。該調度串列包含 準備執行之使用者以及懸置之使用者。如上文所表示,在 調度串列300上準備執行之使用者亦列表在執行串列上以減 少尋找時間,但是調度串列300之解釋為較佳於解釋目的。 該碉度串列由上方往下尋找;具有最高優先順序之使用者 (以及最低優先順序數)依順序列表在上方。當各使用者完 成其時間片,假使具有更多工作將執行時,該排程器由現 行位置往下等於此使用者偏移25重新定位在調度串列3⑼ 上之使用者(以及間接在執行串列上)。因此,二因素使在 調度串列300上之使用者分佈起效應。第一因素為偏移25 之大小。如上述所表示,各使用者偏移之大小相對於和調 度串列上其他使用者共用成反相以及和具有不同共用之其 他使用者不同。因此,共用越小,偏移越大。此情形大多 數時間傾向於將低共用使用者定位在調度串列3〇〇底部。第 二因素為使用者完成其時間片所需之真實時間量。”1/〇限 制使用者需要實質之1/〇時間以完成一時間片,因為該使 =者和其時間片在使用者啟動I/O操作之後為懸置可觀時間 等待I/O操作完成。所以,1/0限制使用者需要長於i亳秒 時間片為相當長的真實時間以完成其執行時間片以及一旦 1 /〇限制使用者提升到執行串列3 0 0上方時,將在完成其時 -23-
526452
間片心則保留在孩處一段可顴眭 仅』硯時間以及往下偏移。相反 地,” CPU限制”使用者兩 忧用#而要)數I/O時間以及接近連續1毫 秒或是稍長時間完成其眭間& ^ 凡战具時間片。所以,CPU限制使用者為 經吊往下偏移以及-般常駐在接近調度串列底部。 因此,在任何時刻,1/0限制使用者和其他具有非常大共 用之使用者傾向於位於接近調度串列上方而cpu限制使用 者和其他具有非常小共用之使用者傾㈣位於接近調度串 列底部。在二因素之中,共用和1/0相對於⑽限制,1/0 I相對於cpim制在調度串列定位上具有較大效應(對共用 之正常範圍而言)。以上述方式在執行串列上使用者之定位 等於高通量,因為當1/0限制使用者變成備妥執行時,亦即 最後I/O操作冗成時,該使用者將位於接近執行串列3〇〇上 方且將快速獲得二CPU。 在圖5中’這些偏移顯示為在左方往下掃格箭頭。一些偏 移為較長或是較短,因為不同使用者具有不同共用。在一 典型情況中,在現行ATOD(暫態)標示之下的所有使用者為 CPU-限制,而在現行ATOD(暫態)標示之上的所有使用者 為I/O-限制。由於上述效應,使用者被以此效應加以排 序。亦且,調度器一般將不需要在現行ATOD標示太下方尋 找以發現備妥使用者,因為接近該處之CPU-限制使用者幾 乎能夠總是被調度。因此在圖5左侧之該”偏移”箭頭在 ATOD標示或是標示之下一般傾向於由ATOD標示或是標示 之下的使用者起源。然而,在調度串列上部,在ATOD標示 之上,箭頭傾向於由任意處起源。請注意當一 I / 〇限制使用 -24- 本紙張尺度適用中國國家標準(CNS) A4規格(210 X 297公爱) 五、發明説明(22 ) 者完成其時間片時,因為其典型高優先順序和在先期時間 片之時間的高位置,經常不移動至串列底部,以及經常仍 然保留在ATOD標示之上。因此,I/O限制使用者在I/O等 待完成之後將再次立即被調度,以及維持高通量。 前述排程器”非常困難放入'’在吸收其共用上具有困難度的 使用者。如這些使用者中之一使用者下降至其指定共用之 後越來越遠處時,在調度串列中上升越來越高直到最終, 假使此使用者具有任何希望取得其完全共用為止將如此執 行。因此前述排程器不僅僅給予各使用者所需存取一 CPU,亦且CPU各使用者多數所需共用。所需共用為不用計 算各使用者消耗歷史而提供。這是因為π歷史’’常駐在使用 者調度串列位置中。在調度串列位置中使用者相對於ATOD 標示之位置代表使用者過去已經接收之相對於使用者該得 的處理器時間共用。假如使用者現在已經得到所該得時, 則使用者將被定位在ATOD標示。假如使用者在ATOD標示 之上,則使用者已經接收少於使用者所該得。假如使用者 在ATOD標示之下,則使用者已經接收多於使用者所該得。 在步驟204中決定之所需小數R’如下文在步驟206中加以 正規化。具有3個正規化案例和各案例之2變化。在3個所有 案例中,計算為依據在調度串列(SRMRTHRU)上所有使用 者或是在ATOD標示之下的那些使用者(SRMCTHRU)之所 需小數和。在第二和第三案例中,為如上文所說明加以強 制限制,VMDBK為依據被發現是否達到其(硬性或是軟性) 限制而不同地考慮。在調度串列中所有使用者R'之和表 -25- 本紙張尺度適用中國國家標準(CNS) A4規格(210 X 297公釐) 五、發明説明(23 ) 示為: SRMRTHRU = SRMRTHRN + SRMRTHRL + R, 其中SRMRTHRN為在調度串列中所有使用者所需小數之 和,該使用者為不限制或是尚未達到其限制,而 SRMRTHRX為在調度串歹(J中已經達到其限制的所有使用者 所需小數之和,其中顯示正在加之R’代表目前正考慮之一 使用者的R’,計算時尚未被加入至SRMRTHN或是 SRMRTHL。類似地是,只有在ATOD標示下之使用者的和 為: SRMCTHRU = SRMCTHRN + SRMCTHRL + Rf 其中SRMCTHRN為在ATOD標示下之使用者的所需小數 之和,該使用者為不限制或是尚未達到其限制,而 SRMCTHRL為在ATOD標示下之使用者的所需通量和。(這 些變數之各變數的文字” C ”為在ATOD標示下之使用者可以 視為CPU限制之提醒)。在下文之計算中(所有3個案例), 只有顯示SRMRTHRN和SRMRTHRL變數,然而,假使正檢 視之使用者為在ATOD標示下之的使用者,注意變數 SRMRTHRN和SRMRTHRL意圖替代是重要的一件事。此考 慮先前提到之3個案例中各案例的2個變化。 第一案例: -26- 本紙張尺度適用中國國家標準(CNS) A4規格(210 X 297公釐) 526452
五 、發明説明(24 ) 假使((SRMRTHRL + SRMRTHRN + R,)> 1) AND SRMRTHRL〉0.5 ),貝U某些使用者之共用必須形成為較小 以及因為使用者達到其限制,所以形成大部分(>0,5),此 時它們全部包含在簡化中。之後,現行使用者正規化如 下: 正規 4匕 R’ = Rf/(SRMRTHRL + SRMRTHRN + R,) 因此,現行使用者之共用變成較小。第二案例: 假使((SRMRTHRL + SRMRTHRN + R,)>1)但 SRMRTHRL < 0.5 ),則某些使用者之共用必須形成為較小。但是使用者 達到其限制不會太大量(它們的R’和<0.5 ),所以它們不被 正規化。之後只有假使現行使用者不達到其限制時,現行 使用者之共用調整如下。 正規化R’ = R’*( 1-SRMRTHRL) /( SRMRTHRN + R,) 因此,不達到其共用之現行使用者共用變成較小。然 而,已經達到其共用之現行使用者使用下式: 正規化R' = R,(限制) 其中R’(限制)為特定硬性限制或是軟性限制之正規化小 -27- 本紙張尺度適用中國國家標準(CNS) A4規格(210 X 297公釐) 裝 訂 526452 A7 B7 91. 8e 4 五、發明説明(25 數,亦即為合適串列時間效應調整之硬性限制或是軟性限 制。因為正規化小數限於已經達到其限制之使用者,所以 只要具有至少一使用者尚未達到其限制或是具有至+ 一夫 限制使用者時,此情形限制該使用者 〆 石< 用在其個別限制 上。 第三案例: 假使((SRMRTHRL + SRMRTHRN + R,)< i 〇),則某些使 用者之共用必須形成為較大。因為已經達到其限制之&用 者的共用不應該形成為較大,所以只為尚未達到並限制之 裝 使用者調整。假使現行使用者尚未達到其限制,其共用調 整如下: 正規化R ’ =(與上文之案例(2 )相同)。 訂 但是此時正常使用者的共用變成較大(不類似上文之案例 (2))。然而,假使現行使用者達到其限制時,其业用 如下: 八/、,登 線 正規化R,= R,(限制) 因為正規化小數限於已經達到其限制之使用者,所以只 要具有至少一使用者尚未達到其限制或是具有至少一未限 制使用者時,此情形限制該使用者之共用在其個別限制 上。 -28-
526452 A7 B7 五、發明説明(26 ) 第一和第二案例不同之原因為假使可能時,較佳為不減低 受限制使用者之共用,因為該使用者之共用從未增加(參考 第三案例)。相反地,未限制之使用者共用的漏失將在另外 時間得到較大共用而統計地組成。 在區別第一和第二案例時,測試SRMRTHRL > 0.5。現行 使用者之R1在二案例中不考慮,因為該使用者之共用形成 為較小,非較大。所以未必達到其限制,所以,當測使試 以檢視該使用者和是否> 0.5時,該使用者不被視為達到其 限制。 裝 在第一案例中,各R’為除以所有之和。因此形成值(正 規化R,)之和將為1。該陳式(SRMRTHRL + SRMRTHRN + R/)代表所有Rf之和。 ‘線 回想SRMRTHRL和SRMRTHRN為SRMRTHRU之組成部分 (或是陣列元素)而SRMRTHRU為R’之和。除了在上述案例 執行計算的點以外,現行使用者之R’恰巧為由SRMRTHRU 減去以及尚不能決定何元素將新的R'加回去。所以陳式 (SRMRTHRL + SRMRTHRN + R,)明確地顯示R,正加上。 在第二案例中,R’只為尚未達到其個別限制的使用者調 整,然而已經達到其個別限制的使用者之R’保持常數。因 此尚未達到其限制之使用者之Rf藉由除以尚未達到其限制 (SRMRTHRN + R1)的所有使用者之R,的和以及之後將結果 乘以(1 - SRMRTHRL)而加以正規化。後者之因素為所需, 因為尚未達到其限制的使用者之正規化共用不該加為1,因 為亦具有已經達到其限制的使用者。因為正規化R’藉由只 -29- 本紙張尺度適用中國國家標準(CNS) A4規格(210 X 297公釐) 526452 ;A7 :.. I.B7 ...…:;; 五、發明説明(27 ) 除以(SRMRTHRN + R’)以及省略乘數而獲得,將使值的和 為1,遵守在已經乘以(1 - SRMRTHRL)之後將加入至(1 -SRMRTHRL)之規貝U。包含在SRMRTHRL的R’值事實上已 經設定為等於該限制,R’(限制)。 對下列原因而言,過量之處理器時間為與其絕對或是相 對共用成比率地為可使用於尚未達到其軟性或是硬性限制 之所有使用者。圖式方式,此情形與在調度串列中和ATOD 標示以相同速率前進(理想方式)之使用者發生。通常,先 前之機構試圖因此藉由設定(或是調整)偏移而與絕對和相 對共用成比率地共用處理器時間。 對在ATOD標示下之使用者而言,此比率由步驟206中R’ 之前述正規化的二特徵形成。如上文步驟206中說明所表 示,在ATOD標示下之各使用者的所需小數R’之正規化為依 據排除在A TOD標示上之使用者的在ATOD標示下之該組使 用者之和SRMCTHRU。所以,此情形將傾向於給予在 ATOD標示下之使用者較高優先順序,由較小偏移形成,因 為”正規化R’等式”之分母為較小,亦即,當總體限制為只 有那些在ATOD標示下之使用者時,各使用者的共用出現為 總體之較大百分比。同時,雖然在TOD標示上之I/O限制使 用者緩慢使用其時間片,但確實使用一些處理器時間。所 以,因為小於100 %之CPU服務將遞送至在ATOD標示下之 使用者,以及其偏移現在為依據得到100 %,所以在ATOD 標示下之使用者將傾向於缓慢地往上移動以及事實上開始 落在ATOD標示之後。然而,落在ATOD標示之後因下列原 -30- 本紙張尺度適用中國國家標準(CNS) A4規格(210X 297公釐) 裝 訂 -線 526452 _LB7: —ά_ 五、發明説明(28 ) 因而將傾向於在調度串列中再次往下移動該使用者。使用 者一經移動至ATOD標示上時,就不在ATOD標示下之該組 使用者中;所以,SRMRTHRU,非SRMCTHRU,將使用在 為”正規化R’ ”等式之分母中。此移動至ATOD標示上將傾 向於在調度串列中再次往下移動該使用者,因為”正規化R· ’’等式之分母之後將為較大(造成較小之正規化R’,但是較 大之偏移)。移動至ATOD標示上和ATOD標示下之此二傾 向的淨效應為”過剩”服務將與安裝定義之絕對和相對共用 成比率地分發(至能夠使用之使用者)。這些使用者以和 ATOD標示相同的速率往前推進,而非較快。 位於ATOD標示上方高處之使用者為提供其能夠使用之多 的處理器時間,但是它們通常不能使用過量之共用;甚至 不能使用其原始共用之完全量。然而,假使其條件改變而 以致於變成CPU限制時,它們因為上文表示之原因而將迅 速降至ATOD標示下,以及之後藉由依據其安裝定義之共用 成比率地給予它們過量處理器時間的先前原理加以管理。 步驟206之共用正規化的前述說明解釋一硬性限制或是款 性限制使用者將如何限制於其個別限制,假設具有(在 ATOD標示下)至少一其他使用者尚未達其限制或是具有 至少一未限制使用者。下文說明一硬性限制使用者防止接 收大於其硬性限制之一共用,以及說明在所有使用者已經 到達其個別限制之後剩餘的所有過量處理器時間以最大之 共用分配給軟性限制使用者。 如上文所表示,當一使用者完成一小時間片時,其在調 -31 - 本紙張尺度適用中國國家標準(CNS) A4規格(210 X 297公釐) 裝 訂 …線 五、發明説明(29 ) 度串列中往下移動在步驟160計算之一偏移。但是在 前’做成-決定為此是否將移動通過最大降落量 動1 使用者之最大降落量限制等於使用者偏移之4倍,亦g it 越在ATOD標示4偏移之前。假使未限制或是軟性、2 用者由於其個別偏移而將移動通過該最大降落量 2 其往下移動至其最大降落量限制且不超越。該最落旦 限制使未限制和軟性限制之使用者能夠得到多餘U = 共用,因為將造成在調度串列中定位在高於其另^配: ^處。事實上,當所有使用者已經達到其限制以及不: 有未限制1使用者時,具有最大共用之軟性限制使用者^ 質上將得到所有剩餘之過量處理器時間,因為 ς 具有最小偏移,所以將具有最小最大降落量限制。此= 將把孩使用者定位在調度串列中其他軟性限制使用者之^ 以及給予該使用者能_用的时過量處理器時間。 ,,,、而虽隹然田降洛在最大降落量以)限制之下 士更f生限制使用者將不為最大降落量(MAXFALL)限制, 生::使用者將由執行串列移動至限制串列。該限制 串列«使用者優先順序(VMDLpRTY)加 =性限制之使用者„在最大㈣量(maxfall)限制^ ^吊將不再完成任何任何小時間片或是不再更進一步 串列中往下移動。此情形將防止硬性限制使用者獲 之任何過量處理器時間,因為該調度器不調 串列中的使用者(而一使用者在一限制串列 被允許進入一執行串列)。 526452 91. 6, 4
A7 B7 526452 五、發明説明(31 ) (此藉由設定與該移動使用者相關之一位元而完成)。下次 此懷疑使用者完成一時間片時,該懷疑使用者往下移動一 正規偏移以及假如該使用者在此移動期間通過一 π非懷疑" 使用者時,則該移動之使用者再次被指定為’’非懷疑”;否 則,該移動之使用者更進一步往下移動恰好在該移動之使 用者遇到的第一”非懷疑’’使用者之上為止。另外,在ATOD 標示下之所有使用者為”非懷疑”。 裝 '線 一 ’’懷疑”使用者為已經被既定TOD-TIED(TT )屬性之使用 者。TOD-TIED機構之目的為不重新配置優先順序,而是如 正常般保持使用者之相對順序,以及減低因上升太高所造 成之任何間隙。TOD-TIED(TT)屬性將屬於在ATOD或是 ATOD下之所有使用者。無論何時VMDBK重新定位將其跨 過具TT之VMDBK時,其亦由一 VMDBK往上(由ATOD)傳 播至另一 VMDBK。假使在ATOD上之VMDBK不跨過具TT 之VMDBK時,則失去該屬性。在其次一小時間片之後,假 使VMDBK不能夠得回T T,則其被往下強制到恰好在具T T 屬性之下一 VMDBK之上(或是ATOD,假使不具有介入的使 用者)。 一過量I/O限制使用者難得按照預計時間結束其小時間 片,因為正等待I/O完成。該使用者出現為落在排程之後, 因為其請求1/0操作而非因為系統太忙以致於無法允許足夠 之CPU資源給使用者。排程器44將自然地傾向於以較高優 先順序將使用者排程,因為該使用者像是落在排程之後。 TOD-TIED 28界限為保持防止過量I/O限制使用者使調度優 -34- 本紙張尺度適用中國國家標準(CNS) A4規格(210 X 297公釐) 526452 A7 B7 五、發明説明(32 ) 先順序35太高。假如使用者有時保持過量之I/O限制,則其 優先順序將成為越來越高。當此情形為,使用者的優先順 序為很高以及此使用者可能獨佔系統CPU資源,假如使用 者下次調度時將為CPU限制。為避免此方案,當一使用者 之調度優先順序3 5落在ATOD 23之後時取得TOD-TIED屬 性,高優先順序。從那時起,具有此TOD-TIED屬性之使用 者將以其在優先順序為相當接近ATOD之調度串列上叢集在 一起的方式被既定,所以假使它們變成CPU限制時將不能 夠接管系統。此TOD-TIED,或是”懷疑,,機構為用以保持使 用者調度之優先順序為在高優先順序側上之ATOD的合理位 移内’而最大降落量為用以保持使用者侷限在ATOD低優先 順序側的機構。 ATOD時鐘和可使用之可利用CPU時間成比率地往前推 進。系統時間(管理負擔)對使用者工作或是共用為不可利 用’所以不計算前進的ATOD。各執行CPU規則地增加 ATOD ;等待CAUS不增加。此在步驟120和122由排程器驅 動。ATOD自上次增加後依據已經由多數真實CAUS.遞送之 多少使用者時間而往前推進。也就是說,各CPU和該CPU的 實際使用者執行時間累加器(PFXUTIME)成比率地增加 AT0D °此意圖(當所有CAUS·有結果地運行)為ATOD近似 即時(艢壁時鐘時間或是T〇D )往前推進。當所有N CAUS . 正運行時,各CPU通常為接近即時將其本身之PFXUTIME往 前推進°所以N CAUS.之貢獻為除以N。 -35- 9'L t 4 526452 A7 ____B7 _ 五、發明説明(33 )
AT〇D = ATOD + (PFXUTIME 增量)/N 其中"PFXUTIME增量”為自上次檢查後此CPU之 PFXUTIME累加器的變化。 ATOD2包含各CPU之使用者時間(PFXUTIME)以及各CPU 之等待時間(PFXTOTWT):
ATOD2 = ATOD2 + (PFXUTIME 增量+ PFXTOTWT 增量)/N 其中PFXUTIME和PFXTOTWT二者為類似cpu計時器之雙 字元時鐘。 然而,當任何CPU正等待多數逐次間隔時,則另一執行 CPU將代表形成等待時間之貢獻至ATOD2之作用(以及在一 些環境下亦貢獻至ATOD)。假設此種等待(:1>11正花費其所 有時間在等待狀態中以及,對等待狀態而言,其貢獻至 AT0D2必須與真實時間相同(如由τ〇Ε)時鐘量測)。然而, 另一 cpu沒有做成任何假設或是貢獻於該等待cpu之執行 時間。當該等待CPU再次開始執行時,將使其本身以正常 方式贡獻至AT0D以及依據即時之最終可能的小數間隔貢獻 至ATOD2(另-CPU已經管理先前間隔 如上文表示,當具有至少一CAUS.等待多數逐次時間片 間隔時,一些等待時間往AT0D計算,以及同時現行cpu沒 有任何工作在其執行串列中,假使現行cpu具有工作在其 執行串列中,則似乎該等待CMJS.不為"可利用"以執行該 -36- ^紙張尺度適用中國國A4規格(210X 297公釐) ----- 526452 ,i
;Af;J Β7 五、發明説明(34 ) 工作,否則它們將極有可能已經在執行該工作。相反地, 假使現行CPU沒有任何工作在其執行串列中時’假使其等 待時間為可利用之時間時將為非常安全地計算一等待 CPU。所以,當在延伸等待模式時具有至少一 CAUS.以及 同時現行CPU沒有任何工作在其執行串列中時,現行CPU 利用下列方程式取代先前之一方程式。 ATOD = ATOD +(增量/N) + (增量/N)*TRKCT/(N-TRKCT) 其中ATOD = ATOD + (增量/N)代表π增量”為n PFXUTIME增 量”簡寫之原始方程式,以及’’(增量/N)*TRKCT/(N-TRKCT),丨為增加以考量等待時間之項次,再次,,增量,丨為 ” PFXUTIME 增量"(而非’· PFXTOTWT 增量”)簡寫。TRKCT 為SRMTRKCT,CAUS·之計數目前仍然為延伸之等待模 式。 假使該等待CAUS.為許可(最後)貢獻於其本身之等待時間 時’該貢獻將大塊地到達。但是,使用上述方程式時,作 用之CPU代表大小不大於其本身(基於CPU)貢獻之等待 'CAUS·貢獻。因此在第二項次中貢獻之基本大小由增量/N 代表以及乘以SRMTRKCT以貢獻多數延伸-等待模式之 CAUS·但是之後該結果除以(N-SRMTRKCT),因為具有這 麼多類似現行之一 CAUS·(亦即不為延伸-等待模式)的其他 CAUS·,類似作用之CAUS ·,將類似作用之CPU做成貢 獻0 -37- 本紙張尺度適用中國國家標準(CNS) A4規格(210X297公釐) 526452 、 ·\ΆΤ·λ· ! ...................... Β7 ; 五、發明説明(35 ) 該SRMTODSV時間戳記為現行TOD之良好近似,雖然只 為間歇地更新-在每一小時間片結束(以及其他排程點)以及 無論何時VMDBK形成為備妥時,亦即接著多數I/O操作。 雖然SRMTODSV為夠精確於決定是否為更新ATOD之時 間,一旦做成決計時,使用更精確之TOD值。 如上文所表示,一 CPU之等待時間不是總是包含在ATOD 中,因為其他ATOD可能較使用者前進更快以及之後上文說 明之”懷疑/非懷疑”機構(作用為限制使用者可以在調度串 列中多高)將使所有使用者一致地往前推進,無論其共用有 多少。然而,假使系統之多數CAUS.中只有一 CAUS.(或是 一些)執行以及其他CAUS經常為等待時,由ATOD完全排除 等待時間造成問題。在該案例中,ATOD將延遲在後以及不 和真實時間成比率地往前推進。在未限制和軟性限制之使 用者或是小共用、硬性限制之使用者的案例中此情形不是 問題,但是可能造成大共用、硬性限制之使用者的顯著差 異。這是因為具有小共用之使用者完成介於ATOD和TOD之 間的適度差異為不明顯之一時間片之後,在調度串列中往 下踏一大步。但是對具有大共用(相當於小偏移)之硬性限 制使用者而言,ATOD的精確動作是重要的。ATOD必須在 具有大共用之使用者後面以相當迅速步伐追隨,以致於該 使用者不會太快超過,達到該最大降落量限制以及過早被 置放在限制串列中。假使此情形被允許發生,系統將顯示 下列不想要之特徵,該特徵為忙碌系統上硬性限制之使用 者將得到其共用,但是在不忙綠系統上(尤其是當其單獨在 -38- 本紙張尺度適用中國國家標準(CNS) A4規格(210 X 297公釐) 裝 訂 線 五、發明説明(36 ) 系統上時)將得到小於其共用之共用。此情形藉由當實質上 具有等待時間以及等待時間可以被證明為存在之工作”可利 用”時將等待時間包含在ATOD而加以防止。如上文所表 示,當具有CAUS.等待以及現行CPU不具有任何工作在其 執行串列中時,則某部分等待時間被包含在ATOD中。現行 CPU代表等待CAUS.貢獻等待時間。 在尚審理中之Davison申請案案號為第S/N 08/252,864號之 申請案中,觀察到等待時間之過度貢獻可能為有害的,因 為可能使”懷疑/非懷疑”機構將所有使用者無論其共用而一 致地往前推進。藉由使貢獻等於現行CPU正利用之至少一 CPU時間量(PFXUTIME增量),Davison教導當計數時製成 全部貢獻,亦即當具有CPU-限制工作以及幾乎使用者將被 置放在限制串列中,以及當CPU不是如此忙碌時做成較少 貢獻。由Davison增加之此”較少貢獻’’等待時間為如本發明 以及將在下文說明,實質上在更頻繁發生的環境之下由所 有等待時間擴大,所以達成一較佳結果。 因為在執行串列和限制串列中的使用者由不同時鐘 (ATOD和ATOD2)以不同速率加以計時,當使用者移進限 制串列2 7或是由限制串列2 7移出時,執行轉換。當使用者 在限制串列中時,該使用者具有二優先順序-一調度串列優 先順序(VMDDPRTY)35和一限制串列優先順序 (VMDLPRTY)29。該限制串列優先順序由使用者調度串列 優先順序演譯出。意圖為如使用者開始其在限制串列2 7中 的’’延遲’’時,該使用者必須具有由ATOD2 21與由ATOD 23 -39- 本紙張尺度適用中國國家標準(CNS) A4規格(210 X 297公釐) 526452 繁ΛΛ , --:Α7 五、發明説明(37 ) 位移相同的位移。該位移代表在使用者因為再次執行之前 必須通過的延遲量,但是該延遲需要依據AT0D2時鐘量測 (以允許”等待時間”完全計算)。所以該轉換為: VMDLPRTY = AT0D2 + (VMDDPRTY - ATOD) 當該使用者進入限制串列時,完成此VMDLPRTY之計 算。當該使用者離開限制串列時,該使用者在使用者期限 之前必須進入執行串列一小時間片。所以(由定義)當一使 用者由限制事列移動至執行事列時,在通知使用者以及使 使用者移動之前,該使用者之VMDDPRTY以下文表示之補 償被設定為(ATOD + TS)以稍稍延遲超過該限制串列期限: VMDDPRTY= (ATOD + TS) -((AT0D2 + TS) - VMDLPRTY) =VMDLPRTY + ATOD ~ AT0D2 參考圖6,和圖1相連接,圖形表示陳述為程式元件,此 後參考為步騾,用於製作本發明方法之較佳具體實施例, 以使用者不會太早等待或是太晚由等待移除之方式在相對 共用和絕對共用使用者之間將中央處理器使用加以排程。 介於這些步騾之間的關係不需要如圖6所示為連續,將在下 文連接表1之本發明較佳具體實施例的虛擬碼表示而加以說 明。 中央處理器之使用者共用或是其他系統資源2 0消耗可以 -40- 本紙張尺度適用中國國家標準(CNS) A4規格(210 X 297公釐) 裝 訂 91. 526452 五、發明説明(38 限制為一絕對值,為一精確的最大量2 6,如2 0 %之CPU資 源20。在此使用中,絕對值不參考通常和此有關的數學定 義’而是由來自IBM VM排程器相對和絕對共用之觀念。例 如’假如5個使用者各以相對共用ι〇〇定義且所有5個使用 者為作用,排程器4 4試圖給予各使用者丨/ 5之系統cpu資源 20。假如只有其中4個使用者為作用,排程器以試圖給予 作用之各使用者1/4之系統cpu資源2〇。它們各依據其優先 順序和同時作用之所有相對共用使用者之總體優先順序得 到系統之相對共用。系統之絕對共用亦可以給予一使用 者。例如,一使用者可以給予系統之絕對共用2〇%。此意 義為無論多少相對共用使用者為作用,此使用者得到2〇% <系統資源。該相對共用使用者為給予剩餘之成比率共 用,在此案例中為80〇/〇之CPU資源。 ^ 在步驟5 0巾’使用者以在由⑷使用者最小共用指定μ, (b)當使用者消耗中央處理器(cpu)資源2〇時往前推進之第 人工日時鐘(ATOD)2 3,(c)鬲調度優先順序限制(t〇d_ TIED)28以及(d)低調度優先順序限制(最大降落量定義 之界限内決定的值35定處理器使用之優先順序。 至於在系統資源之共用之使用者限制為在系統目錄中以 特足絕對或是相對值定義。例如,心目錄為用以定義 用者至系統。各使用者具有—人口可以包含纽繼(共 敛述24、26以制訂何種共用,系統資源相對或是絕對 為此使用者能夠具有。當系統正運行時,此共用亦可以、 用SET SHARE(設足共用)命令加以動態地修正。 -41 - 本紙張尺度適用中國國家標準(CNS) A4規格(210X297公爱) 526452
、使:者為藉由’在界限内定優先順序,而給予系統資源,此 万式意義為使用者為依據其優先順序35而給與系統資源如 CPU資源2^但是只要—新計算之優先順序不造成使用者 之系,/、子洛在其足義之最小共用28以下或是超越其其定 義之最大共用26。例如|VM排程器44之案例中,一使用 者可以定義為具有最小之相對或是絕對共用24以及一最大 之相對或疋、{對共用2 6。當計算—使用者之調度優先順序 值3 5時,廷些疋義形成考慮之界限。例如,假如一使用者 被扣疋相對共用2 4為200以及,限制固定,絕對最大共用2 6 20%以及只有此使用者另一相對2〇〇使用者為作用,該,限 制固,,使用者將在2〇%最大界限26内制定優先順序,縱使 假如最大界限尚未制訂時,該使用者可以接收5〇%之系统 CPU資源20, 、’使用者最Φ共用W妓義之使用者,麟該使用者制訂 =相對共用為所有作用之使用者整體相對共用之比率而取 得系統資源共用。該使用者最小共用制訂在該作用之使用 者的VM目錄中,以及與其餘共用相同地計算(在上文說 明但是由該目錄使用制訂之最小共用。該使用者最大^ 用亦為相同計算’除了依據在㈣目錄中的使用者之制訂最 大共用2 6以外。 •人工曰時’(ATOD)23為系統範圍之日時鐘格式化搁位。 一特別< CPU資源不能同時為工作(亦即消耗)和等待,以 及該值ATOD 23在使用者(任何使用者)工作為在系統上完 成時的時間内增加,如與系統管理負擔區別。系統之調度 -42-
526452
年;]
五、發明説明(40 ) 優先順序計算為依據以及和ATOD值23比較。’ATOD’23和 ’ATOD2’2 1二者為人工日時鐘。其中ATOD或是AT0D2不 是實際時鐘,而是由款體以TOD時鐘格式維持的欄位以及 其中時間值為累加。軟體合適地更新這些欄位。AT0D2累 加系統實際運行使用者工作之時間加上系統等待之時間。 ATOD累加系統實際運行使用者工作之時間以及在特定狀況 之下,亦累加系統等待之時間。所以,ATOD實際為以 AT0D2累加之時間子集合。 裝 線 以發生在作用之等待處理而非單獨在排程器路徑之等待 時間的更新(如Davison之尚在審理中的申請案,S/N 08/252,864號之案例),是本發明較佳具體實施例的基本特 徵。如將在下文討論,以作用之等待處理中的所有等待時 間而非在正常排程器路徑的所有等待時間(如上文討論只加 上小部分等待時間)更新ATOD之理由,為只值得在特定狀 況之下包含完全的等待時間在ATOD中,一作用之等待已經 至少為例如250 ms。因此,ATOD通常累加使用者工作時 間。大多數系統為該情形。然而,具有特定狀況導致一些 等待時間包含在ATOD。迄今,那些狀況已經非常受限制或 是稀少,而且包含在ATOD之等待時間量為可忽略。如本發 明,更多等待時間在更常發生的特定狀況下包含在ATOD之 累加中:也就是說,在低負載情況期間(在作用之等待常式 期間),當具有限制之使用者和中央處理器例如已經為連續 作用之等待250 ms或是更多。 優先順序限制3 5為由’高調度’和’低調度•值定義。為防止 -43- 本紙張尺度適用中國國家標準(CNS) A4規格(210X 297公釐) 526452 si, e, 4 A7 B7 五、發明説明(41 ) 特別使用者調度優先順序3 5距離現行at〇d值2 3、排程 器44線太遠,例如限制介於現行at〇d 23和使用者調度優 先順序3 5之間的差異為稱為高調度優先順序限制(t〇d_ TIED)28和低調度優先順序限制(最大降落量)i8之最大 值。:使用者調度優先順序35將不會被限制在那些限制外 侧以防止該使用者之錯誤回應時間。 在步驟52中資源2〇消耗為使用者藉由⑷建立指定至所選 擇使用者之使用者最大共用指定26,⑻提供限制串列27 及(c )提供田使用者正〉肖耗cpu資源2 q以及當cpu等待時 裝 任則推進(第二人工日時鐘(AT〇D2)2i,而限制為界限 1 8、2 8内的特定絕對值。 訂 串列為使用者之資源消耗已經達到或是超越由系統 目? t之其SHA職述24、26或是SET SHARE命令所允許 :取大絕對共用時之使用者串列27。當在此串列η上時, 使用:不由排程器44調度,所以其資源2〇消耗被加以限 :且::用者可以最大絕對共用或是最大相對共用加以制 可且廷些限制可以為限制固定。具有其 曰 線 共用(絕對或是相對)的限制定去 办i足取大 之二:士 :t以限制。亦具有和限制固定功能不同工作 列上而加制不定使用者不藉由置放在該限制串 列上而加以限制。 W〒 如本發明’為確定限 串列上或异π w,、 不太快置放在該限制 之使用限制串列移除,當-使用者為限制 Ί度優“序重新計算為《最大降落量 -44 - 91 6. 4 526452
AT ___ BJ _ 五、發明説明(42 ) (現行ATOD + N *偏移)之新調度優先順序以及該使用者達到 其限制時被加入至該限制串列。當AT0D2計算為在使用者 限制串列優先順序之一小時間片内時,該使用者由限制串 列移除,其中N為某預先選擇值,例如n = 4。 在步騾5 4中使用者之限制事列2 7優先順序被決定,以及 依據第二人工曰時鐘(AT0D2) 2 1之往前前進決定是否將使 用者由限制串列移除。 在步騾56中當CPU為閒置時提供進入工作32之一作用之 等待連續監视器30。此,作用之等待常式,或是,作用之等待 機構為在多處理系統中使用之方法,藉由此方法不具工作 執行之一處理,進入迴路以及主動尋找變成可利用之工作 而非載入失能(Disable)之等待狀態。此方法解除處理器必 須認知工作已經由堆疊該工作之處理器堆疊至工作正被堆 疊在上面之處理器堆疊的負荷。 在步驟58中優先順序為依據最大使用共用26指定至使用 者’該共用為在目錄中由其限制定義26限制的使用者可利 用〈最大共用CPU資源。當排程器44依據只有該使用者可 利用之共用指定優先順序時具有時間以及當由於其為限制 之使用者時可利用之共用多於所允許之共用時具有時間。 當使用者受限制(藉由呈現在限制串列2 7中)以及該可利用 《共用多於使用者所允許之共用26時,,最大使用共用,26 為用以計算使用者之調度優先順序3 5。 在步驟60中當低調度優先順序(最大降落量)18被使用者 調度優先順序3 5計算之新值超越時,使用者被置放在限制 __ -45- ^紙張尺度適用中國國豕標準(CNS) A#規格撕公愛) — 526452
率列2 7上。調度優先順序3 5在不同時間為使用者計算。為 決定是否使用者必須被置放在限制串列2 7上的檢查在使用 者調度優先順序35重新計算時製成。 在步騾62中在限制串列上的停留期間為參考at〇d 23和 ATOD 21加以決定。當一使用者的調度優先順序3 5被計算 時’為將來一事件將發生的ATOD 23值之預測,該事件為 使用者小時間片之結束。ATOD 23之此預測值使用為使用 者碉度優先順序3 5。假使決定使用者必須置放在限制串列 27上時,AT0D2 21而非aT0D 23使用為將使用者由限制寧 列移除之基準。依據AT0D 23之使用者調度優先順序之後 必須改變為限制串列優先順序3 5 (離開該限制串列2 7之預 測時間),必須不以AT〇D2 21為基準。用以執行此之計算 為:限制串列優先順序=AT0D2 + (調度優先順序-atod)。 在步驟6 4中決定何時限制共用使用者正競爭cpu。 在步驟6 6中決定何時系統資源如中央處理單元(Cpu )已 經連續以及在作用之等待狀態一段定義之即時間隔(不中斷 地執行,也就是說,不用尋找及執行任何使用者工作32)。 當進入作用之等待狀態以及和現行TOD值比較時此決定為 藉由儲存真實系統TOD時鐘而做成。 在步騾68中ATOD 23增加以及AT0D2 21被更新。 如本發明較佳具體實施例,ATOD 23之此增加為在作用 足等待處理3 0期間完成。每次經由作用之等待碼迴路,作 一檢查以決定是否具有使用者在限制哞列2 7上。假使具有 使用者在限制串列上以及假使作用之等待處理已經連續執 -46-
526452
526452 之間的時間間隔被大大地減低。較小時間間隔意義為 度增加。 限制串列27為用以當該使用者接收多於所允許(26)之 CPU資源20時保持檢查中的使用者。當此情形發生時,使 用者被暫時置放在限制串列27上。排程器44檢查該串列以 決足是否為將使用者由限制串列27移去之時間。這些檢查 視為由限制申列,檢查移除,。此,檢查,為事件驅動。在本 發明之前,限制串列在排程處理和調度此使用者工作期間 由作用之處理器檢查(具有使用者工作執行之那些處理 器)。如本發明,作用之等待機構亦造成這些檢查。 裝 訂 線 表1陳述本發明較佳具體實施例方法解釋之虛擬碼。該虛 擬碼為參考圖2括號[]中的步騾加以註解。和表丨相連參考 圖1,調度器40(稱為HCPDSPCH)在行2開始由調度器迴路 加以製作,監視器30在行18開始由作用之等待常式加以製 作,以及排程器4 4在行3 6開始由排程優先順序重新計算碼 加以製作。在行20,具有新的工作執行·例如,進入之工作 3 2不是2白。在行2 5中,2 5 〇毫秒之參考可加以調諧為不 同系統之合適預選時間值。在行1 i和2 7中,自上次等待時 間被加入後之等待時間被加入至ATOD以及藉由在行3 2呼 叫調度器而加入至ATOD2 ^等待時間在等待常式期間藉由 呼叫調度器而加入之理由是本發明的關鍵。先前,等待時 間從未加入至ATOD2直到行11處理發生為止。在依低負載 情況中,直到該處理發生可能為很長一段時間。迄今,此 情形已經導致在限制串列27上的使用者保持在串列上太長 -48- 本紙張尺度適用中國國家標準(CNS) A4規格(210X 297公釐) 526452 A7 —---------- . .______B7 五、發明説明(46 ) 裝 的時間:使用此發明,㈣、之等待時間在低負載情況為更 炙、繁地增加以及孩P艮制串列同時被檢查,造成應該離開限 制_列之使用者在必須離開時離開。表i,行35以圖i之線 82,7F,具有額外意義為作用之等待連續監視器去到調 度益4 0以當作用 < 等待連續監視器3 〇增加等待時間至 ATOD時更新AT〇D2。表1之行5()提到的新優先順序為使用 者重新計算之調度優先順序(亦即—㈣),該優先順序為用 以決疋何時使用者將被再次調度,此調度優先順序由最大 降落量之限制和T0D-丁㈣加以限制。排程器以在行…吏 用此優先順序以按照優先順序放置使用者在調度串列3 7 上:在表1之行54等式中的數字”4,,代表實驗性定義之最佳 數竽,以及可以在不脫離本發明範疇下加以改變。在表工之 灯6 1中’使用者依據其新計算之調度串列優先順序3 $在調 度串列3 7上重新排順序。 訂 表1 :排程演算法 1 排程演算法: 線 2 HCPDSPCH(排程迴路之開始):
3 IF沒有工作將調度THEN 4 去到作用之等待常式·
5 ELSE 6 執行優先順序系統工作(亦即作用系統管理負 7 擔’非使用者工作). 8 1F 一使用者之小時間片剛結束 -49- 本紙痕尺度適用中國國豕標準(CNS) A4規格(210X297公爱) 526452
五、發明説明(47 9 THEN呼叫排程器以重新計算 1〇該使用者之調度優先順序 1U以使用者時間將ATOD往前推進[步驟68] 1 lb以使用者時間和等待時間將〇D2往前推進· 12假如AT〇D2在該使用者之限制串列優先順序 13 之一小時間片内時時, 14 15 16 17 18 19 20 2 1 22 23 24 25 26 27 28 29 30 3 1
將使用者由限制串列移除· [步驟7〇] 使用該調度串列以依據調度串列優先順序 實際執行使用 者工作. 去到HCPDSPCH(調度器迴路之結束); 作用之等待常式處理 : FINDWORK (迴路之開拾): 1F具有新工作執行時THEN去到 _度器以執行工作項目· ELSE
[步驟5 6] 装 IF具有使用者在限制串列上 AND作用之等待處理已經 執行250毫秒THEN DO 增加等待時間至ATOD. 备又疋指不器,以致於 調度器將更新ATOD2 以及檢查該限制串列以 將使用者移除. -50- 本紙張尺度適财S时標準(CNS) A4規格(210 X 297公釐) 64] ^ 驟 68] 526452 :A7! -Β7; 五、發明説明 48 3 2 去到調度器H CPDSPCH 3 3 End 34 END 3 5 去到FIND WORK(迴路之結束); 3 6 排程器優先順序重新計算: 3 7 依據在使用者目錄入口中制訂的相對或是 3 8 絕對共用和其他登錄在非待用 3 9 (等待串列之) 4 0 使用者上的共用計算 4 1 系統之使用者共用· 42 iF该使用者之共用超越使用者所允許之最大共用 4 3 THEN使用該最大共用於 44 π偏移”計算· 4 5 依據使用者共用' 小時間片大小 4 6 之大小以及依據該使用者在 4 7 前一時間片上之超限運轉 4 8 的調整計算使用者 4 9 之’’偏移” 5 0 新的優先順序被決定為等於 5 1 舊優先順序加上剛計算 52 53 54 55 之偏移 [步驟 5 0,5 8 ] IF使用者新的優先順序超越最大降落量 (現行ATOD+ 4*偏移)AND此使用者為一 限制之使用者AND該使用者以其最大共用 -51 - 本紙張尺度適用中國國家標準(CNS) A4規格(210X297公爱) 裝 訂 線
56 排程(亦即正達到其限制) 57 THEN 58 將使用者增加至限制串列 59 ELSE 60 將使用者以優先順序 61 重新排序在調度串列上. 62 end; [步驟 52,54,60,62] 在先前技藝之上的優點 裝 :本發明之一優點為提供一種排程器系統和方法,以加強允 許使用者在低負載情況中存取系統資源接近或是等於其硬 性限制。 本發明之另一優點為提供一種排程器,加強系統資源之最 訂 佳化管理以及減低使用者在該資源管理量或是可使用性上 的不安。 線 本發明之另一優點為提供一種系統和方法,因此監視資料 使用為系統使用的排程演算法之一回饋機構以決定使用者 優先順序以及決定接下來何使用者必須被許可加以執行。 本發明之另一優點為提供一種系統和方法,用於不會太快 排程系統資源給藉由置放該使用者在限制_列上而具有限 制存取之使用者,以及不會太慢將使用者由限制串列移 本發明之另一優點為提供一種系統和方法,用於不會太慢 排程系統資源給藉由使資源能夠排程而具有限制存取之使 -52-
526452 A7 E7 五 、發明説明(50 ) 用者,以及不會太快禁止資源之排程。 另一具體實施例 · 將欣賞地是,雖然本發明具體實施例已經為解釋目的而說 明,但是各種不同修正可以在不脫離本發明精神和範疇下 加以製作。特別是,提供一種程式儲存或記憶體裝置如固 態或是流體傳輸媒體,磁性或是光學接線,磁帶或是磁 碟,或是類似物用於儲存由如本發明方法及/或其元件如本 發明系統的結構控制電腦操作之機器可讀取的信號為在本 發明範疇内。 另外,該方法之步驟可以在一般電腦之任何電腦如IBM系 統3 90、AS/400、PC或是類似電腦中以及依據由任何程式 語言如C + +、Java、P 1/1、Fortran或是類似語言所產生之 至少一或是至少一部分程式模組或物件來執行。以及另 外,各該步驟或是製作各該步驟之一檔案或物件或類似物 可以由特殊目的硬體或是為該目的設計之電路模組加以執 行。 因此,本發明保護範疇只由下列申請專利範圍及其等效條 款加以限制。 -53- 本紙張尺度適用中國國家標準(CNS) A4規格(210X297公釐) 裝 訂 線

Claims (1)

  1. 以 0452 、申請專利範圍 括:::用者將系統資源之使用予以排程之方法,包 維持一第一時鐘; 維持一第二時鐘; 在一調度處理期間, 假使有玉作將執行時,只有當該使用者 ::::Γ資源之使用依據調度優先順序排程給= 將該第一時鐘往前推進一使用者時間;以及 以及將该弟二時鐘往前推進—使用者時間和等待時間; 在一等待處理期間, 假使有工作將執行時,呼叫該調度處理; 否則’計時等待時間;以及 態 假使在等待時間超越一預定值時有-處在等待狀 的使用者時’則增加第_時鐘—該等待時間 度處理。 1 2·如申請專利範圍第η之方法,更包括下列步驟: 在排私為處理期間, "" 決定該使用者之使用者共用; 假使該使用者共用超越一預先定義之 時,依據該使用者共用和在一先前時間片上的任何超 運轉之調整時間片來計算使用者偏移; ^ 該 計算等於現行調度優先順序加上該使用者偏移的 -54- 本纸張尺度適用中國國家標準(CNS) Α4規格(210X297公董) 使用者新調度優先順序; ”假使該新調度優先順序以該使用者偏移函數超越該 時鐘時’置放該使用者為等待狀態以及呼叫該調度 處理,否則,呼叫該調度處理;以及 :、在調度處理期間’當該使用者完成—時間片時,啤叫 遠排程器處理。 如申請專利範圍第2項之方法,更包括下列步騾: 甚至在調度處理期間, 假使該使用者為等待狀態以限制優先順序在咳第二 時鐘之-時間片_,將該使用者由限制狀態移除' -種用於在多數受限制使用者間將系統資源之使用予以 排程之方法,包括下列步騾·· 維持一第一日時鐘的時間; 維持一第二日時鐘的時間; 執行一調度常式; 執行一作用之等待常式; 執行一優先順序再計算常式; 該優先順序再計算常式包含下列步驟: 計算一第一使用者之一使用者共用; 假使該使用者之共用超越一預先定義之最大允許共 用時,依據該使用者共用和在一先前微小時間片上的ς 何超限運轉所調整之時間片大小來計算使用者偏移; 計算等於舊優先順序加上該偏移之該使用者調产 先順序; 又 -55- 六、申請專利範圍 假使純用者調度優先順序超越—等於該第 加上該使用者偏移之函數的最大落差量值,以及此為— :限制之—使用者,以及此使用者正以其最大共用排程 、則將忒使用者増加至一限制串列中; 否則’以優先順序將該使用者記錄在調度串列上· 以及 ’ 執行Μ碉度器常式; 該調度器常式包含下列步騾: 假使沒有工作可調度時,則執行該作用之等待, 式;否則,執行任付優先順序之系統工作;以及之後 假使該使用者的小時間片剛結束時,執行該排程著 常式;否則, 將S第日時鐘之時間往前推進一使用者時間; 將,亥第一日時鐘足時間往前推進一使用者 待時間; 、假使在該限制串列上之該使用者為在該第二日時鐘 I -小時間片内時,將該使用者由限制串列移除;以及 依調度串列優先順序調度使用者;以及 該作用之等待常式包含下列步驟: 假使有新工作將執行時,則執行該調度器常式;否 則, 假使有使用者在該限制串列.上以及作用之等待處理 已經超越一預先定義之限制時,則 增加等待時間至該第一曰時鐘;以及 -56- 本紙張尺度適用中國國家標準(CNS) Α4規格(210X297公袭)
    加至該限制串列 以及不會太晚 執行該調度器常式 因此使用者不會太早增 由该限制串列移除。 .-種將系統資源排程之方法,包括下列步驟: (1) ;在多個界限内將處理器使用之使用者以優先順序處 理,该等界限由下列方式界定: 广(二)使用者最小使用,(b)當使用者正消耗系統資源 時往前推進之一第一人工曰眭於 、 人工曰時鐘,(c)一鬲調度優先順序 限制,以及(d)—低調度優先順序限制; (2) 將使用者消耗之中央處理器單元加以限制為該界限 内的特定值,該限制是以以下方式完成的:(a)建立指定 至所選擇使用者之最大限制共用指定、⑻提供一限制亭 列以及(c )提供當使用者正消耗系統資源以及當該系統 資源正等待時往前推進之一第二人工日時鐘; (3) 決足限制串列優先順序以及依據該第二人工曰時鐘 之往前推進決定何時由該限制串列移除; (4 )當該CPU為閒置時,提供進入工作的作用之等待相 互作用連續監視器; (5) 依據最大使用共用,指定優先順序給使用者; (6) 當該低調度優先順序限制被超越時將使用者置放在 該限制串列上; (7) 將該第一人工日時鐘轉換為該第二人工曰時鐘決定 在該限制串列上的停留期間; (8) 認知何時該限制共用使用者正爭奪CPU資源; -57- 本紙張尺度適用中國國家標準(CNS) A4規格(210 X 297公釐) 充 申請專利範圍 知何㈣系歸源已經錢續作用之等待狀態-二疋我 < 真貝時間區間以及由此以等待時間回應更新該 弟一人工日時鐘和該第二人工日時鐘;以及 上在低負載情形下,當該第二人工曰時鐘值以實質 匕Q在省第一人工日時鐘内的所有等待時間超越該限 :串列優先順序時,將使用者由該限制串列移除。 6· Z由—機器可讀取之程式儲存裝置,實際地具體實施 *备可執仃《指令程式以執行用於將系統資源之使用排 程給使用者的方法步騾,該方法步騾包括: 維持一第一時鐘; 維持一第二時鐘; 在一調度處理期間, ^假使有工作將執行時,只有當該使用者不在等待狀 怨時’將系統資源之使用依據調度優先順序排程給該使 用者;否則 將該第一時鐘往前推進一使用者時間;以及 、將孩第二時鐘往前推進一使用者時間和等待時間,· 在等待處理期間, 假使有工作將執行時,呼叫該調度處理;否則, 計時等待時間;以及 假使在等待時間超越一預定值時有一 /古田土 d ^ 為寺待狀態的 ^者Bf ’以增加第-時鐘一該等料間和呼叫該調度 -58- 本紙張尺度適财®目家標準(CNS) A4規格(210X297公爱) 526452 A8 B8 C8
    7· —種製造物品,包括: 一電腦可使用之媒體,具有電腦可讀取之程式碼裝置 具體實施在其中以用於將系統資源之使用排程給使用 者,在該製造物品中的該電腦可讀取之程式裝置包括: 用於使電腦將維持一第一時鐘起效應之電腦可讀取程 式碼裝置; 用於使電腦將維持一第二時鐘起效應之電腦可讀取之 程式碼裝置; 用於使電腦在調度處理期間起效應之電腦可讀取之程 式碼裝置; 裴 假使有工作將執行時,只有當該使用者不在等待狀 4時將系統’貝源之使用依據調度優先順序排程給該使 用者;否則 ^ Ρ 將孩第一時鐘往前推進一使用者時間;以及 將該第二時鐘往前推進一使用者時間和等待時間; 以及 ^ 線 用於使電腦在等待處理期間起效應之電腦可讀取之程 式碼裝置; " 假使有工作將執行時,呼叫該調度處理;否則 计時寺待時間;以及 假使在等待時間超越一預定值時有—為等待狀態的使 =者時’以增加第-時鐘—該等待時間和呼叫該調度處 8· —種用於將將系統資源之使用排程給使用者之系統勹 -59-
    526452 申請, 御 括: 弟一時鐘; 一第二時鐘; 一調度處理, 用於 假使有X作將執行時,只有當該使用者不在 怨時,將系統資源士你、 争狀 用者;㈣ 依據毅優先順序神給該使 將孩第一時鐘往前推進一使用者時間;以及 以及將$第—時鐘往前推進一使用者時間和等待時間; 一寺·待處理,用於: 假使有工作將執行時,呼叫該調度處理 計時等待時間;以及 否則 假使在等待時間超越-預定料有-為等待狀錢的 使用者時L第-雜—該等待時間何叫該調度 處理。 9·如申請專利範圍第8項之系統,更包括: 一排程器處理,用於·· 決定該使用者之使用者共用; 假使該使用者共用超越一預先定義之最大許可共用 時’依據# 亥使用者共用和依據該使用者共用和在一先前 時間片上的任何超限運轉之調整時間片計算使用者偏 移; 計算等於現行調度優先順序加上該使用者偏移之該
    60- 526452
    申請專利範圍i ABCD 麵 使用者之新調度優先.順序; 假使該新調度優先順序以該使用者偏移函數超越該 第一時鐘時’置放該使用者為等待狀態以及呼叫該調度 處理;否則,呼叫該調度處理;以及 該調度處理,在該使用者完成一時間片時,啤叫該排 程器處理。 10.如申請專利範圍第9項之系統,更包括: 該調度處理更進一步用於: 假使該使用者為等待狀態以限制優先順序在該第二 時鐘之一時間片内時,將該使用者由限制狀態移除。 -61 - 本纸張尺度適用中國國家標準(CNS) A4規格(210X297公釐)
TW088122782A 1999-03-25 1999-12-23 System and method for scheduling system resources TW526452B (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US09/276,525 US6438704B1 (en) 1999-03-25 1999-03-25 System and method for scheduling use of system resources among a plurality of limited users

Publications (1)

Publication Number Publication Date
TW526452B true TW526452B (en) 2003-04-01

Family

ID=23056982

Family Applications (1)

Application Number Title Priority Date Filing Date
TW088122782A TW526452B (en) 1999-03-25 1999-12-23 System and method for scheduling system resources

Country Status (7)

Country Link
US (1) US6438704B1 (zh)
EP (1) EP1039383B1 (zh)
JP (1) JP3606555B2 (zh)
KR (1) KR100352668B1 (zh)
AT (1) ATE395663T1 (zh)
DE (1) DE60038837D1 (zh)
TW (1) TW526452B (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102955559A (zh) * 2011-08-24 2013-03-06 宏碁股份有限公司 节能系统以及节能方法
TWI394027B (zh) * 2008-10-27 2013-04-21 Tatung Co 頻率調整方法及使用此方法的電腦程式產品
TWI447644B (zh) * 2006-05-19 2014-08-01 Ibm 摘取cpu時間設備

Families Citing this family (56)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7526767B1 (en) * 1998-08-28 2009-04-28 Oracle International Corporation Methods for automatic group switching according to a resource plan
US7020878B1 (en) 1998-08-28 2006-03-28 Oracle International Corporation System for allocating resource using the weight that represents a limitation on number of allowance active sessions associated with each resource consumer group
US7451448B1 (en) * 1998-08-28 2008-11-11 Oracle International Corporation Methods for selectively quiescing a computer system
JP3739610B2 (ja) * 1999-09-24 2006-01-25 松下電器産業株式会社 訪問計画生成装置
US20020198996A1 (en) * 2000-03-16 2002-12-26 Padmanabhan Sreenivasan Flexible failover policies in high availability computing systems
US7627694B2 (en) * 2000-03-16 2009-12-01 Silicon Graphics, Inc. Maintaining process group membership for node clusters in high availability computing systems
US20010049710A1 (en) * 2000-05-16 2001-12-06 Curey Randall K. Partitioned executive structure for real-time programs
US7849463B2 (en) 2000-06-02 2010-12-07 Microsoft Corporation Dynamically variable idle time thread scheduling
US7137117B2 (en) * 2000-06-02 2006-11-14 Microsoft Corporation Dynamically variable idle time thread scheduling
KR20020035580A (ko) * 2000-06-27 2002-05-11 요트.게.아. 롤페즈 스케줄을 결정하는 방법, 스케줄러 및, 시스템
US6795873B1 (en) * 2000-06-30 2004-09-21 Intel Corporation Method and apparatus for a scheduling driver to implement a protocol utilizing time estimates for use with a device that does not generate interrupts
KR100487543B1 (ko) * 2000-09-01 2005-05-03 엘지전자 주식회사 시피유 스케쥴링 방법
US7096469B1 (en) * 2000-10-02 2006-08-22 International Business Machines Corporation Method and apparatus for enforcing capacity limitations in a logically partitioned system
US7032222B1 (en) * 2000-10-13 2006-04-18 Hewlett-Packard Development Company, L.P. Method and system for determining resource allocation to users by granting request based on user associated different limits and resource limit
US6671658B2 (en) * 2000-12-23 2003-12-30 Hewlett-Packard Development Company, L.P Method for service level estimation in an operating computer system
US20020147966A1 (en) * 2001-02-14 2002-10-10 Ncr Corporation Operating software performance monitor
US7170862B1 (en) 2001-07-31 2007-01-30 Cisco Technology, Inc. Partitioning a network element into multiple virtual network elements
US7143411B2 (en) * 2002-03-15 2006-11-28 Hewlett-Packard Development Company, L.P. Capping processor utilization
KR100471746B1 (ko) * 2002-07-26 2005-03-16 재단법인서울대학교산학협력재단 연성 실시간 태스크 스케줄링 방법 및 그 기록매체
AU2002360777A1 (en) * 2002-12-27 2004-07-22 Unisys Corporation Improving the accuracy of the estimation of computer resource usage
US20060179136A1 (en) * 2002-12-27 2006-08-10 Loboz Charles Z Accuracy of the estimation of computer resource usage
US7191320B2 (en) * 2003-02-11 2007-03-13 Via Technologies, Inc. Apparatus and method for performing a detached load operation in a pipeline microprocessor
JP4107155B2 (ja) * 2003-05-12 2008-06-25 日本電気株式会社 ネットワークセッション制御システム、ネットワーク管理装置およびプログラム
US7751315B1 (en) * 2003-07-15 2010-07-06 Microsoft Corporation Shared network path contention reduction
US7406691B2 (en) * 2004-01-13 2008-07-29 International Business Machines Corporation Minimizing complex decisions to allocate additional resources to a job submitted to a grid environment
US7562143B2 (en) * 2004-01-13 2009-07-14 International Business Machines Corporation Managing escalating resource needs within a grid environment
US7552437B2 (en) * 2004-01-14 2009-06-23 International Business Machines Corporation Maintaining application operations within a suboptimal grid environment
US7266547B2 (en) * 2004-06-10 2007-09-04 International Business Machines Corporation Query meaning determination through a grid service
US7752415B2 (en) * 2004-12-22 2010-07-06 International Business Machines Corporation Method for controlling the capacity usage of a logically partitioned data processing system
US7668741B2 (en) * 2005-01-06 2010-02-23 International Business Machines Corporation Managing compliance with service level agreements in a grid environment
US7502850B2 (en) * 2005-01-06 2009-03-10 International Business Machines Corporation Verifying resource functionality before use by a grid job submitted to a grid environment
US7761557B2 (en) * 2005-01-06 2010-07-20 International Business Machines Corporation Facilitating overall grid environment management by monitoring and distributing grid activity
US20060149652A1 (en) * 2005-01-06 2006-07-06 Fellenstein Craig W Receiving bid requests and pricing bid responses for potential grid job submissions within a grid environment
US7707288B2 (en) * 2005-01-06 2010-04-27 International Business Machines Corporation Automatically building a locally managed virtual node grouping to handle a grid job requiring a degree of resource parallelism within a grid environment
US7590623B2 (en) * 2005-01-06 2009-09-15 International Business Machines Corporation Automated management of software images for efficient resource node building within a grid environment
US7793308B2 (en) * 2005-01-06 2010-09-07 International Business Machines Corporation Setting operation based resource utilization thresholds for resource use by a process
US7562035B2 (en) * 2005-01-12 2009-07-14 International Business Machines Corporation Automating responses by grid providers to bid requests indicating criteria for a grid job
US7571120B2 (en) * 2005-01-12 2009-08-04 International Business Machines Corporation Computer implemented method for estimating future grid job costs by classifying grid jobs and storing results of processing grid job microcosms
US7467196B2 (en) * 2005-01-12 2008-12-16 International Business Machines Corporation Managing network errors communicated in a message transaction with error information using a troubleshooting agent
US7472079B2 (en) * 2005-01-12 2008-12-30 International Business Machines Corporation Computer implemented method for automatically controlling selection of a grid provider for a grid job
US20060195845A1 (en) * 2005-02-28 2006-08-31 Rhine Scott A System and method for scheduling executables
US7908606B2 (en) * 2005-05-20 2011-03-15 Unisys Corporation Usage metering system
US7979460B2 (en) 2006-02-15 2011-07-12 Sony Computer Entainment America Inc. Systems and methods for server management
US7844970B2 (en) * 2006-08-22 2010-11-30 International Business Machines Corporation Method and apparatus to control priority preemption of tasks
US8286173B2 (en) * 2007-03-23 2012-10-09 Oracle America, Inc. Methods and apparatus for window-based fair priority scheduling
US8046766B2 (en) * 2007-04-26 2011-10-25 Hewlett-Packard Development Company, L.P. Process assignment to physical processors using minimum and maximum processor shares
US8276143B2 (en) * 2008-03-10 2012-09-25 Oracle America, Inc. Dynamic scheduling of application tasks in a distributed task based system
US8250579B2 (en) * 2008-06-27 2012-08-21 Oracle America, Inc. Method for stage-based cost analysis for task scheduling
WO2010032205A1 (en) * 2008-09-17 2010-03-25 Nxp B.V. Electronic circuit comprising a plurality of processing devices
US9063795B2 (en) * 2012-12-19 2015-06-23 International Business Machines Corporation Adaptive resource usage limits for workload management
WO2015101419A1 (en) * 2014-01-02 2015-07-09 Sky Atlas Iletisim Sanayi Ve Ticaret Anonim Sirketi Method and system for allocating resources to resource consumers in a cloud computing environment
US9411629B1 (en) 2015-03-10 2016-08-09 International Business Machines Corporation Reducing virtual machine pre-emption in virtualized environment
US10931674B2 (en) * 2018-04-30 2021-02-23 Paypal, Inc. Detecting whether to implement one or more security measures on a shared resource
US10768981B2 (en) * 2018-06-21 2020-09-08 Microsoft Technology Licensing, Llc Dynamic time slicing for data-processing workflow
JP7363653B2 (ja) * 2020-04-15 2023-10-18 富士通株式会社 割当制御プログラム、割当制御方法および情報処理装置
CN117376423B (zh) * 2023-12-08 2024-03-12 西南民族大学 一种深度学习推理服务调度方法、系统、设备及存储介质

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4183083A (en) 1972-04-14 1980-01-08 Duquesne Systems, Inc. Method of operating a multiprogrammed computing system
US4551812A (en) 1981-06-17 1985-11-05 Cyborex Laboratories, Inc. Energy controller and method for dynamic allocation of priorities of controlled load curtailment to ensure adequate load sharing
US4481583A (en) 1981-10-30 1984-11-06 At&T Bell Laboratories Method for distributing resources in a time-shared system
US4388688A (en) 1981-11-10 1983-06-14 International Business Machines Corp. Shared TOD clock modification bit
US4989133A (en) 1984-11-30 1991-01-29 Inmos Limited System for executing, scheduling, and selectively linking time dependent processes based upon scheduling time thereof
US4631674A (en) 1985-02-05 1986-12-23 International Business Machines Corporation Active wait
US4736318A (en) 1985-03-01 1988-04-05 Wang Laboratories, Inc. Data processing system having tunable operating system means
CA1329432C (en) * 1988-11-02 1994-05-10 William Davy Method of memory and cpu time allocation for a multi-user computer system
IE61336B1 (en) 1989-10-02 1994-11-02 Sportables Limited A method for controlling the operation of a computer to handle interrupts
US5193187A (en) 1989-12-29 1993-03-09 Supercomputer Systems Limited Partnership Fast interrupt mechanism for interrupting processors in parallel in a multiprocessor system wherein processors are assigned process ID numbers
US5325525A (en) * 1991-04-04 1994-06-28 Hewlett-Packard Company Method of automatically controlling the allocation of resources of a parallel processor computer system by calculating a minimum execution time of a task and scheduling subtasks against resources to execute the task in the minimum time
JPH0774984B2 (ja) 1991-06-10 1995-08-09 インターナショナル・ビジネス・マシーンズ・コーポレイション システム資源利用率測定方法とデータ処理システム
US5291599A (en) 1991-08-08 1994-03-01 International Business Machines Corporation Dispatcher switch for a partitioner
US5375202A (en) * 1993-01-04 1994-12-20 Xerox Corporation Dispatching and scheduling memory operations in an electronic printing system
US5623404A (en) * 1994-03-18 1997-04-22 Minnesota Mining And Manufacturing Company System and method for producing schedules of resource requests having uncertain durations
CA2186349C (en) 1994-05-12 2008-09-23 James C. Bunnell Cpu activity monitoring through cache watching
JP3588485B2 (ja) 1994-08-26 2004-11-10 富士通株式会社 プロセススケジューリング方式
US5615121A (en) * 1995-01-31 1997-03-25 U S West Technologies, Inc. System and method for scheduling service providers to perform customer service requests
US5668942A (en) * 1995-06-07 1997-09-16 Xerox Corporation Generic system for describing and using resources for print engine scheduling
JPH0954699A (ja) * 1995-08-11 1997-02-25 Fujitsu Ltd 計算機のプロセススケジューラ
US5987492A (en) * 1997-10-31 1999-11-16 Sun Microsystems, Inc. Method and apparatus for processor sharing

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI447644B (zh) * 2006-05-19 2014-08-01 Ibm 摘取cpu時間設備
TWI394027B (zh) * 2008-10-27 2013-04-21 Tatung Co 頻率調整方法及使用此方法的電腦程式產品
CN102955559A (zh) * 2011-08-24 2013-03-06 宏碁股份有限公司 节能系统以及节能方法

Also Published As

Publication number Publication date
DE60038837D1 (de) 2008-06-26
JP3606555B2 (ja) 2005-01-05
EP1039383A3 (en) 2006-08-23
ATE395663T1 (de) 2008-05-15
JP2000284975A (ja) 2000-10-13
EP1039383A2 (en) 2000-09-27
KR20010006756A (ko) 2001-01-26
US6438704B1 (en) 2002-08-20
KR100352668B1 (ko) 2002-09-13
EP1039383B1 (en) 2008-05-14

Similar Documents

Publication Publication Date Title
TW526452B (en) System and method for scheduling system resources
US6714960B1 (en) Earnings-based time-share scheduling
US6785889B1 (en) System and method for scheduling bandwidth resources using a Kalman estimator with active feedback
Mercer et al. Processor capacity reserves for multimedia operating systems
US6385638B1 (en) Processor resource distributor and method
US7207042B2 (en) System and method for robust time partitioning of tasks in a real-time computing environment
JP7018554B2 (ja) 適応型リソース割り当て方法及び装置
US10089142B2 (en) Dynamic task prioritization for in-memory databases
US9424093B2 (en) Process scheduler employing adaptive partitioning of process threads
US7840966B2 (en) Process scheduler employing adaptive partitioning of critical process threads
US6430592B1 (en) System for sharing CPU time amongst multiple users
US10271326B2 (en) Scheduling function calls
Chiang et al. Production job scheduling for parallel shared memory systems
JP2011180894A (ja) ジョブスケジューリングプログラム、ジョブスケジューリング装置、及びジョブスケジューリング方法
JP2003131892A (ja) タスク実行制御装置及びタスク実行制御方法
JP2023096237A (ja) コスト管理装置、コスト管理方法、およびプログラム
WO2004019205A2 (en) System and method for robust time partitioning of tasks in a real-time computing environment
US20110066467A1 (en) Scheduling multiple projects using phase work-in-process and resource constraints
JP2015060279A (ja) スケール制御サーバ、スケール制御方法、およびスケール制御プログラム
EP2595057B1 (en) Modified backfill scheduler and a method employing frequency control to reduce peak cluster power requirements
Mullery et al. A processor allocation method for time-sharing
Lin et al. Efficient soft real-time processing in an integrated system
Steffen A Better Way of Scheduling Jobs on HPC Systems: Simultaneous Fair-Share
Aladeemy et al. Improving Appointment Scheduling in Outpatient Infusion Centers: A Case Study
Meehean Towards Transparent CPU Scheduling

Legal Events

Date Code Title Description
GD4A Issue of patent certificate for granted invention patent
MM4A Annulment or lapse of patent due to non-payment of fees