两个人的电影免费视频_国产精品久久久久久久久成人_97视频在线观看播放_久久这里只有精品777_亚洲熟女少妇二三区_4438x8成人网亚洲av_内谢国产内射夫妻免费视频_人妻精品久久久久中国字幕

用于對(duì)任務(wù)請(qǐng)求進(jìn)行調(diào)度的方法和設(shè)備的制作方法

文檔序號(hào):6461246閱讀:168來源:國(guó)知局
專利名稱:用于對(duì)任務(wù)請(qǐng)求進(jìn)行調(diào)度的方法和設(shè)備的制作方法
技術(shù)領(lǐng)域
本發(fā)明涉及計(jì)算系統(tǒng)中的任務(wù)調(diào)度。
技術(shù)背景計(jì)算系統(tǒng)接收來自用戶的針對(duì)任務(wù)的請(qǐng)求,例如,針對(duì)系統(tǒng)資源 的請(qǐng)求以及存儲(chǔ)器請(qǐng)求,并且這些請(qǐng)求代表了具有不同優(yōu)先級(jí)級(jí)別的 多種類型的任務(wù)。在此類系統(tǒng)中,低優(yōu)先級(jí)請(qǐng)求通常是在所有高優(yōu)先 級(jí)請(qǐng)求之后進(jìn)行處理的。但是,不同的請(qǐng)求可能在多個(gè)周期中使用單 個(gè)關(guān)鍵資源。因此,對(duì)在沒有高優(yōu)先級(jí)請(qǐng)求時(shí)啟動(dòng)的低優(yōu)先級(jí)請(qǐng)求來 說,該低優(yōu)先級(jí)請(qǐng)求仍可能延遲隨后的使用公共資源的高優(yōu)先級(jí)請(qǐng) 求。寫入業(yè)務(wù)是在存儲(chǔ)器系統(tǒng)中接收的低優(yōu)先級(jí)任務(wù)的 一個(gè)示例。通 常,在讀取隊(duì)列為空之前,寫入請(qǐng)求將被緩沖。但是,在寫入請(qǐng)求被 調(diào)度后,它可能干擾將來的讀取請(qǐng)求。低優(yōu)先級(jí)存儲(chǔ)器請(qǐng)求的另一個(gè) 示例是預(yù)先提取,也就是說,在預(yù)先提取中,后續(xù)指令以及被應(yīng)用或 操作系統(tǒng)標(biāo)記為低優(yōu)先級(jí)的存儲(chǔ)器請(qǐng)求將被加載到一隊(duì)列中。壓縮存 儲(chǔ)器系統(tǒng)是具有多種類型的請(qǐng)求的存儲(chǔ)器系統(tǒng)的另一個(gè)示例。在壓縮 存儲(chǔ)器系統(tǒng)中,存儲(chǔ)器重組可以作為低優(yōu)先級(jí)任務(wù)執(zhí)行。但是,完成 這種重組要花費(fèi)多個(gè)周期。重組很少發(fā)生并且可以被緩沖。因此,需要能夠?qū)Ω鞣N任務(wù)請(qǐng)求進(jìn)行調(diào)度從而使低優(yōu)先級(jí)任務(wù)不 會(huì)抑制高優(yōu)先級(jí)任務(wù)的執(zhí)行的系統(tǒng)和方法。發(fā)明內(nèi)容本發(fā)明涉及的是根據(jù)過去的訪問模式來預(yù)測(cè)何時(shí)調(diào)度或延遲請(qǐng) 求較為有利的方法和系統(tǒng),本發(fā)明包括用于預(yù)測(cè)何時(shí)可能出現(xiàn)高優(yōu)先級(jí)請(qǐng)求以及通過調(diào)度低優(yōu)先級(jí)請(qǐng)求來最小化預(yù)測(cè)到的干擾的方法和 系統(tǒng)。通過減小干擾,降低了高優(yōu)先級(jí)請(qǐng)求的排隊(duì)延遲,并且提高了 整體系統(tǒng)性能。根據(jù)基于本發(fā)明來調(diào)度任務(wù)的一個(gè)示例性方法,維護(hù)了至少兩個(gè) 隊(duì)列,用以存儲(chǔ)或保持要執(zhí)行的任務(wù)。適合的任務(wù)包括計(jì)算系統(tǒng)內(nèi)的 資源請(qǐng)求,例如存儲(chǔ)器請(qǐng)求。每個(gè)隊(duì)列都與一個(gè)不同的優(yōu)先級(jí)級(jí)別相 關(guān)聯(lián),并且包含了要處理的任務(wù),使得任一給定隊(duì)列中的每個(gè)任務(wù)的 優(yōu)先級(jí)級(jí)別對(duì)應(yīng)于或者基本等同于該隊(duì)列的優(yōu)先級(jí)級(jí)別。在一個(gè)實(shí)施例中,保持了兩個(gè)隊(duì)列,即,包含一個(gè)或多個(gè)高優(yōu)先級(jí)任務(wù)的高優(yōu)先 級(jí)隊(duì)列以及包含一個(gè)或多個(gè)低優(yōu)先級(jí)任務(wù)的低優(yōu)先級(jí)隊(duì)列。為了將任 務(wù)安置在這些隊(duì)列中,對(duì)要處理的任務(wù)進(jìn)行識(shí)別,并且為每個(gè)已識(shí)別 任務(wù)關(guān)聯(lián)一優(yōu)先級(jí)級(jí)別。然后,將每個(gè)已識(shí)別任務(wù)保存在與其關(guān)聯(lián)的 優(yōu)先級(jí)相對(duì)應(yīng)的隊(duì)列中。調(diào)度器檢查系統(tǒng)中是否有任何任務(wù)可供調(diào)度以進(jìn)行處理。如果可 以調(diào)度任務(wù),則根據(jù)包含了每個(gè)隊(duì)列的關(guān)聯(lián)優(yōu)先級(jí)級(jí)別的因數(shù)、每個(gè) 隊(duì)列的當(dāng)前狀態(tài)以及已調(diào)度任務(wù)的歷史,來調(diào)度隊(duì)列中保存的任務(wù), 以供處理或者推遲到以后。此外,可以根據(jù)多個(gè)預(yù)先定義的調(diào)度規(guī)則 來調(diào)度該任務(wù),其中這些規(guī)則預(yù)測(cè)是調(diào)度任務(wù)還是延遲任務(wù)較有利。 這些調(diào)度規(guī)則包括基于隊(duì)列狀態(tài)的規(guī)則,例如對(duì)包含在超出預(yù)定閾值 標(biāo)準(zhǔn)的隊(duì)列內(nèi)的任務(wù)進(jìn)行調(diào)度,以及基于在給定隊(duì)列中包含的任務(wù)的 數(shù)量來調(diào)度任務(wù)。在一個(gè)實(shí)施例中,每個(gè)隊(duì)列與至少一個(gè)預(yù)先定義的閾值標(biāo)準(zhǔn)相關(guān)聯(lián),并且這些閾值標(biāo)準(zhǔn)包括但不局限于隊(duì)列中的任務(wù) 數(shù)量、隊(duì)列中最早任務(wù)的經(jīng)時(shí)、以及這二者的組合。 一旦被調(diào)度,那 么任務(wù)將會(huì)根據(jù)該調(diào)度被處理或執(zhí)行。在一個(gè)實(shí)施例中,維護(hù)了包含多個(gè)離散的順序時(shí)段或槽的日志。 每個(gè)時(shí)段代表基本相等的預(yù)定時(shí)間長(zhǎng)度,并且每個(gè)時(shí)段包含與給定優(yōu) 先級(jí)級(jí)別相關(guān)聯(lián)的在該時(shí)段中接收的任務(wù)列表或集合。此外,在與給 定優(yōu)先級(jí)級(jí)別相關(guān)聯(lián)的當(dāng)前時(shí)段中接收的任務(wù)被記錄或保存在當(dāng)前 時(shí)段或當(dāng)前槽中。當(dāng)當(dāng)前時(shí)段屆滿時(shí),將當(dāng)前時(shí)段或當(dāng)前槽傳送到日志,并且從日志中去除最早的時(shí)段或最早的槽。為了根據(jù)多個(gè)預(yù)先定 義的調(diào)度規(guī)定中的一個(gè)或多個(gè)規(guī)則來調(diào)度任務(wù),創(chuàng)建了多個(gè)釆樣曰 志。每個(gè)采樣日志包含與所維護(hù)的時(shí)段日志相對(duì)應(yīng)的多個(gè)離散的順序 時(shí)段或采樣槽,并且每個(gè)采樣日志中的各時(shí)段包含預(yù)定數(shù)量的任務(wù)。 因此,每個(gè)采樣日志是任務(wù)的采樣歷史日志。為每個(gè)采樣日志關(guān)聯(lián)一 給定規(guī)則。將所維護(hù)的日志與采樣日志相比較,當(dāng)發(fā)現(xiàn)匹配時(shí),執(zhí)行 與采樣日志相關(guān)聯(lián)的規(guī)則。本發(fā)明的示例性實(shí)施例包括 一 種用于對(duì)計(jì)算系統(tǒng)內(nèi)要處理的任 務(wù)請(qǐng)求進(jìn)行調(diào)度的方法。根據(jù)該方法,維護(hù)包含計(jì)算系統(tǒng)內(nèi)要處理的 多個(gè)任務(wù)請(qǐng)求的列表。這些任務(wù)請(qǐng)求包括計(jì)算系統(tǒng)內(nèi)的資源請(qǐng)求,例 如存儲(chǔ)器請(qǐng)求。在一個(gè)實(shí)施例中,在至少兩個(gè)隊(duì)列中維護(hù)任務(wù)請(qǐng)求的 列表。每個(gè)隊(duì)列都與一個(gè)不同的優(yōu)先級(jí)級(jí)別相關(guān)聯(lián),并且包含了所述 多個(gè)任務(wù)請(qǐng)求中的一個(gè)或多個(gè)任務(wù)請(qǐng)求。任一給定隊(duì)列中的每個(gè)任務(wù) 請(qǐng)求的關(guān)聯(lián)優(yōu)先級(jí)級(jí)別與該隊(duì)列的所述不同優(yōu)先級(jí)級(jí)別基本相同。在 另一個(gè)實(shí)施例中,維護(hù)了兩個(gè)隊(duì)列,即,包含一個(gè)或多個(gè)高優(yōu)先級(jí)任 務(wù)請(qǐng)求的高優(yōu)先級(jí)隊(duì)列,以及包含一個(gè)或多個(gè)低優(yōu)先級(jí)任務(wù)請(qǐng)求的低 優(yōu)先級(jí)隊(duì)列。為了發(fā)起對(duì)包含在列表中的任務(wù)請(qǐng)求的處理,將識(shí)別所述多個(gè)任 務(wù)請(qǐng)求中的一個(gè)任務(wù)請(qǐng)求以供調(diào)度以進(jìn)行處理。這些任務(wù)請(qǐng)求可以隨 機(jī)選擇,或者可以根據(jù)規(guī)定的選擇標(biāo)準(zhǔn)來選擇。在一個(gè)實(shí)施例中,把 一優(yōu)先級(jí)級(jí)別與所述多個(gè)任務(wù)請(qǐng)求中的每一個(gè)任務(wù)請(qǐng)求相關(guān)聯(lián),并且 這個(gè)關(guān)聯(lián)的優(yōu)先級(jí)級(jí)別被用于識(shí)別要被調(diào)度以供處理的任務(wù)請(qǐng)求。在 將列表中的任務(wù)請(qǐng)求置于兩個(gè)或更多個(gè)隊(duì)列中時(shí),可以使用包含在每 個(gè)隊(duì)列內(nèi)的任務(wù)請(qǐng)求的數(shù)量來識(shí)別要調(diào)度的任務(wù)請(qǐng)求。此外,可以使 用每個(gè)隊(duì)列中最早任務(wù)請(qǐng)求的經(jīng)時(shí)來識(shí)別要調(diào)度的任務(wù)請(qǐng)求。在識(shí)別了用于調(diào)度的任務(wù)請(qǐng)求之后,為已識(shí)別的任務(wù)請(qǐng)求關(guān)聯(lián)一 處理授權(quán)。這種關(guān)聯(lián)基于計(jì)算系統(tǒng)內(nèi)的任務(wù)請(qǐng)求的歷史。合適的處理授權(quán)包括立即處理已識(shí)別的任務(wù)請(qǐng)求,將對(duì)已識(shí)別的任務(wù)請(qǐng)求的處 理推遲指定時(shí)段,以及拒絕處理已識(shí)別的任務(wù)請(qǐng)求。在一個(gè)實(shí)施例中,使用任務(wù)請(qǐng)求的歷史來識(shí)別在處理已識(shí)別的任務(wù)請(qǐng)求期間出現(xiàn)后續(xù) 任務(wù)請(qǐng)求的概率,對(duì)這些后續(xù)任務(wù)請(qǐng)求的處理與對(duì)已識(shí)別的任務(wù)請(qǐng)求 的處理相沖突。當(dāng)任何已識(shí)別的出現(xiàn)概率超出預(yù)定閾值時(shí),對(duì)已識(shí)別 的任務(wù)請(qǐng)求的處理被延遲或被拒絕。在一個(gè)實(shí)施例中,識(shí)別當(dāng)前正在處理的任務(wù)請(qǐng)求以及完成每個(gè)已 識(shí)別的當(dāng)前正在處理的任務(wù)請(qǐng)求所需要的時(shí)間。通過使用該信息,與推遲一指定時(shí)段,該時(shí)段與最長(zhǎng)的已識(shí)別完成時(shí)間相等。識(shí)別了針對(duì) 已識(shí)別任務(wù)請(qǐng)求的處理授權(quán)之后,根據(jù)相關(guān)聯(lián)的處理授權(quán)來處理已識(shí) 別的任務(wù)請(qǐng)求。在一個(gè)實(shí)施例中,為了使用任務(wù)請(qǐng)求的歷史將處理授權(quán)與給定的 任務(wù)請(qǐng)求相關(guān)聯(lián),維護(hù)了包含多個(gè)離散的順序時(shí)段的歷史日志。每個(gè) 時(shí)段代表基本相等的預(yù)定時(shí)間長(zhǎng)度,并且每個(gè)時(shí)段都包含與給定優(yōu)先 級(jí)級(jí)別相關(guān)聯(lián)的在該時(shí)段中接收的任務(wù)請(qǐng)求的列表。在當(dāng)前時(shí)段中接 收并與給定優(yōu)先級(jí)級(jí)別相關(guān)聯(lián)的任務(wù)請(qǐng)求被記錄。在當(dāng)前時(shí)段屆滿 時(shí),將當(dāng)前時(shí)段(也就是在當(dāng)前時(shí)段中記錄的任務(wù)請(qǐng)求)傳送到歷史 日志,并且從歷史記錄中去除最早的時(shí)段。因此,該歷史日志被用于 表示任務(wù)請(qǐng)求的歷史。在一個(gè)實(shí)施例中,創(chuàng)建了多個(gè)采樣日志。每個(gè) 采樣日志都包含與時(shí)段的歷史日志相對(duì)應(yīng)的多個(gè)離散的順序時(shí)段,并 且每個(gè)采樣日志中的各時(shí)段都包含任務(wù)請(qǐng)求的預(yù)定分組。為每個(gè)已創(chuàng) 建的采樣日志關(guān)聯(lián)一處理授權(quán),并且將該歷史日志與已創(chuàng)建的采樣曰 志之一進(jìn)行匹配。根據(jù)這種匹配,將與匹配的采樣日志相關(guān)聯(lián)的處理 授權(quán)關(guān)聯(lián)到當(dāng)前任務(wù)請(qǐng)求。


圖l是根據(jù)本發(fā)明來調(diào)度任務(wù)的系統(tǒng)實(shí)施例的示意圖;以及 圖2是示出在根據(jù)本發(fā)明來調(diào)度任務(wù)時(shí)使用的調(diào)度流程的實(shí)施 例的流程圖。
具體實(shí)施方式
首先參考圖1,該圖示出了根據(jù)本發(fā)明的用于調(diào)度任務(wù)的系統(tǒng)10 的示例性實(shí)施例。如所示出的,系統(tǒng)IO接收來自多個(gè)用戶18的多個(gè) 任務(wù)或任務(wù)請(qǐng)求22。所提交的這些任務(wù)請(qǐng)求22要由系統(tǒng)10根據(jù)任務(wù) 請(qǐng)求的歷史以及一個(gè)或多個(gè)指定規(guī)則進(jìn)行調(diào)度,以供處理或執(zhí)行。合 適的用戶包括但不局限于系統(tǒng)管理員或客戶之類的人、計(jì)算系統(tǒng)服 務(wù)器以及應(yīng)用。在一個(gè)實(shí)施例中,用戶18通過包括局域網(wǎng)和廣域網(wǎng) 的一個(gè)或多個(gè)網(wǎng)絡(luò)20來與系統(tǒng)10進(jìn)行通信。用戶18提交的合適任 務(wù)請(qǐng)求22包括但不局限于針對(duì)計(jì)算系統(tǒng)資源的請(qǐng)求,其包括針對(duì)存 儲(chǔ)器資源、處理器資源以及帶寬的請(qǐng)求。除了其它形式以外,針對(duì)存 儲(chǔ)器資源的請(qǐng)求可以采用讀取請(qǐng)求和寫入請(qǐng)求的形式。在一個(gè)實(shí)施例中,系統(tǒng)IO包括至少一個(gè)存儲(chǔ)位置緩沖器24,用 來在最初接收和保持所提交的任務(wù)請(qǐng)求,例如作為任務(wù)請(qǐng)求的列表。 在一個(gè)實(shí)施例中,系統(tǒng)IO還包括用以保持任務(wù)請(qǐng)求的多個(gè)隊(duì)列12。 雖然在這里示出為兩個(gè)隊(duì)列,但是該系統(tǒng)可以包含和使用任意數(shù)量的 隊(duì)列。這些隊(duì)列是根據(jù)要被調(diào)度的任務(wù)請(qǐng)求的一個(gè)或多個(gè)特性而進(jìn)行 區(qū)分的。例如,可以針對(duì)提交任務(wù)請(qǐng)求的每個(gè)用戶建立一個(gè)隊(duì)列,或 者針對(duì)特定的任務(wù)請(qǐng)求類型或類別建立隊(duì)列。優(yōu)選地,每個(gè)隊(duì)列都關(guān) 聯(lián)了或分配了一個(gè)優(yōu)先級(jí)級(jí)別。也就是說,每個(gè)隊(duì)列都包含一個(gè)或多個(gè)任務(wù)請(qǐng)求,其中該隊(duì)列內(nèi)的每個(gè)任務(wù)請(qǐng)求都具有與分配給該隊(duì)列的 優(yōu)先級(jí)級(jí)別等同的執(zhí)行或處理優(yōu)先級(jí)。如所示出的,該系統(tǒng)包括兩個(gè) 隊(duì)列,即,高優(yōu)先級(jí)隊(duì)列14和低優(yōu)先級(jí)隊(duì)列16。在一個(gè)實(shí)施例中, 該系統(tǒng)能夠評(píng)價(jià)已提交并保持在緩沖器24中的每個(gè)任務(wù)請(qǐng)求。在評(píng) 價(jià)時(shí),該系統(tǒng)可以確定每個(gè)任務(wù)請(qǐng)求的正確優(yōu)先級(jí)級(jí)別,并且可以將每個(gè)任務(wù)請(qǐng)求傳送到適當(dāng)?shù)年?duì)列,即,用于與給定任務(wù)請(qǐng)求相關(guān)聯(lián)的 優(yōu)先級(jí)級(jí)別的隊(duì)列。這些隊(duì)列可以存儲(chǔ)任務(wù)請(qǐng)求,優(yōu)選地根據(jù)系統(tǒng)接收到任務(wù)請(qǐng)求的順序來存儲(chǔ)任務(wù)請(qǐng)求。該系統(tǒng)包括與隊(duì)列12進(jìn)行通信的調(diào)度機(jī)構(gòu)或調(diào)度器54。該調(diào)度 器54能夠從存儲(chǔ)位置緩沖器或隊(duì)列中讀取任務(wù)請(qǐng)求,并且將這些任務(wù)請(qǐng)求遞送到目的地50,以供處理。合適的目的地包括任何目的地, 例如計(jì)算系統(tǒng)或計(jì)算系統(tǒng)內(nèi)例如節(jié)點(diǎn)的可以執(zhí)行任務(wù)請(qǐng)求的組件。在 一個(gè)實(shí)施例中,調(diào)度器能夠確定調(diào)度、或執(zhí)行隊(duì)列中包含的任務(wù)請(qǐng)求 的順序和時(shí)間。該調(diào)度器根據(jù)一個(gè)或多個(gè)預(yù)定調(diào)度規(guī)則來確定該順序 和時(shí)間。這些規(guī)則可以基于與任務(wù)請(qǐng)求相關(guān)聯(lián)的優(yōu)先級(jí)、接收到任務(wù) 請(qǐng)求的順序、隊(duì)列的當(dāng)前狀態(tài)以及其它因素。例如, 一個(gè)規(guī)則可以聲明只有在高優(yōu)先級(jí)隊(duì)列中沒有未決的任務(wù)請(qǐng)求的情況下才調(diào)度低優(yōu) 先級(jí)任務(wù)請(qǐng)求,也就是包含在低優(yōu)先級(jí)隊(duì)列中的任務(wù)請(qǐng)求。其它調(diào)度 規(guī)則可以基于所接收的任務(wù)請(qǐng)求類型的歷史以及這些任務(wù)請(qǐng)求在任 意給定時(shí)間被提交到系統(tǒng)的可能性。因此,在一個(gè)實(shí)施例中,總的來 說是該系統(tǒng),具體而言是調(diào)度器,包含了預(yù)測(cè)器機(jī)構(gòu),該機(jī)構(gòu)例如可 以確定給定的低優(yōu)先級(jí)任務(wù)請(qǐng)求與高優(yōu)先級(jí)任務(wù)請(qǐng)求之間發(fā)生干擾 或重疊的概率。合適的預(yù)測(cè)器使用的是靜態(tài)的架構(gòu)驅(qū)動(dòng)策略,或者可 以使用自適應(yīng)的在線策略。在一個(gè)實(shí)施例中,預(yù)測(cè)器例如根據(jù)在執(zhí)行 第 一較低優(yōu)先級(jí)任務(wù)請(qǐng)求時(shí)接收到第二較高優(yōu)先級(jí)任務(wù)請(qǐng)求的概率, 使用判定邏輯來確定所執(zhí)行的任務(wù)請(qǐng)求之間發(fā)生干擾的概率。在另一 個(gè)實(shí)施例中,預(yù)測(cè)器確定干擾可能還是不可能出現(xiàn)。在另一個(gè)實(shí)施例 中,低優(yōu)先級(jí)任務(wù)請(qǐng)求是在不可能出現(xiàn)干擾的情況下被調(diào)度的。在一 個(gè)實(shí)施例中,低優(yōu)先級(jí)任務(wù)請(qǐng)求是使用干擾概率的函數(shù)或該概率的某 種量化以及低優(yōu)先級(jí)任務(wù)請(qǐng)求的隊(duì)列長(zhǎng)度來調(diào)度的。在一個(gè)實(shí)施例中,為了根據(jù)經(jīng)驗(yàn)來提供基于任務(wù)請(qǐng)求歷史(例如, 最近的任務(wù)請(qǐng)求提交)的調(diào)度和預(yù)測(cè),該系統(tǒng)包含了被布置為多個(gè)時(shí) 間間隔或槽(bin) 28、 30、 32、 36的歷史日志26。每個(gè)槽都代表了 具有相同時(shí)長(zhǎng)的時(shí)段,例如固定數(shù)目的分鐘或固定數(shù)目的周期。與每 個(gè)槽相關(guān)聯(lián)的是在該時(shí)段中提交給系統(tǒng)的任務(wù)請(qǐng)求的集合,即&}, {t2},...,{tk}。這個(gè)集合可以包含所有的已提交任務(wù)請(qǐng)求或已提交任務(wù) 請(qǐng)求的子集。優(yōu)選地,該集合包含了高優(yōu)先級(jí)任務(wù)請(qǐng)求;因此,歷史 日志提供了高優(yōu)先級(jí)任務(wù)請(qǐng)求提交的歷史記錄或快照。除了歷史日志 中的時(shí)段之外,還提供了與當(dāng)前時(shí)段相對(duì)應(yīng)的當(dāng)前槽34。當(dāng)在當(dāng)前時(shí)段中提交了任務(wù)請(qǐng)求時(shí),這些請(qǐng)求被記錄到當(dāng)前槽中。 一旦當(dāng)前時(shí)段 屆滿,那么當(dāng)前槽被置入歷史記錄,并且將歷史記錄中具有最早總計(jì)時(shí)長(zhǎng)的槽28從日志中去除。歷史日志的大小(也就是歷史日志代表 的時(shí)間長(zhǎng)度)可以根據(jù)具體的系統(tǒng)需求而改變。調(diào)度器與歷史日志以及當(dāng)前槽進(jìn)行通信。在一個(gè)實(shí)施例中,調(diào)度 器可以將接收到的任務(wù)請(qǐng)求傳送到當(dāng)前槽。為了規(guī)定歷史日志在調(diào)度 任務(wù)請(qǐng)求時(shí)的使用,該系統(tǒng)包含了多個(gè)調(diào)度規(guī)則54,這些規(guī)則包括標(biāo) 準(zhǔn)44、 46、 48以及相關(guān)規(guī)則38、 40、 42。在一個(gè)實(shí)施例中,每個(gè)標(biāo) 準(zhǔn)都與一個(gè)規(guī)則相關(guān)聯(lián)。因此,關(guān)于應(yīng)用哪個(gè)或哪些規(guī)則的判定包括選擇與給定任務(wù)請(qǐng)求相匹配的恰當(dāng)標(biāo)準(zhǔn)。在一個(gè)實(shí)施例中,調(diào)度規(guī)則 被布置成包含多個(gè)預(yù)定或釆樣的歷史日志的查找表。逐個(gè)槽地將當(dāng)前 歷史日志與查找表中的釆樣日志進(jìn)行比較。找到當(dāng)前歷史日志與采樣 日志之間的匹配,并且在調(diào)度任務(wù)請(qǐng)求時(shí)使用與這些匹配相關(guān)聯(lián)的規(guī) 則。在一個(gè)實(shí)施例中,逐個(gè)槽地將歷史日志與采樣日志進(jìn)行比較,并 且采樣日志中的每個(gè)槽都指定了 一比較標(biāo)準(zhǔn)。針對(duì)槽的可能的比較標(biāo) 準(zhǔn)包括但不局限于兩個(gè)槽中的值是否相同;槽之間是什么關(guān)系(大 于、大于或等于、小于、小于或等于);以及采樣日志中的槽是否匹 配所有的值。在一個(gè)實(shí)施例中,該系統(tǒng)包括被修改成支持調(diào)度的存儲(chǔ)器控制 器。該存儲(chǔ)器控制器包括圖1所示的兩個(gè)隊(duì)列,即,用于高優(yōu)先級(jí)請(qǐng) 求的第一隊(duì)列以及用于低優(yōu)先級(jí)請(qǐng)求的第二隊(duì)列。該存儲(chǔ)器控制器可 以向給定的任務(wù)請(qǐng)求添加信息或信息比特,以將該請(qǐng)求標(biāo)識(shí)為高優(yōu)先 級(jí)或低優(yōu)先級(jí)。在一個(gè)實(shí)施例中,低優(yōu)先級(jí)請(qǐng)求是寫入事務(wù),并且不 需要向這些任務(wù)請(qǐng)求添加額外的信息來將這些請(qǐng)求標(biāo)識(shí)為低優(yōu)先級(jí)。 包含在存儲(chǔ)器控制器中的調(diào)度器根據(jù)這兩個(gè)隊(duì)列的狀態(tài)以及調(diào)度塊 調(diào)度存儲(chǔ)器請(qǐng)求的先前歷史,來調(diào)度包含在這些隊(duì)列中的存儲(chǔ)器請(qǐng) 求。該調(diào)度器指示存儲(chǔ)器控制器調(diào)度特定的存儲(chǔ)器請(qǐng)求,并且標(biāo)準(zhǔn)的 存儲(chǔ)器控制器功能被用于處理所調(diào)度的請(qǐng)求。在一個(gè)實(shí)施例中,還可以在存儲(chǔ)器控制器中維護(hù)歷史日志,該歷史日志包括歷史緩沖器以及當(dāng)前槽條目。在一個(gè)實(shí)施例中,先前的M 個(gè)周期(即先前的M個(gè)存儲(chǔ)器周期)被分成N個(gè)槽。歷史緩沖器的 N個(gè)槽表明在先前的N個(gè)時(shí)間槽中的每個(gè)槽中接收到了多少個(gè)高優(yōu)先 級(jí)任務(wù)請(qǐng)求。當(dāng)前槽被用于存儲(chǔ)和更新從最后一個(gè)時(shí)間槽被加入歷史 緩沖器以來的高優(yōu)先級(jí)任務(wù)請(qǐng)求的計(jì)數(shù)。每經(jīng)過M/N個(gè)周期,當(dāng)前 槽被拷貝到歷史緩沖器中的第一個(gè)條目,然后被清除,并且歷史緩沖 器中的每個(gè)條目的內(nèi)容都會(huì)被移位一個(gè)條目,由此更新了歷史緩沖 器。歷史緩沖器一直包含最后N個(gè)時(shí)間槽上的高優(yōu)先級(jí)任務(wù)請(qǐng)求的數(shù) 量。與存儲(chǔ)器控制器中的歷史緩沖器相關(guān)聯(lián)的規(guī)則集合或查找表維護(hù) 一個(gè)規(guī)則列表,其被用于確定是否應(yīng)該調(diào)度低優(yōu)先級(jí)存儲(chǔ)器請(qǐng)求,例 如當(dāng)前是否不存在未決的高優(yōu)先級(jí)任務(wù)請(qǐng)求。將高優(yōu)先級(jí)存儲(chǔ)器請(qǐng)求 歷史與調(diào)度規(guī)則的查找表相比較。如果它與任何一個(gè)規(guī)則相匹配,則 可以調(diào)度低優(yōu)先級(jí)存儲(chǔ)器請(qǐng)求。在一個(gè)實(shí)施例中,每個(gè)規(guī)則指示應(yīng)該 還是不應(yīng)該調(diào)度低優(yōu)先級(jí)存儲(chǔ)器請(qǐng)求。在一個(gè)實(shí)施例中,這些規(guī)則是 根據(jù)預(yù)定的層級(jí)或順序維護(hù)的,并且使用第一個(gè)匹配的規(guī)則。這些規(guī) 則中的 一個(gè)規(guī)則可以是默認(rèn)規(guī)則,該默認(rèn)規(guī)則與所有可能的歷史日志 相匹配,并且定義了默認(rèn)的調(diào)度行為。根據(jù)基于本發(fā)明來調(diào)度任務(wù)請(qǐng)求、例如調(diào)度一個(gè)或多個(gè)計(jì)算系統(tǒng) 中的任務(wù)請(qǐng)求的方法的一個(gè)示例性實(shí)施例,維護(hù)任務(wù)請(qǐng)求的列表。這 個(gè)列表包含了從一個(gè)或多個(gè)用戶接收的針對(duì)要在計(jì)算系統(tǒng)內(nèi)進(jìn)行處 理的任務(wù)的任務(wù)請(qǐng)求。在一個(gè)實(shí)施例中,該列表內(nèi)的所述多個(gè)任務(wù)請(qǐng) 求被劃分到至少兩個(gè)隊(duì)列中。每個(gè)隊(duì)列都具有在將任務(wù)請(qǐng)求分類到隊(duì) 列之中時(shí)使用的相關(guān)聯(lián)特性。這些特性可以是任務(wù)請(qǐng)求的任何期望質(zhì) 量,或者可以是用戶定義的其它特性,例如任務(wù)請(qǐng)求的時(shí)間(timeof day)和源。在一個(gè)實(shí)施例中,該特性是優(yōu)先級(jí)級(jí)別,并且每個(gè)隊(duì)列 都具有相關(guān)聯(lián)的優(yōu)先級(jí)級(jí)別。待處理的任務(wù)請(qǐng)求包含在每個(gè)隊(duì)列中, 并且任一給定隊(duì)列中的任務(wù)請(qǐng)求具有與該隊(duì)列的優(yōu)先級(jí)級(jí)別相同的 相關(guān)優(yōu)先級(jí)級(jí)別。例如,每個(gè)隊(duì)列可包含一個(gè)或多個(gè)任務(wù)請(qǐng)求。作為 替代方案,這些隊(duì)列中的一個(gè)或多個(gè)隊(duì)列可以不包含任何任務(wù)請(qǐng)求。在一個(gè)實(shí)施例中,優(yōu)先級(jí)級(jí)別是由用戶定義的,并且代表的是在決定 是否應(yīng)調(diào)度給定任務(wù)請(qǐng)求時(shí)分配給該任務(wù)請(qǐng)求的權(quán)重或優(yōu)先級(jí)。隊(duì)列 的數(shù)量可以根據(jù)所要使用的特性或優(yōu)先級(jí)級(jí)別的數(shù)量而改變。在一個(gè) 實(shí)施例中,維護(hù)了兩個(gè)隊(duì)列,即,包含一個(gè)或多個(gè)高優(yōu)先級(jí)任務(wù)請(qǐng)求 的高優(yōu)先級(jí)隊(duì)列和包含一個(gè)或多個(gè)低優(yōu)先級(jí)任務(wù)請(qǐng)求的低優(yōu)先級(jí)隊(duì) 列。在一個(gè)實(shí)施例中,對(duì)要被處理的任務(wù)請(qǐng)求進(jìn)行識(shí)別。用于識(shí)別任務(wù)請(qǐng)求的合適方法包括但不局限于接收來自 一個(gè)或多個(gè)用戶的任務(wù) 請(qǐng)求,或者執(zhí)行再發(fā)生的任務(wù)請(qǐng)求。在一個(gè)實(shí)施例中,每個(gè)任務(wù)請(qǐng)求 代表計(jì)算系統(tǒng)內(nèi)的資源請(qǐng)求。在一個(gè)實(shí)施例中,資源請(qǐng)求是存儲(chǔ)器請(qǐng) 求。每個(gè)已識(shí)別的任務(wù)請(qǐng)求都與一個(gè)優(yōu)先級(jí)或優(yōu)先級(jí)級(jí)別相關(guān)聯(lián),并 且每個(gè)任務(wù)請(qǐng)求都被傳送至和保存在與該請(qǐng)求的相關(guān)優(yōu)先級(jí)相對(duì)應(yīng) 的隊(duì)列之中。在識(shí)別了任務(wù)請(qǐng)求,確定了每個(gè)任務(wù)請(qǐng)求的優(yōu)先級(jí),并且將區(qū)分 了優(yōu)先級(jí)的任務(wù)請(qǐng)求保存在了適當(dāng)?shù)娜罩局兄?,來自該列表的任?wù) 請(qǐng)求被識(shí)別成要被調(diào)度以進(jìn)行處理。任務(wù)請(qǐng)求可以被隨機(jī)地識(shí)別,或 者根據(jù)一個(gè)或多個(gè)預(yù)定標(biāo)準(zhǔn)來被識(shí)別。在一個(gè)實(shí)施例中,任務(wù)請(qǐng)求是 根據(jù)每個(gè)隊(duì)列的優(yōu)先級(jí)、每個(gè)隊(duì)列的當(dāng)前狀態(tài)以及任務(wù)請(qǐng)求歷史而被 識(shí)別和調(diào)度以供處理的。除了使用優(yōu)先級(jí)級(jí)別之外,還可以根據(jù)多個(gè) 預(yù)定調(diào)度規(guī)則識(shí)別和調(diào)度這些任務(wù)請(qǐng)求。在一個(gè)實(shí)施例中,每個(gè)隊(duì)列的閾值標(biāo)準(zhǔn)和內(nèi)容是包含在調(diào)度規(guī)則 中的。因此,在一個(gè)實(shí)施例中,任務(wù)請(qǐng)求是從具有超出的預(yù)定閾值標(biāo) 準(zhǔn)并且其中包含了給定數(shù)量的任務(wù)請(qǐng)求的隊(duì)列中被調(diào)度的。在一個(gè)實(shí) 施例中,每個(gè)隊(duì)列都與至少一個(gè)預(yù)定閾值標(biāo)準(zhǔn)相關(guān)聯(lián)。合適的閾值標(biāo) 準(zhǔn)包括但不局限于隊(duì)列中的任務(wù)請(qǐng)求的數(shù)量、隊(duì)列中的最早任務(wù)請(qǐng) 求的經(jīng)時(shí)(age)及其組合。在一個(gè)實(shí)施例中,即使隊(duì)列不為空,對(duì) 包含在隊(duì)列中的任務(wù)請(qǐng)求的調(diào)度和處理也不包括調(diào)度和處理任何一 個(gè)任務(wù)請(qǐng)求。例如,這些隊(duì)列可能包含較低優(yōu)先級(jí)的任務(wù)請(qǐng)求,并且 例如根據(jù)在后續(xù)時(shí)段必須調(diào)度較高優(yōu)先級(jí)任務(wù)請(qǐng)求的可能性,而不調(diào)度這些任務(wù)請(qǐng)求。在一個(gè)實(shí)施例中,在隨機(jī)地或者根據(jù)一個(gè)或多個(gè)調(diào)度規(guī)則識(shí)別了 來自要被調(diào)度以供處理的任務(wù)請(qǐng)求的列表中的 一任務(wù)請(qǐng)求之后,針對(duì) 已識(shí)別的任務(wù)請(qǐng)求來識(shí)別處理授權(quán)。根據(jù)計(jì)算系統(tǒng)內(nèi)的任務(wù)請(qǐng)求的歷 史識(shí)別該處理授權(quán)。在一個(gè)實(shí)施例中,歷史日志被用于表示任務(wù)請(qǐng)求的歷史。合適的處理授權(quán)包括但不局限于立即處理已識(shí)別的任務(wù)請(qǐng) 求;將對(duì)已識(shí)別的任務(wù)請(qǐng)求的處理推遲指定時(shí)段;以及拒絕處理已識(shí) 別的任務(wù)請(qǐng)求。在使用歷史日志時(shí),處理授權(quán)可被用作與采樣日志相 關(guān)聯(lián)的(例如,查找表中的)相關(guān)規(guī)則的一部分。在識(shí)別了處理授權(quán) 之后,根據(jù)相關(guān)處理授權(quán)來處理已識(shí)別的任務(wù)請(qǐng)求。參考圖2,該圖提供的是用于確定調(diào)度哪個(gè)任務(wù)請(qǐng)求的判定邏輯 60的示例性實(shí)施例。該邏輯是針對(duì)使用單閾值判定以及包含在各隊(duì)列 中的任務(wù)請(qǐng)求的數(shù)量而劃分成兩個(gè)隊(duì)列的任務(wù)請(qǐng)求的列表而示出的, 其中這兩個(gè)隊(duì)列是高優(yōu)先級(jí)隊(duì)列和低優(yōu)先級(jí)隊(duì)列。隊(duì)列數(shù)量和閾值判 定不同的其它實(shí)施例也是可行的。此外,在該邏輯中還可以包含其它 的基于規(guī)則的判定。雖然在這里示出為單遍處理,但是該邏輯可以作 為迭代處理或連續(xù)循環(huán)來運(yùn)行。如所示出的,確定了各隊(duì)列中的任務(wù)請(qǐng)求數(shù)量的閾值。在一個(gè)實(shí) 施例中,用于低優(yōu)先級(jí)隊(duì)列的閾值可以是無(wú)窮大,用以指示這種情況 永遠(yuǎn)不會(huì)發(fā)生。最初,檢查高優(yōu)先級(jí)隊(duì)列,以便了解其是否超出了所 確定的閾值(62),也就是說,在高優(yōu)先級(jí)隊(duì)列中是否存在比所允許 的任務(wù)請(qǐng)求更多的任務(wù)請(qǐng)求。如果超出了用于高優(yōu)先級(jí)隊(duì)列的閾值, 則調(diào)度來自該隊(duì)列的高優(yōu)先級(jí)任務(wù)請(qǐng)求(70)。如果沒有超出高優(yōu)先 級(jí)隊(duì)列閾值,則檢查低優(yōu)先級(jí)隊(duì)列,以便了解其是否超出所確定的閾 值(64),也就是說,在低優(yōu)先級(jí)隊(duì)列中是否存在比所允許的任務(wù)請(qǐng) 求更多的任務(wù)請(qǐng)求。如果超出了低優(yōu)先級(jí)隊(duì)列閾值,則調(diào)度低優(yōu)先級(jí) 任務(wù)請(qǐng)求(72)。如果沒有超出低優(yōu)先級(jí)隊(duì)列閾值,則對(duì)高優(yōu)先級(jí)隊(duì) 列進(jìn)行檢查,以便了解其是否為空(66)。如果高優(yōu)先級(jí)隊(duì)列不為空, 則調(diào)度高優(yōu)先級(jí)任務(wù)請(qǐng)求(74)。如果高優(yōu)先級(jí)隊(duì)列為空,則對(duì)低優(yōu)先級(jí)隊(duì)列進(jìn)行檢查,以便了解其是否為空(68)。如果低優(yōu)先級(jí)隊(duì)列 為空,則不調(diào)度任何任務(wù)請(qǐng)求(80)。如果低優(yōu)先級(jí)隊(duì)列不為空,則尋找與當(dāng)前系統(tǒng)狀態(tài)的匹配(76)。在一個(gè)實(shí)施例中,這些規(guī)則是根 據(jù)當(dāng)前狀態(tài)以及任務(wù)請(qǐng)求提交的歷史記錄來管理低優(yōu)先級(jí)任務(wù)請(qǐng)求 與高優(yōu)先級(jí)任務(wù)請(qǐng)求之間的潛在沖突或干擾的規(guī)則。如果與這些規(guī)則 相匹配,則表明有可能發(fā)生干擾。因此,如所示出的,如果沒有規(guī)則 匹配,則調(diào)度低優(yōu)先級(jí)任務(wù)請(qǐng)求(78)。如果有一個(gè)或多個(gè)規(guī)則匹配, 則不調(diào)度任何任務(wù)請(qǐng)求(80)。在其它實(shí)施例中,在規(guī)則匹配之后, 可以調(diào)度低優(yōu)先級(jí)任務(wù)請(qǐng)求,只要任務(wù)請(qǐng)求是根據(jù)該規(guī)則進(jìn)行調(diào)度的 即可。在一個(gè)實(shí)施例中,任務(wù)請(qǐng)求是從隊(duì)列中按概率調(diào)度的。如果與一 規(guī)則相匹配,則表明應(yīng)該從每個(gè)隊(duì)列中調(diào)度的任務(wù)請(qǐng)求的某種分布。 隊(duì)列將根據(jù)該規(guī)則給出的概率而隨機(jī)選擇,并且來自該隊(duì)列的任務(wù)請(qǐng) 求將被調(diào)度,這導(dǎo)致了針對(duì)各隊(duì)列的特定服務(wù)級(jí)別。因此,與低優(yōu)先 級(jí)任務(wù)請(qǐng)求相比,高優(yōu)先級(jí)任務(wù)請(qǐng)求接收了較好的服務(wù)級(jí)別;但是, 即使存在高優(yōu)先級(jí)任務(wù)請(qǐng)求,較低優(yōu)先級(jí)的任務(wù)請(qǐng)求也仍會(huì)得到處 理。在一個(gè)實(shí)施例中,維護(hù)了包含多個(gè)離散的順序時(shí)段的日志或歷史 日志。每個(gè)時(shí)段都代表了基本相等的預(yù)定時(shí)間長(zhǎng)度,并且該日志中的 每個(gè)時(shí)段都包含在該時(shí)段中接收的與給定優(yōu)先級(jí)級(jí)別(優(yōu)選地為高優(yōu) 先級(jí)級(jí)別)相關(guān)聯(lián)的任務(wù)請(qǐng)求的列表或集合。此外,在與給定優(yōu)先級(jí) 級(jí)別相關(guān)聯(lián)的當(dāng)前時(shí)段中接收的任務(wù)請(qǐng)求將被記錄。在當(dāng)前時(shí)段中記 錄的任務(wù)請(qǐng)求在當(dāng)前時(shí)段屆滿時(shí)被傳送到日志,并且最早的時(shí)段將從 日志中被去除。然后,如圖2中舉例顯示的那樣,該日志被用于根據(jù) 多個(gè)預(yù)定調(diào)度規(guī)則來調(diào)度任務(wù)請(qǐng)求。在一個(gè)實(shí)施例中,要匹配的多個(gè)規(guī)則是通過創(chuàng)建多個(gè)采樣日志來 表示的。每個(gè)釆樣日志與所維護(hù)的時(shí)段的歷史日志相對(duì)應(yīng),并且代表 隨著時(shí)間的過去而接收的任務(wù)請(qǐng)求的給定模式。 一給定規(guī)則(例如調(diào)度任務(wù)請(qǐng)求、不調(diào)度任務(wù)請(qǐng)求或者延遲啟動(dòng)任務(wù)請(qǐng)求)與每個(gè)已創(chuàng)建 的采樣日志相關(guān)聯(lián)。在任何時(shí)間,在調(diào)度邏輯中對(duì)該規(guī)則進(jìn)行評(píng)價(jià), 將此時(shí)維護(hù)的歷史日志與所有采樣日志相比較,以找到歷史日志與一 個(gè)或多個(gè)所創(chuàng)建的采樣日志之間的匹配。如果找到了匹配,則執(zhí)行與 匹配的采樣日志相關(guān)聯(lián)的規(guī)則。在一個(gè)實(shí)施例中,釆樣日志或查找表中的規(guī)則被預(yù)先計(jì)算并保存 在表中。 一個(gè)規(guī)則集合可能基于的是接收到特定任務(wù)請(qǐng)求(例如存儲(chǔ) 器請(qǐng)求)的周期性。舉個(gè)例子,給定的任務(wù)請(qǐng)求需要一定時(shí)間量來完 成,并且該時(shí)間是預(yù)先計(jì)算的。如果在一段時(shí)間之前存在一任務(wù)請(qǐng)求, 那么發(fā)起該任務(wù)請(qǐng)求的用戶可以發(fā)起另 一個(gè)任務(wù)請(qǐng)求,從而相關(guān)規(guī)則 將規(guī)定不調(diào)度低優(yōu)先級(jí)存儲(chǔ)器請(qǐng)求。在另一個(gè)實(shí)施例中,使用學(xué)習(xí)算法來計(jì)算規(guī)則??紤]旨在利用活動(dòng)突發(fā)結(jié)束的以下規(guī)則i)如果有R 個(gè)槽指示高優(yōu)先級(jí)活動(dòng),并且第r+i個(gè)槽不指示高優(yōu)先級(jí)活動(dòng),則在下一個(gè)時(shí)隙中調(diào)度低優(yōu)先級(jí)活動(dòng);iO如果先前的兩個(gè)槽不具有高優(yōu) 先級(jí)活動(dòng),則調(diào)度低優(yōu)先級(jí)活動(dòng)。如果先前R個(gè)槽中的每個(gè)槽有活動(dòng), 那么學(xué)習(xí)組件可以維護(hù)第R+2和R+3個(gè)槽不具有活動(dòng)的時(shí)間部分(fraction of times) F,其中R=l, 2, ......, V。然后,對(duì)F低于給定閾值的R來說,其最小值可以在以上處理中使用。根據(jù)本發(fā)明示例性實(shí)施例的方法和系統(tǒng)可以采用純硬件實(shí)施例 的形式、純軟件實(shí)施例的形式或同時(shí)包含軟件和硬件部件的實(shí)施例的 形式。在優(yōu)選實(shí)施例中,本發(fā)明是以軟件實(shí)現(xiàn)的,該軟件包括但不局 限于固件、駐留軟件以及微代碼。此外,示例性方法和系統(tǒng)可以采用 能從計(jì)算機(jī)可用或計(jì)算機(jī)可讀介質(zhì)訪問的計(jì)算機(jī)程序產(chǎn)品的形式,所 述計(jì)算機(jī)可用或計(jì)算機(jī)可讀介質(zhì)提供了可供計(jì)算機(jī)、邏輯處理單元或 任何指令執(zhí)行系統(tǒng)使用或與其結(jié)合使用的程序代碼。出于說明的目 的,計(jì)算機(jī)可用或計(jì)算機(jī)可讀介質(zhì)可以是能夠包含、存儲(chǔ)、傳送、傳 播或傳輸程序以供指令執(zhí)行系統(tǒng)、裝置或設(shè)備使用或與之結(jié)合使用的 任何裝置。合適的計(jì)算機(jī)可用或計(jì)算機(jī)可讀介質(zhì)包括但不局限于電 子、磁性、光學(xué)、電磁、紅外或半導(dǎo)體系統(tǒng)(或是裝置或設(shè)備)或傳播介質(zhì)。計(jì)算機(jī)可讀介質(zhì)的示例包括半導(dǎo)體或固態(tài)存儲(chǔ)器、磁帶、可拆卸計(jì)算機(jī)磁盤、隨機(jī)存取存儲(chǔ)器(RAM)、只讀存儲(chǔ)器(ROM)、 剛性磁盤以及光盤。光盤的當(dāng)前示例包括緊湊型盤—只讀存儲(chǔ)器 (CD-ROM)、緊湊型盤-讀/寫(CD-R/W)以及DVD。用于存儲(chǔ)和/或執(zhí)行程序代碼的合適數(shù)據(jù)處理系統(tǒng)包括但不局限 于直接耦合到存儲(chǔ)器部件或者通過系統(tǒng)總線間接耦合到存儲(chǔ)器部件 的至少一個(gè)處理器。該存儲(chǔ)器部件包括在實(shí)際執(zhí)行程序代碼的過程中 使用的本地存儲(chǔ)器、大容量存儲(chǔ)器以及高速緩沖存儲(chǔ)器,該高速緩沖 存儲(chǔ)器提供了對(duì)至少某些程序代碼的臨時(shí)存儲(chǔ),以減少在執(zhí)行過程中 必須從大容量存儲(chǔ)器中取回代碼的次數(shù)。輸入/輸出或1/0設(shè)備包括但 不局限于鍵盤、顯示器以及指示設(shè)備,這些設(shè)備可以直接或者通過 中間1/0控制器而與系統(tǒng)相耦合。根據(jù)本發(fā)明的方法和系統(tǒng)的示例性 實(shí)施例還包括與系統(tǒng)耦合網(wǎng)絡(luò)適配器,該網(wǎng)絡(luò)適配器能夠使數(shù)據(jù)處理 系統(tǒng)通過中間私有或公共網(wǎng)絡(luò)與其它數(shù)據(jù)處理系統(tǒng)、遠(yuǎn)程打印機(jī)或存 儲(chǔ)設(shè)備相耦合。合適的當(dāng)前可用類型的網(wǎng)絡(luò)適配器包括但不局限于 調(diào)制解調(diào)器、電纜調(diào)制解調(diào)器、DSL調(diào)制解調(diào)器、以太網(wǎng)卡及其組合。在一個(gè)實(shí)施例中,本發(fā)明涉及的是一種機(jī)器可讀或計(jì)算機(jī)可讀介 質(zhì),該介質(zhì)包含機(jī)器可執(zhí)行或計(jì)算機(jī)可執(zhí)行代碼,當(dāng)機(jī)器或計(jì)算機(jī)讀 取該代碼時(shí),所述代碼會(huì)使該機(jī)器或計(jì)算機(jī)執(zhí)行根據(jù)本發(fā)明示例性實(shí) 施例的在計(jì)算系統(tǒng)中調(diào)度任務(wù)的方法,此外,本發(fā)明還涉及所述計(jì)算 機(jī)可執(zhí)行代碼本身。該機(jī)器可讀或計(jì)算機(jī)可讀代碼可以是能被機(jī)器或 計(jì)算機(jī)讀取和執(zhí)行以及能用本領(lǐng)域已知且可用的任何合適語(yǔ)言或語(yǔ) 法表示的任何類型的代碼或語(yǔ)言,其中所述代碼或語(yǔ)言包括機(jī)器語(yǔ) 言、匯編語(yǔ)言、高級(jí)語(yǔ)言、面向?qū)ο蟮恼Z(yǔ)言以及腳本語(yǔ)言。該計(jì)算機(jī) 可執(zhí)行代碼可以保存在任何合適的存儲(chǔ)介質(zhì)或數(shù)據(jù)庫(kù)中,其中包括 位于根據(jù)本發(fā)明的系統(tǒng)所使用的計(jì)算機(jī)網(wǎng)絡(luò)內(nèi)、與之通信、以及可被其訪問的數(shù)據(jù)庫(kù),此外,所述計(jì)算機(jī)可執(zhí)行代碼還可以在本領(lǐng)域已知 且可用的任何合適的硬件平臺(tái)上執(zhí)行,所述平臺(tái)包括用于控制本發(fā)明 的表示物的控制系統(tǒng)。19雖然這里公開的本發(fā)明的說明性實(shí)施例明顯實(shí)現(xiàn)了本發(fā)明的目 的,但應(yīng)明白的是,本領(lǐng)域技術(shù)人員是可以想到眾多的修改以及其它 的實(shí)施例。此外,來自任何一個(gè)實(shí)施例的特征和/或部件既可以單獨(dú)使 用,也可以與其它實(shí)施例結(jié)合使用,并且來自根據(jù)本發(fā)明的方法的步 驟或要素可以按照任何合適的順序來運(yùn)行或執(zhí)行。因此,應(yīng)該理解, 所附權(quán)利要求旨在覆蓋所有這些落入本發(fā)明的精神和范圍內(nèi)的修改 和實(shí)施例。
權(quán)利要求
1.一種用于對(duì)任務(wù)請(qǐng)求進(jìn)行調(diào)度的方法,該方法包括維護(hù)包含計(jì)算系統(tǒng)內(nèi)要被處理的多個(gè)任務(wù)請(qǐng)求的列表;識(shí)別所述多個(gè)任務(wù)請(qǐng)求中要被調(diào)度以供處理的一個(gè)任務(wù)請(qǐng)求;根據(jù)計(jì)算系統(tǒng)內(nèi)的任務(wù)請(qǐng)求的歷史,為所識(shí)別的任務(wù)請(qǐng)求關(guān)聯(lián)一處理授權(quán),該處理授權(quán)是從包含下列處理授權(quán)的組中選出的立即處理所識(shí)別的任務(wù)請(qǐng)求,將對(duì)所識(shí)別的任務(wù)請(qǐng)求的處理推遲指定時(shí)段,以及拒絕處理所識(shí)別的任務(wù)請(qǐng)求;以及根據(jù)關(guān)聯(lián)的處理授權(quán)來處理所識(shí)別的任務(wù)請(qǐng)求。
2. 根據(jù)權(quán)利要求l所述的方法,其中該方法還包括把一優(yōu)先級(jí)級(jí)別與所述多個(gè)任務(wù)請(qǐng)求中的每個(gè)任 務(wù)請(qǐng)求相關(guān)聯(lián);以及識(shí)別所述多個(gè)任務(wù)請(qǐng)求中的一個(gè)任務(wù)請(qǐng)求的步驟還包括使用關(guān) 聯(lián)的優(yōu)先級(jí)級(jí)別來識(shí)別所述多個(gè)任務(wù)請(qǐng)求中要被調(diào)度以供處理的一 個(gè)任務(wù)請(qǐng)求。
3. 根據(jù)權(quán)利要求2所述的方法,其中維護(hù)列表的步驟還包括在 至少兩個(gè)隊(duì)列中維護(hù)該列表,每個(gè)隊(duì)列都與 一 個(gè)不同的優(yōu)先級(jí)級(jí)別相 關(guān)聯(lián)并且包括所述多個(gè)任務(wù)請(qǐng)求中的一個(gè)或多個(gè)任務(wù)請(qǐng)求,其中任意 給定隊(duì)列中的每個(gè)任務(wù)請(qǐng)求的關(guān)聯(lián)優(yōu)先級(jí)級(jí)別與該隊(duì)列的所述不同 的優(yōu)先級(jí)級(jí)別基本相同。
4. 根據(jù)權(quán)利要求3所述的方法,其中在至少兩個(gè)隊(duì)列中維護(hù)該 列表的步驟還包括維護(hù)包含一個(gè)或多個(gè)高優(yōu)先級(jí)任務(wù)請(qǐng)求的高優(yōu)先級(jí)隊(duì)列;以及 維護(hù)包含一個(gè)或多個(gè)低優(yōu)先級(jí)任務(wù)請(qǐng)求的低優(yōu)先級(jí)隊(duì)列。
5. 根據(jù)權(quán)利要求3所述的方法,其中識(shí)別所述多個(gè)任務(wù)請(qǐng)求中 要被調(diào)度的一個(gè)任務(wù)請(qǐng)求的步驟還包括以下步驟中的至少一個(gè)使用 包含在每個(gè)隊(duì)列內(nèi)的任務(wù)請(qǐng)求的數(shù)量來識(shí)別要被調(diào)度的任務(wù)請(qǐng)求;以求。
6. 根據(jù)權(quán)利要求1所述的方法,其中根據(jù)任務(wù)請(qǐng)求的歷史為所 識(shí)別的任務(wù)請(qǐng)求關(guān)聯(lián)一處理授權(quán)的步驟還包括使用任務(wù)請(qǐng)求的歷史 來識(shí)別在處理所識(shí)別的任務(wù)請(qǐng)求期間出現(xiàn)后續(xù)任務(wù)請(qǐng)求的概率,其中 對(duì)該后續(xù)任務(wù)請(qǐng)求的處理與對(duì)所識(shí)別的任務(wù)請(qǐng)求的處理相沖突。
7. 根據(jù)權(quán)利要求6所述的方法,其中關(guān)聯(lián)處理授權(quán)的步驟還包 括以下步驟中的至少 一個(gè)當(dāng)任何所識(shí)別的出現(xiàn)概率超出預(yù)定閾值 時(shí),延遲對(duì)所識(shí)別的任務(wù)請(qǐng)求的處理,以及拒絕對(duì)所識(shí)別的任務(wù)請(qǐng)求 的處理。
8. 根據(jù)權(quán)利要求1所述的方法,還包括識(shí)別當(dāng)前正在處理的 任務(wù)請(qǐng)求以及完成每個(gè)識(shí)別的當(dāng)前正在處理的任務(wù)請(qǐng)求的時(shí)間,其中 關(guān)聯(lián)處理授權(quán)的步驟還包括關(guān)聯(lián)將對(duì)所識(shí)別的任務(wù)請(qǐng)求的處理推遲 與最長(zhǎng)的已識(shí)別完成時(shí)間相等的指定時(shí)段的處理授權(quán)。
9. 根據(jù)權(quán)利要求1所述的方法,還包括維護(hù)包含多個(gè)離散的順序時(shí)段的歷史日志,每個(gè)時(shí)段代表基本相 等的預(yù)定時(shí)間長(zhǎng)度,并且每個(gè)時(shí)段包含與給定優(yōu)先級(jí)級(jí)別相關(guān)聯(lián)的在 該時(shí)段中接收的任務(wù)請(qǐng)求的列表;記錄與給定優(yōu)先級(jí)級(jí)別相關(guān)聯(lián)的在當(dāng)前時(shí)段中接收的任務(wù)請(qǐng)求;以及在當(dāng)前時(shí)段屆滿時(shí),將當(dāng)前時(shí)段傳送到所述歷史日志,并從該歷 史日志中去除最早的時(shí)段;其中根據(jù)任務(wù)請(qǐng)求的歷史為所識(shí)別的任務(wù)請(qǐng)求關(guān)聯(lián)一處理授權(quán) 的步驟還包括使用歷史日志來表示任務(wù)請(qǐng)求的歷史。
10. 根據(jù)權(quán)利要求9所述的方法,其中使用歷史日志來關(guān)聯(lián)處理 授權(quán)的步驟還包括創(chuàng)建多個(gè)采樣日志,每個(gè)釆樣日志包含與時(shí)段的歷史日志相對(duì)應(yīng) 的多個(gè)離散的順序時(shí)段,并且每個(gè)采樣日志中的每個(gè)時(shí)段包含任務(wù)請(qǐng) 求的預(yù)定分組;把一處理授權(quán)與已創(chuàng)建的每個(gè)采樣日志相關(guān)聯(lián);將歷史日志與已創(chuàng)建的采樣日志之一進(jìn)行匹配;以及 關(guān)聯(lián)與所匹配的釆樣日志相關(guān)聯(lián)的處理授權(quán)。
11. 根據(jù)權(quán)利要求l所述的方法,其中所述多個(gè)任務(wù)請(qǐng)求包括計(jì) 算系統(tǒng)內(nèi)的資源請(qǐng)求。
12. 根據(jù)權(quán)利要求11所述的方法,其中資源請(qǐng)求包括存儲(chǔ)器請(qǐng)求。
13. —種用于對(duì)任務(wù)請(qǐng)求進(jìn)行調(diào)度的方法,該方法包括 維護(hù)包含一個(gè)或多個(gè)高優(yōu)先級(jí)任務(wù)請(qǐng)求的高優(yōu)先級(jí)隊(duì)列; 維護(hù)包含一個(gè)或多個(gè)低優(yōu)先級(jí)任務(wù)請(qǐng)求的低優(yōu)先級(jí)隊(duì)列;維護(hù)包含多個(gè)離散的順序時(shí)段的歷史日志,每個(gè)時(shí)段代表基本相 等的預(yù)定時(shí)間長(zhǎng)度,并且每個(gè)時(shí)段包含在該時(shí)段中接收的高優(yōu)先級(jí)任 務(wù)請(qǐng)求的列表;記錄在當(dāng)前時(shí)段中接收的高優(yōu)先級(jí)任務(wù)請(qǐng)求;在當(dāng)前時(shí)段屆滿時(shí)將當(dāng)前時(shí)段傳送到歷史日志,并從該歷史日志 中去除最早的時(shí)段;創(chuàng)建多個(gè)采樣日志,每個(gè)采樣日志包含與時(shí)段的歷史日志相對(duì)應(yīng) 的多個(gè)離散的順序時(shí)段,并且每個(gè)釆樣日志中的各時(shí)段包含任務(wù)請(qǐng)求 的預(yù)定分組;把一給定調(diào)度規(guī)則與已創(chuàng)建的每個(gè)釆樣日志相關(guān)聯(lián); 將歷史日志與已創(chuàng)建的采樣日志之一進(jìn)行匹配;以及 執(zhí)行與所匹配的采樣日志相關(guān)聯(lián)的規(guī)則。
14. 一種用于對(duì)任務(wù)請(qǐng)求進(jìn)行調(diào)度的設(shè)備,包括 用于維護(hù)包含計(jì)算系統(tǒng)內(nèi)被要處理的多個(gè)任務(wù)請(qǐng)求的列表的裝置;用于識(shí)別所述多個(gè)任務(wù)請(qǐng)求中要被調(diào)度以供處理的一個(gè)任務(wù)請(qǐng) 求的裝置;用于根據(jù)計(jì)算系統(tǒng)內(nèi)的任務(wù)請(qǐng)求的歷史為所識(shí)別的任務(wù)請(qǐng)求關(guān) 聯(lián)一處理授權(quán)的裝置,該處理授權(quán)是從包含下列處理授權(quán)的組中選出 的立即處理所識(shí)別的任務(wù)請(qǐng)求,將對(duì)所識(shí)別的任務(wù)請(qǐng)求的處理推遲指定時(shí)段,以及拒絕處理所識(shí)別的任務(wù)請(qǐng)求;以及用于根據(jù)關(guān)聯(lián)的處理授權(quán)來處理所識(shí)別的任務(wù)請(qǐng)求的裝置。
15. 根據(jù)權(quán)利要求14所述的設(shè)備,還包括用于把一優(yōu)先級(jí)級(jí)別與所述多個(gè)任務(wù)請(qǐng)求中的每個(gè)任務(wù)請(qǐng)求相 關(guān)聯(lián)的裝置;以及用于識(shí)別所述多個(gè)任務(wù)請(qǐng)求中的一個(gè)任務(wù)請(qǐng)求的裝置還包括使的丄個(gè)任務(wù)請(qǐng)求的裝置。、 、 、、 '、
16. 根據(jù)權(quán)利要求15所述的設(shè)備,其中用于維護(hù)列表的裝置還包括用于將該列表保持在至少兩個(gè)隊(duì)列中的裝置,每個(gè)隊(duì)列都與 一個(gè) 不同的優(yōu)先級(jí)級(jí)別相關(guān)聯(lián)并且包括所述多個(gè)任務(wù)請(qǐng)求中的一個(gè)或多 個(gè)任務(wù)請(qǐng)求,其中任意給定隊(duì)列中的每個(gè)任務(wù)請(qǐng)求的關(guān)聯(lián)優(yōu)先級(jí)級(jí)別 與該隊(duì)列的所述不同的優(yōu)先級(jí)級(jí)別基本相同。
17. 根據(jù)權(quán)利要求16所述的設(shè)備,其中用于在至少兩個(gè)隊(duì)列中 維護(hù)該列表的裝置還包括用于維護(hù)包含一個(gè)或多個(gè)高優(yōu)先級(jí)任務(wù)請(qǐng)求的高優(yōu)先級(jí)隊(duì)列的 裝置;以及用于維護(hù)包含一個(gè)或多個(gè)低優(yōu)先級(jí)任務(wù)請(qǐng)求的低優(yōu)先級(jí)隊(duì)列的裝置。
18. 根據(jù)權(quán)利要求16所述的設(shè)備,其中用于識(shí)別所述多個(gè)任務(wù) 請(qǐng)求中要被調(diào)度的一個(gè)任務(wù)請(qǐng)求的裝置還包括用于執(zhí)行下列處理中 的至少一個(gè)的裝置使用包含在每個(gè)隊(duì)列內(nèi)的任務(wù)請(qǐng)求的數(shù)量來識(shí)別 要被調(diào)度的任務(wù)請(qǐng)求;以及使用每個(gè)隊(duì)列中的最早任務(wù)請(qǐng)求的經(jīng)時(shí)來 識(shí)別要被調(diào)度的任務(wù)請(qǐng)求。
19. 根據(jù)權(quán)利要求14所述的設(shè)備,其中用于根據(jù)任務(wù)請(qǐng)求的歷 史為所識(shí)別的任務(wù)請(qǐng)求關(guān)聯(lián)一處理授權(quán)的裝置還包括使用任務(wù)請(qǐng)求 的歷史來識(shí)別在處理所識(shí)別的任務(wù)請(qǐng)求期間出現(xiàn)后續(xù)任務(wù)請(qǐng)求的概 率的裝置,其中對(duì)該后續(xù)任務(wù)請(qǐng)求的處理與對(duì)所識(shí)別的任務(wù)請(qǐng)求的處理相沖突。
20.根據(jù)權(quán)利要求19所述的設(shè)備,其中用于關(guān)聯(lián)處理授權(quán)的裝 置還包括用于執(zhí)行以下處理中的至少一個(gè)的裝置當(dāng)任何所識(shí)別的出 現(xiàn)概率超出預(yù)定閾值時(shí),延遲對(duì)所識(shí)別的任務(wù)請(qǐng)求的處理,以及拒絕 對(duì)所識(shí)別的任務(wù)請(qǐng)求的處理。
全文摘要
本發(fā)明提供了用于對(duì)任務(wù)請(qǐng)求進(jìn)行調(diào)度的方法和設(shè)備。提供了根據(jù)任務(wù)請(qǐng)求的歷史對(duì)計(jì)算系統(tǒng)內(nèi)的任務(wù)請(qǐng)求進(jìn)行調(diào)度的系統(tǒng)和方法。任務(wù)請(qǐng)求的歷史可以用歷史日志來表示,該歷史日志監(jiān)視隨著時(shí)間流逝而對(duì)高優(yōu)先級(jí)任務(wù)請(qǐng)求提交的接收。該歷史日志與其它的用戶定義的調(diào)度規(guī)則相結(jié)合,被用于調(diào)度任務(wù)請(qǐng)求。在一個(gè)列表中維護(hù)計(jì)算機(jī)系統(tǒng)中的任務(wù)請(qǐng)求,該列表可以劃分為隊(duì)列層級(jí),該隊(duì)列層級(jí)是通過與該隊(duì)列內(nèi)包含的任務(wù)請(qǐng)求相關(guān)聯(lián)的優(yōu)先級(jí)級(jí)別來區(qū)分的。用戶定義的調(diào)度規(guī)則為較高優(yōu)先級(jí)的任務(wù)請(qǐng)求給出調(diào)度優(yōu)先級(jí),而歷史日志被用于預(yù)測(cè)高優(yōu)先級(jí)任務(wù)請(qǐng)求的后續(xù)提交,從而將延遲會(huì)干擾較高優(yōu)先級(jí)任務(wù)請(qǐng)求的較低優(yōu)先級(jí)任務(wù)請(qǐng)求,或者不將其調(diào)度以供執(zhí)行。
文檔編號(hào)G06F9/48GK101261592SQ20081008134
公開日2008年9月10日 申請(qǐng)日期2008年2月25日 優(yōu)先權(quán)日2007年3月7日
發(fā)明者D·M·達(dá)利, L·A·拉斯特拉斯-蒙塔諾, 彼德·弗拉納茲克 申請(qǐng)人:國(guó)際商業(yè)機(jī)器公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
宁南县| 临沧市| 麻栗坡县| 南丰县| 紫云| 武城县| 响水县| 清远市| 仁化县| 团风县| 彰武县| 府谷县| 孟连| 呼图壁县| 马公市| 孟州市| 宜黄县| 上蔡县| 阿合奇县| 电白县| 梧州市| 静宁县| 沙湾县| 于都县| 水富县| 靖远县| 湟源县| 延津县| 湾仔区| 内丘县| 工布江达县| 台安县| 海安县| 江北区| 文成县| 塔城市| 榆树市| 民县| 剑阁县| 莱州市| 稻城县|