999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

SET-MRTS:一種多處理器實時系統可調度性實驗平臺

2017-07-31 17:46:49陳澤瑋楊茂林
計算機應用 2017年5期
關鍵詞:實驗系統

陳澤瑋,楊茂林,雷 航,廖 勇,謝 瑋

(1.電子科技大學 信息與軟件工程學院, 成都 610054; 2.云南省電子工業研究所, 昆明 650031)

SET-MRTS:一種多處理器實時系統可調度性實驗平臺

陳澤瑋1*,楊茂林1,雷 航1,廖 勇1,謝 瑋2

(1.電子科技大學 信息與軟件工程學院, 成都 610054; 2.云南省電子工業研究所, 昆明 650031)

(*通信作者電子郵箱chenzewei@hotmail.com)

近年來,隨著實時調度研究的快速發展,可調度性實驗的復雜性隨之增加, 然而,由于缺乏標準化、模塊化的可調度性實驗工具,研究者往往需要耗費大量時間進行實驗; 此外,由于實驗源碼不能公開獲得,使得實驗結果難以驗證,實驗代碼難以重用與擴展。針對可調度性實驗重復工作量大、難以驗證的問題,提出一種可調度性實驗基礎框架。該框架通過隨機分布產生任務系統集合,并測試其可調度性,基于該框架設計并實現了一個新的可調度性實驗開源平臺——SET-MRTS。該平臺采用模塊化架構設計了任務模塊、處理器模塊、共享資源模塊、算法庫、配置解析模塊以及輸出模塊。實驗結果表明,SET-MRTS支持單/多處理器實時調度算法和實時同步協議分析,能夠正確地進行可調度性對比實驗,輸出直觀的實驗結果,并且支持算法庫的擴充,與算法庫中已實現的算法進行對比實驗,具有良好的兼容性與可擴展性。SET-MRTS是第一個支持完整實驗流程,包括算法實現、參數配置、結果統計、圖表繪制等的可調度性實驗開源平臺。

實時嵌入式系統;多核系統;實時調度;實時鎖協議;可調度性實驗;開源平臺

0 引言

實時系統廣泛應用于航空航天、武器裝備、汽車電子、醫療電子、信息通信等安全關鍵系統[1]。隨著片上多核以及多處理器系統的大量產業應用,多核/多處理器實時系統成為計算機系統研究領域的重要課題之一, 其中,實時調度(Scheduling)與資源同步(Synchronization)是確保系統實時性的核心與關鍵技術。圍繞多核/多處理器系統的實時調度算法與實時鎖協議(Locking Protocol)成為實時系統領域的研究熱點。近年來,學術界提出了大量實時調度算法、實時任務同步協議以及相應的可調度性分析方法。如何將新算法與已有算法的可調度性能進行快速而客觀的分析比較成為亟待解決的問題。

在實時系統研究領域,一些理論指標如利用率界限(Utilization Bound)[2]和加速因子(Speedup Factor)[3]等常用于基于獨立任務模型(例如周期任務模型[2]和偶發任務模型[4])的調度算法性能評價, 然而,在基于非獨立任務模型的研究中,例如實時鎖協議[5-7]等領域,直接使用這些理論指標進行性能評價尚有一定困難。此外,這些理論指標可能受限于實際系統中幾乎不會發生的極端情況,因而并不能全面反映具體算法在某些應用場景中的性能。為了快速比較多個算法的相對性能,分析特定因素對算法性能的影響,算法研究中往往通過設計隨機實驗觀測算法性能的變化趨勢。近年來,隨機實驗方法已廣泛用于驗證實時調度算法以及實時鎖協議的可調度性能。

隨機實驗通常包括隨機參數產生、算法邏輯實現、重復實驗、數據結果統計以及圖表繪制等。由于目前尚沒有完整的模塊化和標準化實驗工具,當研究者提出新的算法時通常需要耗費大量時間重復以上過程。為了進行充分的橫向比較,實驗中還需要實現已有的相關算法,從而進一步增加了實驗用時。此外,大量文獻中所發表的實驗結果均來自于作者個人或其研究小組的獨立實驗,實驗源碼通常不能公開獲取,因此難以對實驗結果進行驗證。另一方面,現有的部分實驗源碼[8-10]往往僅包含針對特定系統模型的隨機數產生方法,以及針對具體算法的邏輯實現。由于系統模型的兼容性以及調用不同算法的差異性等問題,具體實驗中往往難以直接重用或擴展現有代碼。

基于以上背景,本文針對實時系統可調度性實驗提出一種隨機實驗框架,并基于該框架開發了可調度性實驗開源平臺SET-MRTS(Schedulability Experiment Toolkit for Multiprocessor Real-Time Systems)(https://github.com/ChenZewei/SET-MRTS)。開源平臺基于C++語言開發,包含了進行可調度性實驗所需的完整工具,包括系統參數產生模塊、算法庫、實驗配置模塊、數據統計模塊以及圖表繪制模塊。其中,系統參數模塊提供了靈活豐富的系統參數,包括任務參數、處理器參數、共享資源參數等。用戶可以基于這些參數實現各種算法并將新算法添加到算法庫。算法庫中的所有算法均可以重用。隨機實驗中,用戶只需根據實驗需求,在配置模塊中對實驗參數進行簡單配置,同時選取所需比較的算法。SET-MRTS將根據配置信息進行重復實驗,統計實驗結果并自動繪圖。SET-MRTS是第一個具備完整可調度性實驗工具鏈的開源平臺。

1 實時調度領域相關研究

1.1 相關工作

可調度性實驗廣泛用于實時調度算法分析與比較。文獻[11]針對單處理器系統可調度性實驗,提出了UUnifast算法用以隨機產生均勻分布的任務資源利用率(Utilization)。文獻[12]針對多處理器系統,研究了任務資源利用率的產生方法,提出了UUnifast-Discard算法。在可調度性實驗平臺方面,國內尚沒有開源實驗平臺,國際上也僅有少數研究團隊發布了可調度性實驗所需的部分工具。

馬克斯普朗克軟件系統研究所(Max Planck Institute for Software System)開發的SchedCAT[8]是目前維護較活躍的多處理器可調度性實驗開源工具。SchedCAT最初用于多處理器實時鎖協議分析[5],是目前最完善的實時鎖協議分析工具; 然而,SchedCAT僅包含系統參數產生模塊和算法庫,用戶必須獨立設計實驗流程并完成數據統計和繪圖。ReTis實驗室的開源工具Algorithms[9]是針對單處理器實時調度算法的算法庫。該工具僅包含UUnifast算法以及實現單處理器可調度性分析的Matlab函數,而缺乏支持完整隨機實驗所需的其他模塊。意大利系統分析與計算機科學研究所(IASI)發布的多處理器可調度性判定工具C++ Exact Multiprocessor Feasibility/Schedulability Tools[10],但僅用于判斷某個給定任務系統的可調度性,尚不支持批量化隨機實驗。此外,一些研究團隊發布了實時調度仿真開源工具,如YAO-SIM[13]、RTSIM[14]、PartiCor[15]、TrueTime[16]等。然而,調度仿真僅能夠作為系統不可調度的充分條件,不能直接用于評價可調度性分析方法的性能。本文推出的開源工具平臺SET-MRTS包含了可調度性實驗所需的完整模塊且易于擴展,可直接用于可調度性實驗。

1.2 可調度性判定

常用的可調度性分析方法包括響應時間分析法(Response-Time Analysis, RTA)和資源利用率界限判定法。

1.2.1 基于響應時間分析的判定

定義1 任務τi的第j個任務實例記為Ji, j。令Ji, j的釋放時間為ri, j,完成時間為fi, j,則響應時間Ri, j為:

Ri, j=fi, j-ri, j

(1)

任務τi的最壞響應時間(Worst-Case Response Time, WCRT)Ri為τi的所有任務實例的響應時間的最大值,即:

(2)

根據經典RTA分析框架[17],Ri可進一步表示為:

Ri=Ci+Bi+Ii

(3)

其中:Ci為τi的最壞執行時間(Worst-Case Execution Time,WCET),Bi為τi的最壞阻塞時間(Worst-Case Blocking Time, WCBT),Ii為τi的最大搶占延遲(Interference)。Ri的具體計算方法由具體調度算法、鎖協議以及可調度性分析方法決定。

若計算法所得的Ri不大于τi的相對截止時間,則稱該任務可調度。若任務系統中所有任務均可調度,則稱該任務集合可調度。

1.2.2 資源利用率界限判定法

資源利用率界限判定法常用于隱式截止時間(Implicit Deadline)周期任務系統。令τi的最壞執行時間為Ci,相對截止時間為Di,周期為Ti。τi的相鄰兩個任務實例的時間間隔為Ti,且Ti=Di。任務τi以及任務系統的資源利用率定義如下。

定義2 任務τi的資源利用率ui如式(4)所示,任務系統Γ的資源利用率U如式(5)所示:

(4)

(5)

一個調度算法A的資源利用率界限為UA,則可確保任意資源利用率小于等于UA的任務系統在算法A中可調度。例如,在單處理器系統中最早截止時間優先(Earliest Deadline First, EDF)算法的利用率界限為1,則對于任意資源利用率不大于1的隱式截止時間周期任務系統,EDF算法能夠確保該任務系統可調度。

2 平臺設計與實現

2.1 平臺設計需求

SET-MRTS的設計目的是提供一個功能完善、兼容性強、易于擴展的可調度性實驗平臺,用戶無需二次開發便可使用該平臺進行可調度性實驗。當需要對算法庫中尚未建立的算法或分析方法(如新提出的方法)進行實驗時,開發者僅需實現該方法即可與算法庫中所有方法進行比較。

2.2 平臺模塊設計

為了實現上述設計需求,采取了高內聚、低耦合的模塊化設計方法。SET-MRTS主要包括任務模塊、處理器模塊、共享資源模塊、配置解析模塊以及輸出模塊。其中,任務模塊、處理器模塊與共享資源模塊之間具有關聯關系。例如,在分組調度(Partitioned Scheduling)算法可調度性實驗中,處理器模塊中需要維護分配到各處理器上的任務信息;而在實時鎖協議可調度性實驗中,任務模塊也需要維護每個任務所訪問的共享資源信息。此外,各子模塊間還存在聚合或組合的關系。平臺的結構圖(類圖)如圖1所示(空心菱形為聚合關系,實心菱形為組合關系,箭頭為關聯關系)。

任務模塊是SET-MRTS中的重要模塊,由任務類、任務集合類以及共享資源請求類所構成。其中,任務類(Task)描述了可調度性分析方法中所使用的所有隨機任務參數,包括了任務的最壞執行時間(WCET)、相對截止時間(Deadline)、周期(Period)和共享資源請求(Request)等主要屬性。新的任務將被加入任務集合中,組成一個任務系統。通過任務集合類(TaskSet)可以獲得系統資源利用率(get_utilization_sum)、最大任務資源利用率(get_utilization_max)等,并且可以根據某一屬性對任務進行排序(sort_by_xxx),使任務系統能夠靈活地調整,為各種可調度性分析方法的實現提供了方便。此外,每個任務還通過共享資源請求類來表示對共享資源的訪問。

圖1 SET-MRTS的類圖Fig. 1 Class diagram of SET-MRTS

處理器模塊則包括通過處理器類和處理器集合類。處理器類用于描述實驗所使用的處理器模型,包括各處理器的執行速率(Speedfactor)以及處理器系統的規模(核心數量,core_num)等。處理器集合(ProcessorSet)類則用于表示處理器平臺的組成。雖然SET-MRTS現在主要用于同構多處理器下可調度性分析方法的測試,但也為異構多核/多處理器平臺與可并行任務模型下的實時任務調度分析提供了基礎。

共享資源模塊主要用于實時調度領域中的實時鎖協議分析,如多處理器優先級天花板協議(Multiprocessor Priority Ceiling Protocol, MPCP)[18]、分布式優先級天花板協議(Distributed Priority Ceiling Protocol, DPCP)[19]和多處理器堆資源協議(Multiprocessor Stack Resource Protocol, MSRP)[20]等。該模塊由共享資源類與共享資源集合類所組成,其中共享資源類對共享資源進行了抽象描述,包括了共享資源號、共享資源的全局性(global_resource)以及訪問該共享資源的任務隊列(TaskQueue)等。共享資源類通過共享資源集合類(ResourceSet)進行封裝。通過該模塊可以描述整個系統的共享資源,并且與各個任務建立訪問關系,從而實現共享資源的優先級天花板(Priority Ceiling)查詢以及任務的阻塞時間分析。

以上3個模塊是SET-MRTS的核心組成部分,也是可調度性分析所依賴的基本結構。通過對這些模塊進行操作,能夠規范實驗流程,確保實驗平臺可調度性分析方法的兼容性與可擴展性。

此外,隨機實驗參數設置也是實驗流程的重要環節。SET-MRTS采用配置文件的方式實現實驗參數的輸入。參數配置模塊通過實現一個解析類對使用XML格式的配置文件進行解析,并存放在指定的參數結構中。如圖1的配置模塊中,XML類通過get_integers函數來提取配置文件中指定元素的整型參數集合。用戶僅需要對配置文件進行配置即可進行實驗。通過參數配置模塊能夠有效提高參數輸入的效率。隨著SET-MRTS的不斷拓展與更新,會有更多的參數需要輸入,配置模塊能夠保證參數的拓展不影響平臺的兼容性。

目前已知的其他開源平臺僅提供實驗結果的在線輸出,或通過文本格式保存實驗統計結果,用戶需要對該結果進行整理,才能夠得到更加直觀的實驗結果。SET-MRTS的輸出模塊不僅能夠在實驗結束后以文本格式保存實驗結果(通過Output類),還能夠根據配置生成對應的折線圖(通過Chart類),并保存為位圖或矢量圖,從而為研究者提供更直觀的實驗統計結果。

2.3 實驗流程

2.3.1 實驗流程

實驗中,SET-MRTS通過參數輸入模塊建立實驗場景,然后根據可調度性分析方法圍繞任務模塊、處理器模塊以及共享資源模塊進行相應操作,并輸出實驗統計結果。實驗開始時,通過XML類提取配置文件中的參數并保存于Param類的實例中,并以此參數建立實驗場景,例如處理器種類與數量、生成共享資源實例以及產生任務系統等。接著,測試所選可調度性分析方法在以上實驗場景中的可調度率,并進行重復實驗。最后,統計各算法的性能指標(如可調度率)并通過輸出模塊輸出實驗結果。整體實驗流程如圖2所示。

圖2 實驗流程Fig. 2 Flow chart of experiments

2.3.2 參數配置

SET-MRTS使用XML結構化語言描述實驗參數,并通過配置文件進行參數配置。用戶可以配置隨機實驗參數的產生規則,如任務資源利用率均值、任務系統資源利用率取值范圍,以及任務集合資源利用率取值的步長等。配置文件支持整型、浮點型、字符型參數的輸入,并支持多組數據的組合輸入。實驗參數配置示例如下所示:

//實驗中任務系統資源利用率增長的步長

//任務系統資源利用率范圍 …

2.3.3 任務系統產生

SET-MRTS使用隨機分布產生任務的屬性。根據配置文件中設置的參數產生范圍,使用基于均勻分布和指數分布等隨機數產生方法隨機產生任務周期、任務最壞執行時間、任務截止時間、任務資源利用率等參數; 同時,記錄每個任務集合的任務數、任務系統資源利用率等參數。該流程偽代碼如下:

uniform_gen(int min, int max) //產生在min和max之間的均勻分布隨機數 exponential _gen(int lambda) //以lambda為率參數產生指數分布隨機數 while(current_utilization < utilization_bound) { period=uniform_gen(u_min, u_max); deadline=uniform_gen(d_min, d_max) * period; utilization=exponential_gen(lambda); if(current_utilization+utilization>utilization_bound); { utilization=utilization_bound-current_utilization; } wcet=period * utilization; taskset.add_task(wcet, deadline, period); }

2.3.4 共享資源訪問

共享資源是實時鎖協議分析中的重要結構。任務所需要訪問的共享資源集合、任務訪問每個共享資源的最大次數以及最長訪問時間是計算任務阻塞時間的主要依據。SET-MRTS采用訪問概率來決定任務對共享資源的請求,該流程的偽代碼如下:

calculate_total_len()

//用于計算訪問總時長 add_request()

//用于將共享資源訪問申請添加至任務 add_task()

//用于將該任務添加到共享資源訪問隊列 probability(double P)

//以概率P為真 foreach(resource in resource_set) { if(probability(request_prob)) { request_num=uniform_gen(1, num_max); max_len=uniform_gen(len_min, len_max); total_len=calculate_total_len(); task.add_request(request_num, max_len, total_len); resource_set.add_task(&task); } }

任務創建時將遍歷共享資源集合,根據配置文件中設置的共享資源訪問概率隨機確定是否訪問某個共享資源,并通過隨機分布函數產生其他屬性。

2.4 平臺擴展性

SET-MRTS具有良好的兼容性與可擴展性。實驗平臺能夠方便地實現新的可調度性分析方法并能夠與已實現的方法進行比較。分析者只需要按照各模塊的格式實現新的算法并添加到算法庫中,便能夠通過配置文件隨意選擇算法庫中的算法進行實驗比較。在實驗平臺的設計和實現中,采取了模塊化的方法來設計和實現平臺的任務、處理器和共享資源模塊。各模間通過清晰的接口連接,從而方便設計者實現新的算法。隨著本平臺功能的擴充,將支持更多的可調度性分析方法。

3 實驗與分析

以下通過兩個簡單的實驗來驗證SET-MRTS的功能。實驗一針對獨立任務模型,不包含實時鎖協議的分析,因此沒有配置共享資源參數。實驗二則分別對基于自旋鎖和信號量機制的實時鎖協議進行分析。實驗二中測試了共享資源訪問概率對可調度率的影響。兩個實驗均采用了同構多處理器模型,所有處理器的執行速度均相同。

3.1 實驗配置

表1列出了實驗一所使用的主要參數。

表1 獨立任務模型主要參數Tab. 1 Primary parameters for independent task model

3.2 實驗結果與分析

以經典可調度性分析方法為例進行可調度性實驗,由實驗平臺所導出的折線圖結果如圖3所示。

圖3 可調度性分析方法的實驗結果對比Fig. 3 Result comparison of some schedulability analysis methods

實驗一的結果如圖3所示,展示了獨立任務模型中多種分析方法的可調度率(Ratio)隨系統資源利用率(TaskSet Utilization)的變化趨勢。其中,RTA-GFP表示基于全局固定優先級調度的響應時間分析,其后綴則表示分析方法的不同版本,[native]為文獻[21]的響應時間分析方法,[bc]則是Bertogna和Cirinei提出的改進方法[22],[gn]則是由Guan等所提出的分析方法[23]。WF-DM和WF-EDF表示分組調度中采用Worst-Fit(WF)算法進行任務分配的可調度率。其中,DM和EDF分別表示采用單調截止時間(Deadline-Monotonic)算法[24]以及最早截止時間優先(Earliest Dealine First, EDF)[2]算法進行任務調度。圖3所示的各算法可調度率變化趨勢與相應理論分析的結論一致。

實驗二對多處理器環境下基于自旋鎖機制[20]和信號量機制[25-26]的實時鎖協議作對比實驗,圖例中[spin]為使用自旋鎖機制的可調度性測試,[semaphore]則使用了信號量機制,并使用無共享資源的可調度性測試[normal]作為最優參照組。實驗中所使用的參數配置與表1保持一致,而對于產生共享資源的主要參數配置則如表2所示,實驗結果如圖4所示。

表2 共享資源模型主要參數Tab. 2 Primary parameters for shared resource model

圖4 包含鎖協議的分組調度分析方法對比Fig. 4 Result comparison of some partitioned scheduling analysis methods using locking protocol

4 結語

本文針對實時系統設計中的可調度性分析技術,提出了一種可調度性實驗框架,并基于該框架設計實現了一個新的可調度性實驗開源平臺SET-MRTS。該平臺基于模塊化設計原則,提供了可調度性實驗所需的完整功能模塊。SET-MRTS是第一個提供從算法實施、參數配置、隨機實驗、結果統計到自動繪圖全過程支持的可調度性實驗開源平臺。對圖模型分析的支持和異構多處理器平臺的可調度性分析是SET-MRTS下一步的工作重點。

References)

[1] DAVIS R I, BURNS A. A survey of hard real-time scheduling for multiprocessor systems[J]. ACM Computing Surveys, 2011, 43(4):88-87.

[2] LIU C L, LAYLAND J W. Scheduling algorithms for multiprogramming in a hard-real-time environment[J]. Journal of the ACM, 1973, 20(1): 46-61.

[3] KALYANASUNDARAM B, PRUHS K. Speed is as powerful as clairvoyance[J]. Journal of the ACM, 2000, 47(4):617-643.

[4] LEUNG Y T. A new algorithm for scheduling periodic, real-time tasks[J]. Algorithmica, 1989, 4(1):209-219.

[5] BRANDENBURG B B. Improved analysis and evaluation of real-time semaphore protocols for P-FP scheduling[C]// Proceedings of the 2013 IEEE 19th Real-Time and Embedded Technology and Applications Sysmposium. Piscataway, NJ: IEEE, 2013: 141-152.

[6] YANG M, WIEDER A, BRANDENBURG B B. Global real-time semaphore protocols: a survey, unified analysis, and comparison[C]// Proceedings of the 2015 IEEE Real-time Systems Symposium. Piscataway, NJ: IEEE, 2015:1-12.

[7] YANG M L, LEI H, LIAO Y, et al. Improved blocking time analysis and evaluation for the multiprocessor priority ceiling protocol[J]. Journal of Computer Science and Technology, 2014, 29(6):1003-1013.

[8] SchedCAT: Schedulability test collection and toolkit[EB/OL]. [2016-08-10].http://www.mpi-sws.org/~bbb/projects/schedcat.

[9] Algorithms: Matlab functions for real-time analysis[EB/OL]. [2016-08-10].http://retis.sssup.it/?q=algorithms.

[10] BONIFACI V, MARCHETTI-SPACCAMELA A. Feasibility analysis of sporadic real-time multiprocessor task systems[J]. Algorithmica, 2010, 63(4):763-780.

[11] BIMI E, BUTTAZZO G C. Measuring the performance of schedulability tests[J]. Real-Time Systems, 2005, 30(1):129-154.

[12] DAVIS R I, BURNS A. Improved priority assignment for global fixed priority preemptive scheduling in multiprocessor real-time systems[J]. Real-Time Systems, 2011, 47(1): 1-40.

[13] YAO-SIM: Yet Another Operating System sIMulator[EB/OL]. [2016-08-10].http://yaosim.sssup.it.

[14] RTSIM: Real-time system simulator[EB/OL]. [2016-08-10].http://rtsim.sssup.it.

[15] PartiCore: Partitioning tool for multi-core reservations[EB/OL]. [2016-08-10].http://particore.sssup.it.

[16] TrueTime: Simulation of networked and embedded control systems [EB/OL]. [2016-08-10].http://www.control.lth.se/attic/truetime.

[17] AUDESLY N, BURNS A, RICHARDSON M, et al. Applying new scheduling theory to static priority pre-emptive scheduling[J]. Software Engineering Journal, 1993, 8(5):284-292.

[18] RAJKUMAR R, SHA L, LEHOCZKY J P. Real-time synchronization protocols for multiprocessors[C]// Proceedings of the 1988 Real-Time Systems Symposium. Piscataway, NJ: IEEE, 1988:259-269.

[19] RAJKUMAR R. Real-time synchronization protocols for shared memory multiprocessors[C]// Proceedings of the 10th International Conference on Distributed Computing Systems. Piscataway, NJ: IEEE, 1990:116-123.

[20] GAI P, LIPARI G, NATALE M D. Minimizing memory utilization of real-time task sets in single and multi-processor systems-on-a-chip[C]// Proceedings of the 22nd Real-Time Systems Symposium. Washington, DC: IEEE Computer Society, 2001:73-83.

[21] JONSSON J. Some insights on fixed-priority preemptive non-partitioned multiprocessor scheduling[EB/OL].[2016-05-20]. https://users.soe.ucsc.edu/~sbrandt/rtss2000/proceedings/14.pdf.

[22] BERTOGNA M, CIRINEI M. Response-time analysis for globally scheduled symmetric multiprocessor platforms[C]// Proceedings of the 28th IEEE International Real-Time Systems Symposium. Washington, DC: IEEE Computer Society, 2007:149-160.

[23] GUAN N, STIGGE M, YI W, et al. New response time bounds for fixed priority multiprocessor scheduling[C]// Proceedings of the 30th IEEE Real-Time Systems Symposium. Piscataway, NJ: IEEE, 2009: 387-397.

[24] ABDELZAHER T F, SHARMA V, LU C. A utilization bound for aperiodic tasks and priority driven scheduling[J]. IEEE Transactions on Computers, 2004, 53(3):334-350.

[25] CHEN J, NELISSEN G, HUANG W, et al. Many suspensions, many problems: a review of self-suspending tasks in real-time systems[EB/OL].[2016-08-05].http://ls12-www.cs.tu-dortmund.de/daes/media/documents/publications/downloads/2016-chen-techreport-854.pdf.

[26] LAKSHMANAN K, NIZ D, RAJKUMAR R. Coordinated task scheduling, allocation and synchronization on multiprocessors[C]// Proceedings of the 2009 30th IEEE Real-Time Systems Symposium. Washington, DC: IEEE Computer Society, 2009: 469-478.

This work is partially supported by the National Key Technology Research and Development Program of China (2012BAH44F02).

CHEN Zewei, born in 1991, Ph. D. candidate. His research interests include real-time scheduling, embedded system.

YANG Maolin, born in 1987, Ph. D. candidate. His research interests include real-time scheduling, real-time locking protocol, embedded system.

LEI Hang, born in 1960, Ph. D., professor. His research interests include embedded software, software trusted test.

LIAO Yong, born in 1976, Ph. D., associate professor. His research interests include embedded real-time system.

XIE Wei, born in 1971, M. S., senior engineer. His research interests include computer engineering and electronic technology.

SET-MRTS: Schedulability experiment toolkit for multiprocessor real-time systems

CHEN Zewei1*, YANG Maolin1, LEI Hang1, LIAO Yong1, XIE Wei2

(1.SchoolofInformationandSoftwareEngineering,UniversityofElectricityScienceandTechnologyofChina,ChengduSichuan610054,China;2.YunnanResearchInstituteofElecronicIndustry,KunmingYunnan650031,China)

In recent years, the complexity of conducting schedulability experiments increases with the rapid development of real-time scheduling research. In general, schedulability experiments are time-consuming in the absence of standardized and modularized experiment tools. Moreover, since the source codes are not publicly available, it is difficult to verify the reported results in the literature, and to reuse and extend the experiments. In order to reduce the repeative work and help the vertification, a basic schedulability experiment framework was proposed. This experiment framework generated task systems through random distribution, and then tested their schedulability, and based on the framework, a novel open-source schedulability platform called SET-MRTS (Schedulability Experiment Toolkit for Multiprocessor Real-Time Systems) was designed and realized. The platform adopted the modular architecture. SET-MRTS consisted of the task module, the processor module, the shared resource module, the algorithm library, the configuration module and the output module. The experimental results show that, SET-MRTS supports uni-and multi-processor real-time scheduling algorithms and synchronization protocol analyses, which can correctly perform the schedulability test and output intuitive experimental results, and support the expansion of the algorithm library. Compared with algorithms in the algorithms library implemented in the experiment, SET-MRTS has good compatibility and expansibility. SET-MRTS is the first open source platform to support a complete experimental process, including algorithmic implementation, parameter configuration, result statistics, charting, and so on.

real-time and embedded system; multicore system; real-time scheduling; real-time locking protocol; schedulability experiment; open-source platform

2016-11-10;

2016-12-09。 基金項目:國家科技支撐計劃項目(2012BAH44F02)。

陳澤瑋(1991—),男,海南文昌人,博士研究生,主要研究方向:實時調度、嵌入式系統; 楊茂林(1987—),男,四川宜賓人,博士研究生,主要研究方向:實時調度、實時鎖協議、嵌入式系統; 雷航(1960—),男,四川自貢人,教授,博士,主要研究方向:嵌入式軟件、可信軟件測試; 廖勇(1976—),男,四川自貢人,副教授,博士,主要研究方向:嵌入式實時系統; 謝瑋(1971—),男,云南昆明人,高級工程師,碩士,主要研究方向:計算機及電子技術。

1001-9081(2017)05-1270-06

10.11772/j.issn.1001-9081.2017.05.1270

TP316.2

A

猜你喜歡
實驗系統
記一次有趣的實驗
Smartflower POP 一體式光伏系統
工業設計(2022年8期)2022-09-09 07:43:20
微型實驗里看“燃燒”
WJ-700無人機系統
ZC系列無人機遙感系統
北京測繪(2020年12期)2020-12-29 01:33:58
基于PowerPC+FPGA顯示系統
做個怪怪長實驗
半沸制皂系統(下)
連通與提升系統的最后一塊拼圖 Audiolab 傲立 M-DAC mini
NO與NO2相互轉化實驗的改進
主站蜘蛛池模板: 欧美精品二区| 亚洲毛片一级带毛片基地| 乱人伦99久久| 97se亚洲综合在线| 国产成人亚洲精品蜜芽影院| 国产一国产一有一级毛片视频| 青青青国产免费线在| 人妻一本久道久久综合久久鬼色| 久久视精品| 无码高潮喷水专区久久| 亚洲天堂网在线播放| 国产精品思思热在线| 老司机aⅴ在线精品导航| 色妞永久免费视频| 亚洲精品第五页| 国产激情国语对白普通话| 成人国产免费| 成人亚洲天堂| 大陆精大陆国产国语精品1024| 亚洲精品无码不卡在线播放| 亚洲成A人V欧美综合天堂| 国产综合日韩另类一区二区| 丝袜美女被出水视频一区| 亚洲91精品视频| 国产91精品调教在线播放| 成人午夜视频在线| 国产精品亚洲片在线va| 国产乱论视频| 成年午夜精品久久精品| 亚洲欧美日韩综合二区三区| 日韩大片免费观看视频播放| 极品国产一区二区三区| 久久综合婷婷| 国产麻豆aⅴ精品无码| 国产精品永久不卡免费视频| 日本爱爱精品一区二区| 亚洲精品中文字幕无乱码| 国产精品久久久久无码网站| 亚洲三级a| 国产黄色片在线看| 国产亚洲欧美在线中文bt天堂 | 四虎亚洲精品| 波多野结衣一区二区三区88| 亚洲视频黄| 九色综合伊人久久富二代| 美女无遮挡被啪啪到高潮免费| 美女潮喷出白浆在线观看视频| 中文字幕在线欧美| 激情六月丁香婷婷四房播| 精品视频91| 亚洲国产精品无码AV| 伊人成人在线| 99久久人妻精品免费二区| 久久国语对白| 中文字幕va| 久久精品国产999大香线焦| 国产91精品久久| 久久这里只有精品66| 亚洲综合九九| 日韩欧美国产精品| 亚洲综合一区国产精品| 亚洲无码不卡网| 久久女人网| 国产欧美日韩在线在线不卡视频| 波多野结衣一区二区三区四区| 国产真实自在自线免费精品| 欧美亚洲国产日韩电影在线| 国产91久久久久久| 亚洲欧美日韩综合二区三区| 国产成人91精品免费网址在线| 久久综合一个色综合网| 免费va国产在线观看| 久久免费看片| 欧美特黄一免在线观看| 亚洲成人网在线观看| jizz在线免费播放| 青青青伊人色综合久久| 欧美性精品| 久久国产成人精品国产成人亚洲 | 亚洲系列无码专区偷窥无码| 亚洲中文字幕久久精品无码一区| 国产精品美人久久久久久AV|