新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 實時系統中混合任務集的動態電壓調節算法

        實時系統中混合任務集的動態電壓調節算法

        作者: 時間:2011-06-06 來源:網絡 收藏

          While (S不為空集){
            F=Scale_WCET(S,Slowdown_Factor[]);//計算減慢因子F
            重新設置Sm;
            Current_Scaling_Facotr *=F;
            For S中的每一個i {
              Ifi!=服務器
                Slowdown_Factor[i]=F;
            }
            重新設置集合S,讓集合S中所有的優先級小于Sm中最低優先級任務的優先級;
          }
        }

        本文引用地址:http://www.104case.com/article/150621.htm

          上面的程序通過Scale_WCET過程計算一個減慢因子,使得給定任務集中存在的一個或者多個任務的最差響應時間剛好等于它們的時限(此時該任務集剛好可調度),這樣的任務稱為“臨界任務”。Compute_Slowdown_Factors過程首先調用Scale_WCET過程計算初始任務集的同一減慢因子F;然后讓優先級低于臨界任務的任務集繼續調用Scale_WCET過程計算出新的減慢因子。這是因為如果繼續讓作用于優先級高于臨界任務的減慢因子F變小,則必然會導致至少有一個臨界任務超過時限,破壞了性;而讓作用優先級低于臨界任務的減慢因子F變小,則不會影響整個任務集的可調度性。這個過程將會反復執行,直到初始任務集中的最低優先級任務變成臨界任務。總之,這個迭代過程為每一個任務計算出減慢因子,同時保證整個任務集是可以調度的。需要說明的是,對于服務器將不會應用靜態減慢因子,因為如果增加了服務器的運行時間,則必然會造成受服務器調度的非周期性任務的平均響應時間的增加。

        3 驗證和仿真

          本通過T1 OMAP1612的TCSCDMA無線終端平臺來驗證,對嵌入式操作Nucleus微內核進行功能上的擴充,主要是實現了可延期服務器(DS)和偶發服務器(SS)來對非周期性任務進行調度。同時,又整合了基于本的DVS模塊和CPU功率檢測模塊。

          本實驗通過3種情況(沒有采用DVS算法,以及基于任務集的減慢因子DVS算法在DS和SS中的分別應用)分別在服務器利用率為25%、35%、45%的情況下進行了時間為60 s的實驗,得出各情況下能耗在不同服務器利用率下的關系,如圖1所示。

        按此在新窗口瀏覽圖片
        圖1 各種算法的能耗對比

          圖1結果表明,采用基于任務集的減慢因子DVS算法與沒有采用DVS算法相比,能耗降低了大概19.3%~32%;同時也看到,服務器利用率越高,能耗越接近于沒有采用DVS算法所產生的能耗。這是因為為了保證非周期性任務有很短的響應時間,基于任務集的減慢因子DVS算法在服務器上運行時,總是以最高頻率運行,同時高服務器利用率意味著服務器會占用很大一部分CPU周期。因此,在這樣的環境下,CPU很大的一部分時間都運行在最高頻率上,導致服務器利用率越高, 越接近沒有采用DVS算法的情況。

        4 結論

          本文提出的針對靜態空閑間隔的靜態減慢因子算法屬于脫機(offline)的DVS算法。該算法同時把占很大部分的非周期性任務一起進行分析,把非周期性任務的服務器當作周期性任務進行,從而解決了非周期性任務的功耗問題,具有很大的實際意義。在保證性能的同時,降低了系統中的無用能耗,提高了能量的有效利用率。隨著研究的深入,還將深入到對聯機(online)情況進行


        上一頁 1 2 下一頁

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 大埔区| 高阳县| 尼木县| 霍山县| 永济市| 庆城县| 怀柔区| 望谟县| 微博| 昔阳县| 高唐县| 开江县| 龙门县| 万年县| 惠州市| 宜黄县| 固安县| 托里县| 德阳市| 平乐县| 磴口县| 疏勒县| 马关县| 松溪县| 黄陵县| 兴安县| 张家口市| 盐边县| 根河市| 江永县| 富源县| 南和县| 绥宁县| 阜康市| 察雅县| 阜城县| 双城市| 安徽省| 大余县| 苍南县| 闽侯县|