關(guān)于我們
書(shū)單推薦
新書(shū)推薦
|
嵌入式Linux系統(tǒng)開(kāi)發(fā) ——基于A(yíng)RM處理器通用平臺(tái)(第2版) 本書(shū)系統(tǒng)論述了基于A(yíng)RM 處理器的嵌入式Linux 系統(tǒng)開(kāi)發(fā)的原理、方法與實(shí)踐。全書(shū)共14 章,包括Linux 概述與系統(tǒng)管理、Linux 編程工具及網(wǎng)絡(luò)配置、Linux 腳本編程、Linux 內(nèi)核開(kāi)發(fā)基礎(chǔ)和Linux 驅(qū)動(dòng)開(kāi)發(fā)基礎(chǔ)與調(diào)試等內(nèi)容。 本書(shū)融匯作者在Linux 系統(tǒng)教學(xué)、科研和實(shí)際項(xiàng)目研發(fā)中的經(jīng)驗(yàn),實(shí)踐性強(qiáng)。在內(nèi)容編排上,按照讀者學(xué)習(xí)的一般規(guī)律,結(jié)合大量實(shí)例講述,使讀者能高效地掌握嵌入式Linux 系統(tǒng)的基本原理和應(yīng)用方法。 本書(shū)既可作為高等院校相關(guān)專(zhuān)業(yè)的教材,也可作為從事嵌入式系統(tǒng)開(kāi)發(fā)人員的參考用書(shū)。 結(jié)合國(guó)內(nèi)多所知名高校的嵌入式系統(tǒng)設(shè)計(jì)課程教學(xué)大綱和目前嵌入式系統(tǒng)相關(guān)就業(yè)的需求,在總結(jié)教學(xué)團(tuán)隊(duì)豐富教學(xué)經(jīng)驗(yàn)的基礎(chǔ)上,作者重新梳理知識(shí)框架編寫(xiě)了本書(shū),力求層次清楚,概念清晰,內(nèi)容翔實(shí),可操作性強(qiáng)。首先,本書(shū)從嵌入式應(yīng)用的角度出發(fā),介紹嵌入式操作系統(tǒng)的簡(jiǎn)單應(yīng)用,使讀者掌握嵌入式操作系統(tǒng)的基本操作和基本原理。其次,介紹Linux高級(jí)編程,使讀者掌握Linux高級(jí)編程的核心內(nèi)容,提升應(yīng)用開(kāi)發(fā)與系統(tǒng)綜合管理的能力。最后,介紹Linux內(nèi)核知識(shí),使讀者掌握驅(qū)動(dòng)開(kāi)發(fā)的方法,力爭(zhēng)從實(shí)際應(yīng)用的角度,培養(yǎng)讀者的邏輯思維和創(chuàng)新思維,提高他們分析、解決實(shí)際工程問(wèn)題的能力。
教學(xué)資源
注:微課視頻在書(shū)中掃碼即可觀(guān)看,其他教學(xué)資源可到清華大學(xué)出版社網(wǎng)站本書(shū)頁(yè)面(或人工智能科學(xué)與技術(shù)微信公眾號(hào))獲取。 第2版前言 近年來(lái),嵌入式系統(tǒng)原理及應(yīng)用課程在全國(guó)多所高校都有開(kāi)設(shè),我們編寫(xiě)的最早的一本教材《ARM9嵌入式開(kāi)發(fā)基礎(chǔ)與實(shí)例進(jìn)階》在2012年由清華大學(xué)出版社出版,本書(shū)也是在此基礎(chǔ)上經(jīng)過(guò)多年的教學(xué)和科研積累重新編寫(xiě)完成的。嵌入式系統(tǒng)原理及應(yīng)用課程在不同的學(xué)校,教學(xué)內(nèi)容差異很大,授課的側(cè)重點(diǎn)也不同,如單片機(jī)(51、STM32)、微機(jī)原理、操作系統(tǒng)都可以歸到嵌入式系統(tǒng)范疇。典型的嵌入式產(chǎn)品開(kāi)發(fā)涉及內(nèi)容很廣,一本書(shū)很難覆蓋。從近幾年學(xué)生的就業(yè)情況來(lái)看,嵌入式應(yīng)用軟件開(kāi)發(fā)、驅(qū)動(dòng)開(kāi)發(fā)、硬件設(shè)計(jì)的工作崗位較多,而且對(duì)應(yīng)的領(lǐng)域呈現(xiàn)專(zhuān)業(yè)細(xì)分趨勢(shì);诖耍诮虒W(xué)過(guò)程中我們?cè)噲D給學(xué)生一個(gè)全面的學(xué)習(xí)線(xiàn)路,讓學(xué)生沿著這條線(xiàn)路學(xué)習(xí),深入了解嵌入式領(lǐng)域。傳統(tǒng)的嵌入式開(kāi)發(fā)包括硬件設(shè)計(jì)、板級(jí)支持、應(yīng)用程序開(kāi)發(fā)、驅(qū)動(dòng)程序開(kāi)發(fā)等。 本書(shū)的內(nèi)容主線(xiàn):嵌入式操作系統(tǒng)Ubuntu的使用應(yīng)用程序開(kāi)發(fā)內(nèi)核簡(jiǎn)單驅(qū)動(dòng)程序開(kāi)發(fā)。因?yàn)閷W(xué)時(shí)限制,對(duì)于大部分開(kāi)設(shè)該課程的院校,其授課內(nèi)容只能到第9章網(wǎng)絡(luò)編程,這些內(nèi)容相當(dāng)于嵌入式系統(tǒng)學(xué)習(xí)的入門(mén)知識(shí)。而后面的內(nèi)容,如內(nèi)核、驅(qū)動(dòng)程序開(kāi)發(fā),對(duì)于嵌入式系統(tǒng)整個(gè)體系又非常重要。通過(guò)前9章的課堂學(xué)習(xí),部分學(xué)生覺(jué)得適合學(xué)習(xí)這門(mén)課,想繼續(xù)該領(lǐng)域的研究,這些學(xué)生可以利用開(kāi)發(fā)板完成內(nèi)核驅(qū)動(dòng)等相關(guān)知識(shí)的學(xué)習(xí),掌握其核心內(nèi)容。這次改版刪除了比較難的知識(shí)點(diǎn):塊設(shè)備驅(qū)動(dòng)和網(wǎng)絡(luò)設(shè)備驅(qū)動(dòng)。這些知識(shí)點(diǎn)涉及內(nèi)容較多,限于篇幅,無(wú)法講述清楚,對(duì)于已經(jīng)熟練掌握了字符設(shè)備驅(qū)動(dòng)的學(xué)生建議參考更為專(zhuān)業(yè)的資料學(xué)習(xí)。 本書(shū)第2版與第1版相比,主要的改動(dòng)如下:一是操作系統(tǒng)由紅帽5改為Ubuntu操作系統(tǒng),目前Ubuntu操作系統(tǒng)在實(shí)際應(yīng)用中更為普遍,支持也更友好,本書(shū)中所有的代碼均用Ubuntu重新編譯,同樣適用于不同的ARM處理器平臺(tái);二是所有的代碼在i.MX8平臺(tái)驗(yàn)證通過(guò),該平臺(tái)由北京博創(chuàng)智聯(lián)科技有限公司提供,i.MX8平臺(tái)屬于嵌入式人工智能教學(xué)科研平臺(tái),對(duì)于嵌入式的后續(xù)學(xué)習(xí),如深度學(xué)習(xí)、人工智能和算法相關(guān)的課程都可以使用;三是結(jié)合現(xiàn)代教學(xué)手段講解,書(shū)中重要知識(shí)點(diǎn)通過(guò)微課視頻的方式呈現(xiàn),讓初學(xué)者快速上手,同時(shí)還提供程序代碼、教學(xué)大綱、教學(xué)課件、開(kāi)源工具、實(shí)驗(yàn)指導(dǎo)等配套 資源。 嵌入式系統(tǒng)開(kāi)發(fā)涉及內(nèi)容較多,只要堅(jiān)持學(xué)習(xí),有疑問(wèn)之處通過(guò)多種方式解決,舉一反三,相信一定能夠掌握。 本書(shū)第1~5章由蔣洪波編寫(xiě),第6~9章由程坤編寫(xiě),第10~14章由馮新宇編寫(xiě),全書(shū)由馮新宇負(fù)責(zé)統(tǒng)編,第4~9章視頻講解內(nèi)容由程坤錄制完成,其他視頻內(nèi)容由馮新宇錄制完成。 在本書(shū)再版過(guò)程中得到了北京博創(chuàng)智聯(lián)科技有限公司的大力支持,該公司提供了全套的實(shí)驗(yàn)平臺(tái),感謝蔣輝軍研發(fā)總監(jiān)的技術(shù)支持,陸海軍總經(jīng)理、張經(jīng)緯副總經(jīng)理的協(xié)調(diào)配合。特別感謝清華大學(xué)出版社盛東亮編輯多年給予的支持。 感謝廣大讀者的支持,希望本書(shū)對(duì)您的學(xué)習(xí)和工作有所幫助,也希望您把對(duì)本書(shū)的意見(jiàn)和建議反饋給我們。 作 者 2023年10月 第1版前言 嵌入式系統(tǒng)及其應(yīng)用是一個(gè)龐大的知識(shí)體系,筆者在多年的授課過(guò)程中,也很難選擇一本合適的書(shū)作為本科生的授課教材。結(jié)合課堂講稿和學(xué)生的部分畢業(yè)設(shè)計(jì)內(nèi)容,以及在學(xué)生學(xué)習(xí)過(guò)程中經(jīng)常遇到的問(wèn)題,筆者整理成本書(shū)《嵌入式Linux系統(tǒng)開(kāi)發(fā)基于A(yíng)RM處理器通用平臺(tái)》,之所以這么命名,是打破了以前ARM9體系或者ARM11體系的框架。Linux操作系統(tǒng)在A(yíng)RM9之上的處理器均有較好的兼容,讀者稍加修改,代碼就能應(yīng)用,所以命名時(shí)就回避了某一款處理器的限定。關(guān)于嵌入式有太多的內(nèi)容可以介紹,本書(shū)側(cè)重應(yīng)用,并介紹了當(dāng)前嵌入式的發(fā)展。 嵌入式系統(tǒng)無(wú)疑是當(dāng)前熱門(mén)、很有發(fā)展前途的IT應(yīng)用領(lǐng)域。嵌入式系統(tǒng)用在某些特定的專(zhuān)用設(shè)備上,通常這些設(shè)備的硬件資源(如處理器、存儲(chǔ)器等)非常有限,并且對(duì)成本很敏感,有時(shí)還對(duì)實(shí)時(shí)響應(yīng)等要求很高。特別是隨著消費(fèi)家電的智能化,嵌入式更突顯重要。像我們平時(shí)常見(jiàn)的手機(jī)、PDA、電子字典、可視電話(huà)、數(shù)字相機(jī)、數(shù)字?jǐn)z像機(jī)、機(jī)頂盒、高清電視、游戲機(jī)、智能玩具、交換機(jī)、路由器、數(shù)控設(shè)備或儀表、汽車(chē)電子、家電控制系統(tǒng)、醫(yī)療儀器、航空航天設(shè)備等都是典型的嵌入式系統(tǒng)。 嵌入式系統(tǒng)是軟硬件結(jié)合的產(chǎn)品,從事嵌入式開(kāi)發(fā)的人員主要分為如下兩類(lèi)。 一類(lèi)是無(wú)線(xiàn)電相關(guān)專(zhuān)業(yè)出身的人員,如電子工程、通信工程等專(zhuān)業(yè)出身的人員,主要從事硬件設(shè)計(jì),有時(shí)需要開(kāi)發(fā)一些與硬件關(guān)系密切的底層軟件(如BootLoader、Board Support Package)、初級(jí)的硬件驅(qū)動(dòng)程序等。他們的優(yōu)勢(shì)是對(duì)硬件原理非常清楚,不足是他們更擅長(zhǎng)定義各種硬件接口,但對(duì)復(fù)雜的軟件系統(tǒng)往往力不從心(如嵌入式操作系統(tǒng)原理和復(fù)雜的應(yīng)用軟件等)。 另一類(lèi)是軟件、計(jì)算機(jī)專(zhuān)業(yè)出身的人員,主要從事嵌入式操作系統(tǒng)和應(yīng)用軟件的開(kāi) 發(fā)。如果學(xué)軟件的人員對(duì)硬件原理和接口有較好的掌握,也完全可以編寫(xiě)B(tài)SP和硬件驅(qū)動(dòng)程序。嵌入式硬件設(shè)計(jì)完成后,各種功能就全靠軟件來(lái)實(shí)現(xiàn)。嵌入式設(shè)備的增值很大程度上取決于嵌入式軟件,設(shè)備越智能,系統(tǒng)越復(fù)雜,軟件的作用也就越關(guān)鍵,這是目前的發(fā)展趨勢(shì)。 目前,國(guó)內(nèi)外嵌入式的相關(guān)人才都很稀缺。一方面,該領(lǐng)域入門(mén)門(mén)檻較高,不僅要了解較底層的軟件(如操作系統(tǒng)級(jí)、驅(qū)動(dòng)程序級(jí)軟件),對(duì)軟件專(zhuān)業(yè)水平要求較高(如嵌入式系統(tǒng)對(duì)軟件設(shè)計(jì)的時(shí)間和空間效率要求較高),而且還必須熟悉硬件的工作原理,所以非專(zhuān)業(yè)IT人員很難切入這一領(lǐng)域;另一方面,該領(lǐng)域較新,發(fā)展太快,很多軟、硬件技術(shù)出現(xiàn)時(shí)間不長(zhǎng)或正在出現(xiàn)(如ARM處理器、嵌入式操作系統(tǒng)、MPEG技術(shù)、無(wú)線(xiàn)通信協(xié)議等),掌握這些新技術(shù)的人較少。嵌入式人才稀缺的根本原因可能是大多數(shù)人無(wú)條件接觸該領(lǐng) 域,這需要相應(yīng)的嵌入式開(kāi)發(fā)板和軟件,另外需要有經(jīng)驗(yàn)的人員進(jìn)行開(kāi)發(fā)流程的指導(dǎo)。 與企業(yè)計(jì)算等應(yīng)用軟件的開(kāi)發(fā)人員不同,嵌入式領(lǐng)域人才的工作強(qiáng)度通常較低,收入?yún)s很高。而從事企業(yè)應(yīng)用軟件的IT人員,開(kāi)發(fā)完這個(gè)用戶(hù)的系統(tǒng),又要去開(kāi)發(fā)下個(gè)用戶(hù)的系統(tǒng),并且每個(gè)用戶(hù)的需求和完成時(shí)間都必須按客戶(hù)要求改變,往往疲于奔命,重復(fù)勞動(dòng)。相比而言,開(kāi)發(fā)嵌入式系統(tǒng)的公司,都有自己的產(chǎn)品計(jì)劃,按自己的節(jié)奏行事,所開(kāi)發(fā)的產(chǎn)品通常是通用的,不會(huì)因客戶(hù)的不同而修改(或只是對(duì)軟件進(jìn)行一些小修補(bǔ))。某一型號(hào)的產(chǎn)品開(kāi)發(fā)完成后,往往有較長(zhǎng)的一段空閑時(shí)間,可進(jìn)行充電和休整。另外,從事嵌入式軟件開(kāi)發(fā)的人員的工作范圍相對(duì)狹窄,所涉及的專(zhuān)業(yè)技術(shù)范圍比較。ㄈ鏏RM、RTOS、MPEG、802.11等),隨著時(shí)間的累積,經(jīng)驗(yàn)也逐漸累積,寥寥數(shù)語(yǔ)的指導(dǎo)就足夠讓初學(xué)者琢磨半年。如果從事應(yīng)用軟件開(kāi)發(fā),可能不同的客戶(hù)的軟件開(kāi)發(fā)平臺(tái)也完全不同,這會(huì)使得開(kāi)發(fā)工作也相對(duì)更加辛苦。 嵌入式開(kāi)發(fā)更注重的是練習(xí),而嵌入式系統(tǒng)開(kāi)發(fā)設(shè)計(jì)最難的是入門(mén),所涉及知識(shí)較多,初學(xué)者很難從紛雜的知識(shí)中快速上手學(xué)習(xí),現(xiàn)在市面上用于嵌入式開(kāi)發(fā)的學(xué)習(xí)板比比皆是,價(jià)格都比較低廉,讀者可以購(gòu)買(mǎi)一款相對(duì)通用的開(kāi)發(fā)板,按照書(shū)中的操作練習(xí),一步一步進(jìn)行嵌入式開(kāi)發(fā)的學(xué)習(xí)。任何知識(shí)的學(xué)習(xí)都是由淺入深,由感性認(rèn)識(shí)到理性認(rèn)識(shí),掌握了本書(shū)的內(nèi)容,相信讀者一定能夠掌握嵌入式入門(mén)開(kāi)發(fā)的基本要領(lǐng)。 本書(shū)主要由馮新宇編寫(xiě)。此外,第11~15章由蔣洪波編寫(xiě)。參與編寫(xiě)的還有楊昕宇、劉宇瑩、劉琳、史殿發(fā)、孟瑩等。 感謝廣州碾展公司的技術(shù)支持!感謝您選擇了本書(shū),希望我們的努力對(duì)您的工作和學(xué)習(xí)有所幫助,也希望您把對(duì)本書(shū)的意見(jiàn)和建議反饋給我們。 作 者 2017年4月 馮新宇:黑龍江科技大學(xué)電氣與控制工程學(xué)院教授、碩士研究生導(dǎo)師,測(cè)控技術(shù)與儀器系副主任。兼任國(guó)家電網(wǎng)黑龍江省電力公司、哈爾濱市科技局項(xiàng)目評(píng)審專(zhuān)家。長(zhǎng)期從事嵌入式系統(tǒng)、電氣設(shè)備狀態(tài)監(jiān)測(cè)與礦山安全監(jiān)控領(lǐng)域的教學(xué)和研究工作。主持及參與國(guó)家級(jí)、省部級(jí)及企業(yè)合作科研項(xiàng)目20余項(xiàng)。出版著作12部,代表性著作有《ARM Cortex-M3嵌入式系統(tǒng)原理及應(yīng)用》《四旋翼無(wú)人飛行器設(shè)計(jì)》與《ADS2009射頻電路設(shè)計(jì)與仿真》。 第一部分 Linux系統(tǒng)及基本操作 視頻目錄
你還可能感興趣
我要評(píng)論
|