3ASD573001A13嵌入式系統(tǒng)不是一個操作系統(tǒng),而是提供商的專有核心,或者是DOS操作系統(tǒng)的擴展。顯然這些方法并不能適應今天嵌入式系統(tǒng)開發(fā)的要求!現有的一些商業(yè)實時操作系統(tǒng),盡管提供了很小的核心和多任務開發(fā)環(huán)境,但性能并不理想,也不符合現在實時嵌入式市場的需求。 因此,人們把目光投向了通用操作系統(tǒng)(例如Windows、Solaris、linux),希望把它們“改造”為實時操作系統(tǒng)。通常這些操作系統(tǒng)功能強大,結構復雜,易于軟件的二次開發(fā),實用性強,并且提供編程人員熟悉的標準API。
此外,這些3ASD573001A13操作系統(tǒng)也提供了一些對實時軟件開發(fā)的支持。然而,這些操作系統(tǒng)用于嵌入式系統(tǒng)的開發(fā)還存在不足。嵌入式系統(tǒng)要求具備高可靠性,滿足應用需求的可剪裁性,以及比通用操作系統(tǒng)要求更高的實時性。 做為嵌入式系統(tǒng)開發(fā)的解決方案,linux在眾多通用操作系統(tǒng)中具有*的優(yōu)勢。 首先,Windows和Solaris等專有商業(yè)操作系統(tǒng)的剪裁受到商家的嚴格控制。這大大限制了*的剪裁深度。
而linux遵循GPL協議,開放所有系統(tǒng)源代碼,非常易于剪裁。 其次,同其它開放源碼的通用操作系統(tǒng)(如FreeBSD)相比,linux在多種處理器、開發(fā)板支持和軟件開發(fā)工具支持上有很強的優(yōu)勢。 linuxzui初也是作為通用操作系統(tǒng)而設計開發(fā)的,但提供了一些實時處理的支持。這包括支持大部分POSIX標準中的實時功能,支持多任務、多線程,具有豐富的通信機制等。
3ASD573001A13還提供符合了POSIX標準的調度策略,包括FIFO調度策略、時間片輪轉調度策略和靜態(tài)優(yōu)先級搶占式調度策略。其默認的調度策略是第三種。Linux還提供了內存鎖定功能,以避免在實時處理中存儲頁被換出,也提供了符合POSIX 標準的實時信號機制。 一個致命問題是,linux在用戶態(tài)支持可搶占調度策略,而在核心態(tài)卻不支持搶占式調度策略。
這樣運行在Linux核心態(tài)的任務(或3ASD573001A13系統(tǒng)調用)是不能被其它優(yōu)先級更高的任務所搶占的,這樣就會引起優(yōu)先級逆轉問題。另外,Linux操作系統(tǒng)的中斷處理句柄是不可調度的,不能依優(yōu)先級高低調度。而在實時系統(tǒng)中,卻希望中斷處理句柄同實時任務一樣,可以有優(yōu)先級來被系統(tǒng)的調度程序所調度。 此外,我們還關心和任務響應時間相關的時鐘精度,以及由于資源共享而帶來的優(yōu)先級逆轉問題。linux中硬件時鐘中斷的默認時間間隔是10ms,所有的軟件時鐘都是靠硬件來觸發(fā)的。而簡單同步機制(互斥)不支持優(yōu)先級繼承又很可能導致優(yōu)先級逆轉。
Brand New MITSUBISHI PANEL (PART# MB491A-2)
Brand New MITSUBISHI power supply unit ADU40A
Brand New MITSUBISHI ETHERNET I/F UNIT (A1SJ71QE71-B2)
Brand New MITSUBISHI Circuit Board ( RK481-37)
Brand New MITSUBISHI CONTROLLER MELSEC-Q (QA1S35B)
Brand New MITSUBISHI CONTROLLER MELSEC-Q (QA1S38B)
Brand New MITSUBISHI MELSEC (PART# QD51)
Brand New SANYO Card number POA-MD04VGA
Brand New Static Control Systems UFB15 with CD driver
Brand New MITSUBISHI MELSEC UNIT (AI61)
Brand New MITSUBISHI MELSEC INPUT UNIT (PART# AX11C)
MITSUBISHI MELSEC PROGRAMMABLE CONTROLLER (PART# AY80)
Rietschle VTE 3 Vacuum Pump WB 63/2-30 STP (Type: VTE 3)
?