ERTOS一般有用于計時的系統調用,例如RTLlnux的系統調用gettimeofday(),其精度可以達到μs級,可以滿足多數延遲時間的計時。但是,由于系統調用時有一個壓棧、出棧的過程,以及從用戶空間到系統空間的轉換,這個過程對計時會產生一定的影響。
(2)OS時鐘寄存器
PXA 255處理器內包含一個32位的OS時鐘寄存器,由一個3.6864 MHz的晶振驅動?梢栽谟嫊r開始和結束時分別讀取該寄存器的值,換算出對應的延遲時間。
(3)GPIO引腳
AMI-120接口上有許多GPIO引腳,可以考慮在計時往一個空閑的GPIO引腳上寫一個特定的信號,利用CPLD中實現的計數器對兩個信號間的時間間隔進行計數。驅動CPLD的時鐘是可以更換的,其最大允許頻率為200 MHz。這樣,考慮到CPLD的引腳間延遲,用這種方法計時的精度可以達到數+ns。
5 ERTOS對比測試
操作系統是數字系統中進行資源管理的軟件。狹義的操作系統只包括進行進程管理、內存管理、中斷管理等基本功能的內核部分;而廣義上講,操作系統除了內核外,還包括GUI、API、大量的驅動程序,甚至一些應用程序也可以認為是操作系統的一部分,F代操作系統在其內部提供了豐富的功能模塊,而嵌入式操作系統的一個顯著的特點就是,可以根據需要對這些功能模塊進行裁剪。典型的ERTOS層次結構如圖5所示。

操作系統提供的功能模塊一方面擴展了系統的功能,方便了用戶的使用;另一方面,又在一定程度上會影響系統的性能。ERTOS在對系統的功能進行選擇和剪裁時,就需要在功能和性能之間選擇一個折中點,使得系統能夠提供盡可能多的功能,同時又能滿足其實時性的需要。這就要求在進行系統的設計、選擇或者裁剪時,對操作系統增減或替換不同模塊時的性能進行對比分析。
利用上文中的測試實驗平臺,可以在兩塊開發板上分別配置有/無某個功能模塊的系統,將測試方法分別應用于兩個系統上。由于被測的系統采用的是相同的硬件架構,消除了硬件對系統性能的影響。對得到的測量結果進行對比分析,就可以比較精確和客觀地得出該功能模塊對整個系統性能影響的大小。
同樣,該實驗平臺也可以用于測試分析不同ERTOS系統的性能。
6 總 結
本文對三種ERTOS性能測試方法進行了研究,對一些指標和特性進行了分析。文章的后半部分給出了一個測試實驗平臺的結構及其功能說明,并針對實驗平臺給出了系統計時的三種方法。文中提供的測試方法和手段對ERTOS的選擇和開發有一定的參考價值。
文章來源于領測軟件測試網 http://www.kjueaiud.com/