<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > Linux在嵌入式系統中有關(guān)進(jìn)程調度算法的實(shí)時(shí)性改進(jìn)

Linux在嵌入式系統中有關(guān)進(jìn)程調度算法的實(shí)時(shí)性改進(jìn)

作者: 時(shí)間:2012-04-06 來(lái)源:網(wǎng)絡(luò ) 收藏

引言

作為一種通用的,它最初的設計是用于桌面系統或者小型服務(wù)器。 要將 用于嵌入式系統中,需要對 內核作一些改進(jìn),使它能更好地為嵌入式系統服務(wù)。 在這些改進(jìn)中,進(jìn)程管理是相當重要的一塊。

嵌入式系統的硬件設備與普通PC 有較大的差別。 由于要節省成本、降低功耗,嵌入式系統的CPU 可能不帶MMU ,使用的存儲設備ROM、Flach 、RAM 的容量較小,這些因素決定了需要改變Linux 進(jìn)程管理,來(lái)適應存儲系統方面的變化。進(jìn)程管理中另一個(gè)與嵌入式系統密切相關(guān)的方面就是了。盡管不是所有的嵌入式系統都需要具有實(shí)時(shí)能力,但確實(shí)是嵌入式系統最重要的特點(diǎn)之一。 兩者的關(guān)系如圖1 所示。



圖1  嵌入式系統與的關(guān)系

目前市場(chǎng)上商用的嵌入式,如VxWork、pSOS 和QNX 等都具有良好的實(shí)時(shí)性能。因此本文主要著(zhù)手討論Linux 實(shí)時(shí)性方面的改造。

Linux 在實(shí)時(shí)應用中的不足之處

雖然目前Linux 內核在實(shí)時(shí)性方面有所增強,但它仍然不是實(shí)時(shí),Linux 內核的設計關(guān)注于應用程序的吞吐量連同內核整體設計的完善。作為提高吞吐量的必然要求,Linux 的調度器試圖提供一種“公平分配”策略來(lái)保證所有的進(jìn)程可以均衡地享有CPU 的資源。 普通Linux 內核提供三種調度策略,分別為SCHEDRR、SCHEDFIFO、SCHEDOTHER。 其中第一個(gè)策略為實(shí)時(shí)進(jìn)程的基于優(yōu)先級的輪轉法, schedfifo 為實(shí)時(shí)進(jìn)程的先進(jìn)先出算法,schedother 為非實(shí)時(shí)進(jìn)程的基于優(yōu)先級的輪轉法。前兩種為軟實(shí)時(shí)策略,后者為普通實(shí)時(shí)策略。

普通時(shí)分策略保證了每個(gè)進(jìn)程相對于其靜態(tài)優(yōu)先級可以公平地獲取CPU 資源。 由于調度器按照優(yōu)先級驅動(dòng)的方式,因此軟實(shí)時(shí)進(jìn)程的優(yōu)先級要高于普通進(jìn)程,通常軟實(shí)時(shí)進(jìn)程的優(yōu)先級在1000 以上而普通進(jìn)程的優(yōu)先級在0~999之間。 由調度器調用的goodness ( ) 函數保證實(shí)時(shí)進(jìn)程先于普通進(jìn)程獲得CPU。

函數goodness() 如下:

static inline int goodness ( struct task struct 3 p ,int this
cpu ,struct mm struct 3 this mm)
int weight ;
weight=-1;
if (p->policy SCHED YIELD) goto out ;
/ 3 非實(shí)時(shí)進(jìn)程3 /
if (p=>policy==SCHED OTHER)
{weight =p->counter ;
if ( ! weight) goto out ;
if (p-> mm==this mm !!! p->mm)
weight+=1 ;
weight+=20-p->nice ;
goto out ;
}
/ 3 軟實(shí)時(shí)進(jìn)程3 /
weight=1000+p->rt priority ;
goto out ;
return weight ;
} -

linux操作系統文章專(zhuān)題:linux操作系統詳解(linux不再難懂)

上一頁(yè) 1 2 下一頁(yè)

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>