-
培訓是最快的方法。
-
由於沒有比較,因此暫時無法分析哪乙個是最好的。 我希望它能為您提供學習建議。
在學習嵌入式 linux 之前,您必須做好心理準備:
首先,需要明白學習嵌入式Linux不是一朝一夕的事情,一定要能夠堅持使用,尤其是在使用初期,因為在Linux中,使用者許可權非常大,而且一切都很自由,所以你經常需要知道你每一步在做什麼,系統是做什麼的, 這需要時間來掌握,(記住命令不是乙個好的學習方法,相信我,在你記住它之前,你肯定會忘記所有),嘗試掌握常見的命令;
其次,在學習的前期,你肯定會遇到很多困難,或者各種困難,所以你最好先備份你的 Linux 中的重要內容,因為在學習的過程中,系統很可能會報廢(比如原始碼混亂等);
第三,如果你想在以後的生活中在軟體行業工作,學習 Linux 是一項必不可少的技能,所以從你打算學習 Linux 的那一天起就放棄 Windows! 因為它只給你片刻的娛樂;
第四,如果你只是想處理作業系統挖掘課程,我建議你不要學它,或者不要指望它能起作用,因為我說過,它很費時間,如果你學不好,你在 Linux 上開發的機會很少,或者幾乎沒有,它的優勢消失了,然後隨著時間的推移, 你會忘記這一切。想要深入學習,就去華清的造星師高階班,專案實戰豐富,職場老手領銜。
要學好嵌入式 linux,你需要做些什麼:
首先,多穀歌一點,因為我不能,不能給你所有事情的答案,我只能告訴你一些關鍵點,甚至我會刻意隱藏答案,因為在尋找答案的過程中,你會學到更多的知識,學習linux,也學會了極客精神,python禪也說: 以總結和分享為榮,以跪地猜測為恥*尋求解決方案;
第二,你要多做,不要怕壞了怎麼辦,不破了就不做,就永遠沒有收穫,既然你在Linux是自由的,那就發揮你的權利吧;
第三,學習Linux意味著更快的開發效率,對軟體本身或者作業系統本身有更多的了解,(你安裝的系統很臃腫,但考慮到你沒有太多時間投入,所以你安裝了它),但是如何用它來提高開發效率,需要你在學習的過程中不斷總結。
-
嵌入式 Linux 在實踐中與普通 Linux 沒有太大區別。
如果想學習嵌入式Linux,還需要具備一些常規Linux的知識,因為嵌入式Linux的編譯和遠端控制需要在常規Linux下完成。
當你對Linux基礎知識有了全部的了解後,就可以學習某個版本的嵌入式Linux了,首先你需要配備相關的硬體,比如arino、樹模派、路由器等,然後去相關的論壇了解基本的系統安裝配置、軟體安裝,先拿一些現有的編譯系統來做, 如果你明白了,你覺得沒有困難,你可以學會編譯自己的系統。
你可以從基礎開始編譯,遍歷和學習Linux的各種libs和kmod之間的依賴關係,特別是了解一些常用模組和包的功能和編譯。
如果你覺得這裡沒有挑戰,時間可能至少已經過去了幾個月,這個時候你可以學習自己的程式設計,shell程式,C程式等,編寫自己的模組。
可以說,從Linux擴充套件的知識點是海量的,取決於你開發的方向,比如你是想做語音方向還是**方向,還是**建設方向,還是人工智慧方向,還是機械控制方向等等,只有有針對性的開發,才能長期保持熱情。
另外,在學習Linux的過程中,英語的學習也需要提高,因為越專業的東西,在國內網路上能給你的幫助就越少,你可能需要長期混在國外的技術論壇上。
好吧,我就這麼說吧,有點空,我沒有指定任何太具體的東西,但這就是核心。
另外,如果你在這方面有願望和實際目標,比如在學習過程中需要實現哪些具體功能,比如想讓你的arino完成飢餓越野的無人部分,那麼在實現這個功能的過程中,你就要經歷一系列的困難, 最後在你不屈不撓的堅持下,終於完成了,結果喜人,過程痛苦而快樂。
-
如果想向嵌入式軟體方向發展,最常見的方向是嵌入式Linuxarm方向,我認為這個方向大概有3個階段:
1. 嵌入式 Linux 上層應用程式,包括 QT 的 GUI 開發。
2. 嵌入式Linux系統開發。
3.嵌入式Linux驅動開發嵌入式作業系統有Linux、Wince、VXWORKS等。
Linux 是開源免費的,它的原始碼**是開放的,更適合我們學習嵌入式。 所以如果你想自學,你可以嘗試以下途徑:
1)C語言是所有程式語言中最強的,微控制器、DSP和各種類似ARM的晶元都可以用C語言程式設計),所以它必須非常熟練。
推薦書籍:譚浩強的很不錯,《C程式語言》這本經典教科書是外國人寫的,也有中文譯本。
2)作業系統原理是必需的,如果你是計算機專業的畢業生,沒關係,如果你是非計算機專業的學生,一定要找一本比較簡單的計算機原理書來看看,什麼叫“程序”、“執行緒”、“系統排程”等基本問題要弄清楚。
3)Linux作業系統是用C語言編寫的,所以你也應該先學習Linux程式設計,只有能應用它,才能更接近理解其核心的本質。
4)了解ARM的架構、原理、彙編指令,我們在嵌入式開發中一般很少寫彙編,但最低要求是能夠理解ARM彙編。
5)遷移系統時,需要從最低的引導載入程式開始,然後是核心埠、檔案系統埠等。 這部分遷移對硬體的依賴性非常大,配置步驟也比較複雜,細節不多。
6)推動發展。
Linux 驅動程式設計是乙個既具有挑戰性又意義深遠的領域。
Linux 驅動程式設計本質上屬於 Linux 核心程式設計的範疇,因此對 Linux 核心和核心程式設計都有要求。 如果想在學習之前了解Linux核心的組成,竇正可以擴充套件成一本厚厚的書,因為每個部分都需要詳細研究。 以上只是乙個粗略的框架,實際開發中涉及到很多東西,比如:
交叉編譯、makefile、shell指令碼等,所以學習周期長,門檻高,自學需要較強的學習能力和專業技能。 只要能堅持下去,就一定能成功! 建議去華清視界**了解一下嵌入式課程體系和學習方法,資料和教程很多**。
-
從現在開始,我想有計畫、有系統地學習嵌入式系統! 我才剛剛開始學習!
我在網上看到過很多關於ARM作業系統(OS)移植的文章,其中大部分都是基於Linux作業系統的,這給我的印象是:你一定要懂Linux才能搞嵌入式嗎? 帶著這個問題,我查了一下資料!
對此有一點意識:
其實arm通常是用來做比較複雜的系統,而且一般是多工系統,當任務比較多的時候,當程式比較大的時候,只有彙編和糟糕是不稱職的,所以我們應該配備乙個作業系統來管理這些任務,那麼我們可以用哪些作業系統呢? Indows XP 好嗎? 當然不是,它太大了,不適合嵌入式,Microsoft專門針對嵌入式系統開發推出了乙個wince,但是這個不是免費的,而且不提供原始碼,給你像個黑夾子,對於一般的嵌入式學習來說,是不合適的嗎?
那麼什麼樣的作業系統可以用來做嵌入式呢? 嵌入式作業系統通常有X WORKS、INCE、UC OS、LINUX、UCLINUX等。 UC OS 和 Linux 在學習者和小公司中很受歡迎,因為它們是免費和開源的。
UC OS作業系統核心非常小,特別適合初學者,而且它是乙個搶占式核心,是乙個實時作業系統,特別適合實時性要求高的場合,它的核心非常小,當然它的功能沒有Linux那麼強大,而且UC OS的圖形使用者介面(GUI)還只是乙個原型, 不如Linux GUI,其GUI收費。在這種情況下,只有Linux是最好的,但是Linux本身並不是實時作業系統,也不適合實時效能高的場合,所以UCLinux誕生了,UCLinux是乙個實時作業系統(RTOS),所以學習ARM+UCLinux的人比較多。
如果要學習ARM+UCLINUX,就想把Linux移植到ARM上,那麼移植之後,這個搭載Linux的ARM處理器,當然只能執行在Linux環境下編譯的應用(還有乙個交叉編譯的概念需要好好理解),所以學習Linux是很自然的。 通常小紅帽 Red Hat Linux 應用廣泛,所以不能在 Windows 下開發 ARM+UCLinux 嗎?
作為俱樂部的副主席,向新生介紹自己以幫助他們了解您、建立信任並對您未來的領導者抱有期望非常重要。 以下是一些自我介紹的建議: >>>More