基于嵌入式軟件開發(fā)的裸跑與RTOS的選用時(shí)機(jī)分析
在嵌入式軟件領(lǐng)域,裸跑與RTOS,總是永恒茶余飯后。其實(shí)軟件編程,就像治國之道,沒聽說過新加坡這樣的小國分什么省市自治區(qū)吧。也像開公司做生意,小公司都是老板一個(gè)人說了算,就算分部門,也沒什么意義。寫程序也一樣,裸跑就像一個(gè)大模塊,程序小的時(shí)候,程序員能控制一切,中斷+大循環(huán)這種前后臺裸跑模式最高效直觀。當(dāng)程序大了,相互之間的邏輯關(guān)系復(fù)雜了,還用一個(gè)大模塊的話,就會變得難于駕馭,容易出bug。這時(shí)候,就需要劃分模塊,劃分了模塊,就需要處理模塊間協(xié)調(diào)、資源分配、合理分配cpu時(shí)間,這些問題,在有RTOS參與下,會變得簡單些。實(shí)際上,就算沒有rtos,精明的程序員也會量身訂制地寫一個(gè)管理程序,其實(shí)這個(gè)管理程序就可以算作簡易“操作系統(tǒng)”。如果程序進(jìn)一步復(fù)雜化,代碼進(jìn)一步龐大,這種簡單的管理程序就會力不從心,選用一個(gè)rtos是最聰明的選擇。
那么,程序規(guī)模達(dá)到多大時(shí),需要操作系統(tǒng)呢?這個(gè),不能一概而論。有些代碼,很長,但邏輯很簡單,有些代碼,雖然代碼量不大,但邏輯卻很復(fù)雜。個(gè)人經(jīng)驗(yàn),臨界點(diǎn)在1~2萬行之間。





