一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

與一線Linux嵌入式開發(fā)工程師的對話

工程師人生 ? 來源:網(wǎng)絡(luò)整理 ? 2018-03-14 07:43 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

工程師一直做Linux嵌入式開發(fā),作為在開發(fā)一線的工程師,他對很多問題的看法可能更切合實際需求,就嵌入式開發(fā)方面的問題,請他談了一下自己的看法。

問:關(guān)于嵌入式開發(fā),我們準備給同學(xué)們講解一些入門知識,從你一線開發(fā)經(jīng)驗來說,給我們一些建議:

陳工回答:

對于嵌入式Linux入門,如果有一定基礎(chǔ),可以從驅(qū)動開始;如果沒有基礎(chǔ),我個人建議還是從應(yīng)用程序開始。因為從應(yīng)用程序開始是最容易的,也是最直觀的。而驅(qū)動程序運行在內(nèi)核態(tài),驅(qū)動本身的結(jié)構(gòu)就比較復(fù)雜,如果要徹底弄明白驅(qū)動的運行機制,必定牽涉內(nèi)核,對于高年級的學(xué)生恐怕問題會少一些,而對于低年級的學(xué)生,問題估計較多。我曾經(jīng)遇到過一些初學(xué)者,就是一入門就栽了,失去了信心,當然這只是少數(shù)。不過,如果在遇到問題之后,能夠得到即時、正確的點化,那就是好事了。

既然您決定講驅(qū)動,那就從內(nèi)核模塊開始。在PC上就可以進行的虛擬設(shè)備實驗,如基于內(nèi)存的內(nèi)核模塊??梢钥紤]從模塊的結(jié)構(gòu)、編譯、插入、卸載等方 面進行闡述。

驅(qū)動模塊無非分字符驅(qū)動、塊設(shè)備驅(qū)動和網(wǎng)絡(luò)驅(qū)動三大類。但是一定要讓學(xué)生知道,任何一個系統(tǒng),特別是嵌入式系統(tǒng),并且在目前的嵌入式Linux產(chǎn)品開發(fā)中,最簡單、最重要、最多、最復(fù)雜的也是字符設(shè)備驅(qū)動,從IO驅(qū)動到串口驅(qū)動、到USB驅(qū)動等等,廣義上都是字符驅(qū)動。讓學(xué)生最好專注于字符設(shè)備驅(qū)動,因為一個嵌入式設(shè)備,網(wǎng)卡一般一塊,F(xiàn)LASH一般也是一塊(也包括幾塊組成的FLASH組),但是這兩方面,基本都有完善的驅(qū)動,如網(wǎng)卡驅(qū)動有很多,塊設(shè)備驅(qū)動,硬件層已經(jīng)有通用接口,不管是NOR FLASH還是NAND FLASH,文件系統(tǒng)層更是有了非常多、非常成熟的文件系統(tǒng),如 JFFS2、YAFFS、YAFFS2、EXT2、EXT3、ROMFS、CRAMFS等等,無需我們再去研究,學(xué)會應(yīng)用即可。而除此之外的其它設(shè)備,如AD、DA、CAN、RS485等等,都是需要根據(jù)應(yīng)用來進行設(shè)計的,這才是一個產(chǎn)品區(qū)別于其它產(chǎn)品的重點,更是市場價值增值點。

另外呢,也是前一點引申為而來的,學(xué)習(xí)Linux,準備做產(chǎn)品的話,不要把Linux當成了終極目標(當然,這是對應(yīng)用而言的),要有只是把 Linux當成一個平臺的思想。更重要的還在各種產(chǎn)品所需求的專業(yè)技術(shù),如通信方面像CAN、RS485、GPRS等等,或者工業(yè)控制方面,IO控制、實時特性等等。Linxu博大精深,研究起來永無止境,但是在產(chǎn)品中,只要到了一個產(chǎn)品夠用就可以了(當然,多一些更好,要視人而定)。

問:嵌入式應(yīng)用程序的開發(fā),應(yīng)用場景較多的是圖形界面還是字符界面,如果是圖形界面,開發(fā)環(huán)境QT和Minigui哪一種更合適,哪種類型的應(yīng)用程序在嵌入式系統(tǒng)中應(yīng)用比較多?

陳工回答:

對于嵌入式Linux的應(yīng)用,大多數(shù)的應(yīng)用并不需要圖形界面,比如交換機、路由器、嵌入式網(wǎng)關(guān)以及服務(wù)器等等。圖形界面呢,主要應(yīng)用在多媒體、手機等手持設(shè)備和一些需要圖形界面的人機交互系統(tǒng)。

嵌入式Linux可選圖形界面很多,上網(wǎng)找找的話,可以發(fā)現(xiàn)遠非我們常說的QT、MiniGUI等。包括Tiny-X,matchbox、OPIE、 GPE等等。不同GUI有自己的特色,有自己的特殊應(yīng)用場合,對于產(chǎn)品開發(fā),根據(jù)需要選擇合適的GUI。對于學(xué)習(xí),自然是選擇容易得到、容易開發(fā)的 GUI。QT是一個不錯的選擇,由于QT有一個PC上的模擬器,可以在沒有實際液晶LCD的情況下,甚至在沒有任何硬件的情況下都可以在PC上進行模擬開發(fā)。QT是收費的,當然,有免費版可用。MiniGUI呢,純粹國產(chǎn)的,支持國貨,可以考慮選擇MiniGUI。這是一個輕量級的嵌入式GUI,可以跨平臺,學(xué)習(xí)版也才100多塊。MiniGUI可以用于工業(yè)控制場合,QT在這方面的應(yīng)用目前還沒有遇到,主要用在手持設(shè)備。

我們在開發(fā)中采用Tiny-X,這也是一個可以用于工業(yè)控制的GUI,基本兼容X-Window,體積小,占用資源少,速度快,穩(wěn)定。

對于Linux的應(yīng)用程序開發(fā),除了GUI程序之外,最基本的應(yīng)用程序有:

(1)串口編程。無論是在Windows下還是Linux下,串口編程都是極為復(fù)雜的,但是非常鍛煉一個人的編程水平和能力。

(2)網(wǎng)絡(luò)編程以及WEB相關(guān)編程。網(wǎng)絡(luò)編程的tcp、udp、tcp/ip等。至于WEB編程,主要是在系統(tǒng)開啟一個WEB服務(wù)器,制作一些網(wǎng)頁,通過遠程登錄能夠?qū)φ麄€系統(tǒng)進行配置甚至升級等功能。比如我們的路由器配置網(wǎng)頁。這種應(yīng)用在以后會越來越廣泛。

(3)另外一個就是Shell編程了。Shell的作用我想,*NIX世界的人都很清楚。在很多應(yīng)用里面,通過一些非常富有技巧性的Shell腳本,實現(xiàn)了非常復(fù)雜的功能,包括遠程系統(tǒng)升級等。

以上我提到的這3方面,非常易于實驗,在沒有硬件,只有PC的情況都可以做。

學(xué)生電腦安裝ubuntu,那以后配置嵌入式Linux開發(fā)環(huán)境可能遇到的問題會多一點。不過沒關(guān)系,能夠解決的。在我個人看來ubuntu適合于家用、辦公,但要用于開發(fā),配置難度稍微大一點。不過沒有辦法,現(xiàn)在電腦硬件太新,最適合的RedHat 9.0無法安裝。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 嵌入式
    +關(guān)注

    關(guān)注

    5150

    文章

    19665

    瀏覽量

    317415
  • 工程師
    +關(guān)注

    關(guān)注

    59

    文章

    1590

    瀏覽量

    69480
  • Linux
    +關(guān)注

    關(guān)注

    87

    文章

    11509

    瀏覽量

    213741
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    嵌入式開發(fā)入門指南:從零開始學(xué)習(xí)嵌入式

    基礎(chǔ) 3. 學(xué)習(xí)路徑推薦第階段:熟悉開發(fā)環(huán)境(如Keil、IAR、STM32)第二階段:掌握裸機編程與驅(qū)動開發(fā)第三階段:學(xué)習(xí)RTOS(實時操作系統(tǒng))如FreeRTOS第四階段:深入理解Lin
    發(fā)表于 05-15 09:29

    如何成為嵌入式軟件工程師?

    如何成為嵌入式軟件工程師? 01明確崗位的角色與定位 嵌入式軟件工程師主要負責(zé)開發(fā)運行在特
    發(fā)表于 04-15 14:37

    嵌入式開發(fā):高門檻的系統(tǒng)性工程與 996 的行業(yè)困局

    嵌入式開發(fā)的門檻,往往被培訓(xùn)機構(gòu)和表象所掩蓋。許多人誤以為 “用 C 語言寫個跑在 ARM 上的程序” 就是嵌入式,實則連皮毛都未觸及。真正的嵌入式開發(fā)是硬件與軟件深度融合的系統(tǒng)性工程
    的頭像 發(fā)表于 04-09 11:06 ?338次閱讀
    <b class='flag-5'>嵌入式開發(fā)</b>:高門檻的系統(tǒng)性<b class='flag-5'>工程</b>與 996 的行業(yè)困局

    嵌入式系統(tǒng)開發(fā)圣經(jīng)【干貨】

    主管、系統(tǒng)設(shè)計分析人員及欲進入該領(lǐng)域的工程師。是開發(fā)嵌入式系統(tǒng)產(chǎn)品必備的入門圣經(jīng),進入嵌入式系統(tǒng)領(lǐng)域的寶典??梢苑捶?,學(xué)習(xí)
    發(fā)表于 03-12 13:58

    嵌入式軟件工程師就業(yè)好不好?

    嵌入式軟件工程師就業(yè)好不好?會不會越老越吃香?今天起來看看。 首先看下市場需求。 隨著物聯(lián)網(wǎng)、人工智能、5G等前沿技術(shù)的快速發(fā)展,嵌入式系統(tǒng)的應(yīng)用領(lǐng)域不斷擴大,從智能家居、汽車電子到
    發(fā)表于 02-20 10:19

    如何成為嵌入式開發(fā)工程師?

    如何成為嵌入式開發(fā)工程師? 成為嵌入式開發(fā)工程師通常需要掌握系列技能和知識,并且在實踐中不斷積累經(jīng)驗。以下是
    發(fā)表于 02-19 10:39

    盤點工程師常用的嵌入式開發(fā)工具

    嵌入式開發(fā)涉及硬件與軟件的緊密結(jié)合,開發(fā)工具的選擇對效率和質(zhì)量至關(guān)重要。以下是嵌入式開發(fā)中常用的工具分類及代表性工具,涵蓋開發(fā)全流程: 1. 集成
    的頭像 發(fā)表于 02-07 10:06 ?2024次閱讀

    年薪30萬的嵌入式工程師,究竟需要掌握哪些技能?

    隨著智能硬件、物聯(lián)網(wǎng)、智能汽車、自動化控制等領(lǐng)域的迅速發(fā)展,嵌入式工程師的需求也水漲船高。尤其是在全球化和技術(shù)加速的時代,嵌入式開發(fā)不僅是個熱門行業(yè),還是跨學(xué)科技術(shù)與創(chuàng)新的交匯點。對
    的頭像 發(fā)表于 01-16 10:59 ?1258次閱讀
    年薪30萬的<b class='flag-5'>嵌入式</b><b class='flag-5'>工程師</b>,究竟需要掌握哪些技能?

    為什么嵌入式驅(qū)動開發(fā)工程師可以拿高薪?

    為什么嵌入式驅(qū)動開發(fā)工程師可以拿高薪? 嵌入式驅(qū)動開發(fā),屬于需求量大、薪資斷崖升高的熱門崗位
    發(fā)表于 01-07 16:56

    嵌入式開發(fā)必備-RK3562演示Linux常用系統(tǒng)查詢命令(上)觸覺智能出品

    實用干貨!嵌入式開發(fā)學(xué)習(xí)必備-RK3562演示Linux常用系統(tǒng)查詢命令(上)關(guān)注觸覺智能持續(xù)為大家?guī)砀?b class='flag-5'>嵌入式開發(fā)內(nèi)容
    的頭像 發(fā)表于 12-31 10:51 ?117次閱讀
    <b class='flag-5'>嵌入式開發(fā)</b>必備-RK3562演示<b class='flag-5'>Linux</b>常用系統(tǒng)查詢命令(上)觸覺智能出品

    Made with KiCad(九十四):M5Pi Linux嵌入式開發(fā)

    “ 波哥大作,必須優(yōu)先安排!M5Pi 是款開源 Linux 嵌入式開發(fā)板,使用全志 F1C200s CPU,擁有漂亮的外殼?!?/div>
    的頭像 發(fā)表于 12-25 14:53 ?739次閱讀
    Made with KiCad(九十四):M5Pi <b class='flag-5'>Linux</b><b class='flag-5'>嵌入式開發(fā)</b>板

    嵌入式工程師常用的開發(fā)工具有哪些?

    工具。 、集成開發(fā)環(huán)境(IDE) IDE是嵌入式開發(fā)的核心工具之。例如 Keil MDK,它支持多種微控制器架構(gòu),提供了強大的代碼編輯、編譯、調(diào)試功能。
    發(fā)表于 12-20 15:29

    零基礎(chǔ)嵌入式開發(fā)學(xué)習(xí)路線

    、網(wǎng)絡(luò)編程等內(nèi)容。如果以后考慮從事嵌入式軟件方面的工程師,那么這部分內(nèi)容是必須要熟練掌握的。Linux切皆文件,大家要掌握對于文件的
    發(fā)表于 10-25 15:55

    嵌入式linux開發(fā)的基本步驟有哪些?

    嵌入式Linux開發(fā)個復(fù)雜的過程,涉及到硬件選擇、操作系統(tǒng)移植、驅(qū)動開發(fā)、應(yīng)用程序開發(fā)等多個
    的頭像 發(fā)表于 09-02 09:11 ?1234次閱讀

    聚焦嵌入式開發(fā)中的合規(guī)性工具、項目管理工具、版本迭代工具應(yīng)用

    日前,龍智攜嵌入式開發(fā)及管理解決方案亮相2024上海國際嵌入式展(embedded world China 2024)。展會期間,我們對話了多位龍智資深DevSecOps顧問及技術(shù)支持專家
    的頭像 發(fā)表于 07-29 15:15 ?1079次閱讀