免费看aⅴ,天天插天天干天天射,呦女网,入逼逼

您現(xiàn)在的位置:智能制造網(wǎng)>技術(shù)中心>源碼公開的嵌入式系統(tǒng)軟件資源

直播推薦

更多>

企業(yè)動(dòng)態(tài)

更多>

推薦展會(huì)

更多>

源碼公開的嵌入式系統(tǒng)軟件資源

2009年05月14日 17:46:07人氣:871來源:煙臺(tái)勾股通信技術(shù)有限公司

長期以來,價(jià)格因素限制了RTOS在我國嵌入式應(yīng)用產(chǎn)品開發(fā)中的推廣與普及。而隨著操作系統(tǒng)走向開放,越來越多的帶源代碼的自由軟件得到了廣泛的認(rèn)可與應(yīng)用,其中zui的是Linux。 Linux 不是實(shí)時(shí)的,于是出現(xiàn)了RTLinux, (詳見 ) RTLinux 是實(shí)時(shí)的,但不是為嵌入式應(yīng)用設(shè)計(jì)的。Linux 也不是為嵌入式應(yīng)用設(shè)計(jì)的,于是出現(xiàn)了嵌入式Linux, 如uCLinux, (詳見 ), uCLinux 在Linux基礎(chǔ)上做了簡化,去掉了多用戶及虛擬內(nèi)存管理等,適用于嵌入式應(yīng)用類CPU,內(nèi)核較Linux 小了很多,但仍有500kb之大。uCLiunx是為嵌入式應(yīng)用設(shè)計(jì)的,但不是實(shí)時(shí)的。另一個(gè)的RTOS自由軟件是RTEMS (Real-Time Executive for Missile Systems) zui初用于美國的導(dǎo)彈系統(tǒng),(詳見 /RTEMS )OARCorp 的含義是On-Line Applications Research Corporation , TREMS是實(shí)時(shí)的,zui初并不是為嵌入式應(yīng)用設(shè)計(jì)的,是為多處理器應(yīng)用設(shè)計(jì)的, C語言版本意為實(shí)時(shí)多處理系統(tǒng),Real-Time Executive for Multiprocessor Systems (C Version),其ada語言版本后來擴(kuò)展到軍方其他應(yīng)用,字母M的含義由導(dǎo)彈Missile 變?yōu)檐娛翸ilitary (ada Version) 。 RTEMS 可以用于嵌入式應(yīng)用,但應(yīng)為RTEMS總是要基于POSIX API 標(biāo)準(zhǔn),嵌入到片上系統(tǒng)難度相當(dāng)大。 這類自由軟件出自于寫Unix的專家里手,功能強(qiáng),性能穩(wěn)定可靠,雖然有源碼,但因程序量大、版本多,非Linux高手難以掌握。且相應(yīng)的內(nèi)核較大,有數(shù)百K之多,不易裁剪至嵌入到單片機(jī)中去,以實(shí)現(xiàn)片上系統(tǒng)(SOC)。一些商業(yè)軟件商將Linux 改頭換面包裝上市,于是出現(xiàn)了各種各樣的阿貓阿狗Linux, 如blue cat Linux, Yellow dog Linux ……有些價(jià)格還不低。

Linux源碼公開并不神秘,但由于代碼浩瀚,用于學(xué)習(xí)與研究實(shí)屬不易。而無論在嵌入式產(chǎn)品開發(fā)中使用還是不使用RTOS,學(xué)習(xí)和掌握RTOS的原理和設(shè)計(jì)思想都至關(guān)重要。專門為嵌入式應(yīng)用設(shè)計(jì)的RTOS,?C/OS和 ?C/OS-II 則不僅實(shí)用而且是難得的入門教材。?C/OS 是免費(fèi)軟件, 關(guān)于?C/OS的*本書是1992年出版的,世界上數(shù)以千計(jì)的工程技術(shù)人員已將?C/OS成功地移植到了幾乎所有的CUP上,并應(yīng)用到了各個(gè)應(yīng)用領(lǐng)域。 由于?C/OS的商業(yè)價(jià)值得到了認(rèn)可,?C/OS-II用于教育仍免費(fèi),商用則要許可證了 。1998年,“?C/OS-Ⅱ The Real Time Kernel”一書出版。在2年前的“嵌入式2000學(xué)術(shù)研討會(huì)”上,我介紹了?C/OS和 ?C/OS-Ⅱ,引起了國內(nèi)人士的廣泛注視,中譯本<>于2001年8月出版。我校已在嵌入式系統(tǒng)與單片機(jī)課程中用這本書作教材。不少會(huì)議要我去講解?C/OS-II,一些公司邀我去為他們的技術(shù)人員做?C/OS-II的培訓(xùn),盡管用的那些CPU我并不熟悉,共同學(xué)習(xí)并將?C/OS-II移植到一個(gè)自己不熟悉的CPU上 也是件非常有趣的事。

?C/OS-Ⅱ是一部出色的教材。書中不但給出了一個(gè)實(shí)時(shí)內(nèi)核的全部源代碼,而且對(duì)這些代碼做了詳盡的解釋。書中還對(duì)實(shí)時(shí)操作系統(tǒng)中的一些基本概念做了詳細(xì)的描述。源程序的寫作風(fēng)格、注釋都相當(dāng)漂亮、規(guī)范。商業(yè)軟件不僅僅是貴,而即使有些軟件帶源代碼一起出售,也沒有哪一個(gè)解釋的如此詳盡。

?C/OS和?C/OS-Ⅱ是專門為嵌入式應(yīng)用設(shè)計(jì)的,絕大部分代碼是用C語言寫的。CPU硬件相關(guān)部分是用匯編語言寫的,總量約200行。匯編語言部分被壓縮到zui低限度,為的是便于移植到任何一種其它的CPU上。許多移植的范例可以從上得到。用戶只要有C交叉編譯器,就可以將?C/OS-Ⅱ嵌入到開發(fā)的產(chǎn)品中。

?C/OS和?C/OS-Ⅱ是占先式(Preemptive)多任務(wù)實(shí)時(shí)內(nèi)核,是基于優(yōu)先級(jí)的,即總是讓進(jìn)入就緒態(tài)的諸任務(wù)中優(yōu)先級(jí)zui高的那個(gè)任務(wù)先運(yùn)行。每個(gè)任務(wù)都有互不相同的優(yōu)先級(jí)。zui多支持64個(gè)任務(wù)。所有?C/OS及?C/OS-Ⅱ提供的系統(tǒng)服務(wù)函數(shù)的執(zhí)行時(shí)間都是可知的。除了一個(gè)函數(shù)以外,所有函數(shù)的執(zhí)行時(shí)間都與任務(wù)數(shù)目無關(guān)。都不大于某一確定值。
?C/OS和?C/OS-Ⅱ的另一特點(diǎn)是可裁剪,即只嵌入用戶程序用得著的那些函數(shù),內(nèi)核占用的ROM/RAM資源,可以依據(jù)產(chǎn)品調(diào)整。

“?C/OS-Ⅱ the Real Time Kernel”一書和其相應(yīng)的中文本,書后所附的軟件版本是?C/OS-Ⅱ V2.00。到2001年6月,網(wǎng)上出售的?C/OS-Ⅱ的源代碼更新到了2.51。今年上半年,“?C/OS-Ⅱ The Real Time Kernel”一書的第2版又出版了,書中附了?C/OS-Ⅱ的版本V2.52。 版本的?C/OS-Ⅱ增加了一些有用的新功能,如互斥型信號(hào)量,事件標(biāo)志等,新書在講述?C/OS-Ⅱ方面增加了很多新內(nèi)容,如介紹任務(wù)間的通訊與同步,新版書由原來的1章增加到了6章,特別是在移植?C/OS-Ⅱ一章中,介紹了移植后如何測(cè)試(詳見 )。有關(guān)出版社正在購買版權(quán)的事,相信不久的將來新版?C/OS-Ⅱ的中譯本就會(huì)在國內(nèi)與讀者見面。

在?C/OS和?C/OS-Ⅱ的學(xué)習(xí)與應(yīng)用中聽到zui多的反映是兩類問題,一類是關(guān)于移植,另一類是有關(guān)基于?C/OS-Ⅱ的應(yīng)用程序。

關(guān)于移植,網(wǎng)上有40余種CPU移植的范例,包括8、16、32乃至64位CPU與DSP。從來自各方面的反映來看,移植難度并不在于?C/OS-Ⅱ本身,問題大多是由于C編譯器不同引起的。而對(duì)于高校正在就讀的研究生說來,困難還在于幾乎所有單片機(jī)用的C編譯器都是商業(yè)軟件,有些還相當(dāng)貴。我們遇到的問題是,某正版商業(yè)軟件用得好好的,忽然這個(gè)公司沒有了,新推出的單片機(jī)不支持了。

使用自由軟件Linux 下的 GNU gcc 交叉 C 編譯器作為開發(fā)工具來編譯、移植?C/OS-Ⅱ是一個(gè)不錯(cuò)的選擇。其意義決不于節(jié)省開支,學(xué)習(xí)使用自由軟件的過程實(shí)際也是打造IT 高手的過程。GNU gcc 支持幾乎所有16位、32位CPU。

Linux 下自由軟件好用,有強(qiáng)大的網(wǎng)上是*的,GNU gcc 的使用難點(diǎn)不在于交叉編譯器本身,而在于開發(fā)環(huán)境的配置。一旦系統(tǒng)開發(fā)環(huán)境建立起來了,會(huì)用了,從長遠(yuǎn)看還是很值得的。基于同一編譯器,移植?C/OS-Ⅱ?qū)⒆兊脹]有什么可討論的。

?C/OS-Ⅱ下的應(yīng)用程序,問得zui多的是關(guān)于TCP/IP 協(xié)議棧。雖然有相關(guān)商業(yè)軟件可以買到,但對(duì)于確定的嵌入式應(yīng)用,只用到CP/IP 協(xié)議棧其中一小部分時(shí),我們?nèi)灾鲝堊约簩?。Jeremy Bentham 著,“TC/PIP Lean Web Servers for Embedded System” () 給出了使用8位單片機(jī)撥號(hào)上網(wǎng)的例子。書中介紹了如何寫TCP/IP 協(xié)議棧,并附有C程序(該出中并沒有使用任何TROS)。參考這本書,我們用Motorola 8位、16位和32位單片機(jī)實(shí)現(xiàn)了通過以太網(wǎng)接口芯片直接上網(wǎng)。網(wǎng)絡(luò)協(xié)議可以在 上找到。對(duì)于8位單片機(jī)68HC08,TCP/IP 部分目標(biāo)代碼只有7kb左右。對(duì)于68HC11/12、CPU32、ColdFire等16、32位單片機(jī),寫這一類程序時(shí)你就會(huì)發(fā)現(xiàn),在RTOS ?C/OS-Ⅱ 支持下來做這件事是多么舒服。CPU要完成原來在控制系統(tǒng)中應(yīng)該完成的任務(wù),又要同時(shí)管理網(wǎng)絡(luò)的發(fā)送和接受,沒有實(shí)時(shí)操作系統(tǒng)支持簡直不可想向。
RTOS是計(jì)算機(jī)專家們多年潛心研究的成果,使用RTOS不僅增加了嵌入式應(yīng)用系統(tǒng)的可靠性,而且對(duì)關(guān)鍵事件的處理在延遲時(shí)間上有保證,即系統(tǒng)的實(shí)時(shí)性可以達(dá)到理論上可以達(dá)到的*值。 RTOS支持多任務(wù),應(yīng)用程序被分解成多個(gè)任務(wù),程序開發(fā)變得更加容易,便于維護(hù),易讀易懂,提高了開發(fā)效率,縮短了開發(fā)周期。而說到使用RTOS的缺點(diǎn)主要表現(xiàn)于RTOS本身要占用一定的資源,需要額外的ROM/RAM空間來運(yùn)行RTOS本身。這對(duì)于一些內(nèi)存十分有限、且只能工作在單片方式的單片機(jī)來說會(huì)受到限制。無論使用還是不使用RTOS,學(xué)習(xí)RTOS的基本思想都是必要的,即使您買了的商業(yè)RTOS,也不妨學(xué)習(xí)、研究一下?C/OS-Ⅱ這個(gè)小內(nèi)核,會(huì)對(duì)用好那個(gè)商業(yè)RTOS有幫助。

RTOS是開發(fā)嵌入式產(chǎn)品的有力武器,RTOS的應(yīng)用將推廣到各個(gè)嵌入式應(yīng)用的各個(gè)領(lǐng)域。學(xué)習(xí)RTOS,使用RTOS,我們?nèi)褡宓奈⒂?jì)算機(jī)嵌入式應(yīng)用技術(shù)水平將會(huì)邁上一個(gè)新的臺(tái)階。
全年征稿/資訊合作 聯(lián)系郵箱:1271141964@qq.com

免責(zé)聲明

  • 凡本網(wǎng)注明"來源:智能制造網(wǎng)"的所有作品,版權(quán)均屬于智能制造網(wǎng),轉(zhuǎn)載請(qǐng)必須注明智能制造網(wǎng),http://www.caslcampaign.com。違反者本網(wǎng)將追究相關(guān)法律責(zé)任。
  • 企業(yè)發(fā)布的公司新聞、技術(shù)文章、資料下載等內(nèi)容,如涉及侵權(quán)、違規(guī)遭投訴的,一律由發(fā)布企業(yè)自行承擔(dān)責(zé)任,本網(wǎng)有權(quán)刪除內(nèi)容并追溯責(zé)任。
  • 本網(wǎng)轉(zhuǎn)載并注明自其它來源的作品,目的在于傳遞更多信息,并不代表本網(wǎng)贊同其觀點(diǎn)或證實(shí)其內(nèi)容的真實(shí)性,不承擔(dān)此類作品侵權(quán)行為的直接責(zé)任及連帶責(zé)任。其他媒體、網(wǎng)站或個(gè)人從本網(wǎng)轉(zhuǎn)載時(shí),必須保留本網(wǎng)注明的作品來源,并自負(fù)版權(quán)等法律責(zé)任。
  • 如涉及作品內(nèi)容、版權(quán)等問題,請(qǐng)?jiān)谧髌钒l(fā)表之日起一周內(nèi)與本網(wǎng)聯(lián)系,否則視為放棄相關(guān)權(quán)利。

<
更多 >

工控網(wǎng)機(jī)器人儀器儀表物聯(lián)網(wǎng)3D打印工業(yè)軟件金屬加工機(jī)械包裝機(jī)械印刷機(jī)械農(nóng)業(yè)機(jī)械食品加工設(shè)備制藥設(shè)備倉儲(chǔ)物流環(huán)保設(shè)備造紙機(jī)械工程機(jī)械紡織機(jī)械化工設(shè)備電子加工設(shè)備水泥設(shè)備海洋水利裝備礦冶設(shè)備新能源設(shè)備服裝機(jī)械印染機(jī)械制鞋機(jī)械玻璃機(jī)械陶瓷設(shè)備橡塑設(shè)備船舶設(shè)備電子元器件電氣設(shè)備


我要投稿
  • 投稿請(qǐng)發(fā)送郵件至:(郵件標(biāo)題請(qǐng)備注“投稿”)1271141964.qq.com
  • 聯(lián)系電話0571-89719789
工業(yè)4.0時(shí)代智能制造領(lǐng)域“互聯(lián)網(wǎng)+”服務(wù)平臺(tái)
智能制造網(wǎng)APP

功能豐富 實(shí)時(shí)交流

智能制造網(wǎng)小程序

訂閱獲取更多服務(wù)

微信公眾號(hào)

關(guān)注我們

抖音

智能制造網(wǎng)

抖音號(hào):gkzhan

打開抖音 搜索頁掃一掃

視頻號(hào)

智能制造網(wǎng)

公眾號(hào):智能制造網(wǎng)

打開微信掃碼關(guān)注視頻號(hào)

快手

智能制造網(wǎng)

快手ID:gkzhan2006

打開快手 掃一掃關(guān)注
意見反饋
關(guān)閉
企業(yè)未開通此功能
詳詢客服 : 0571-87858618