1、嵌入式是什么?
2、嵌入式需要哪些知識?
知道了這兩點,好辦!我就開始規劃學習路線。計算機的基本理論不能丟,于是重點看組成原理,數據機構,操作系統、c++.同時論壇上了解到,實時操作系 統ucos是一個很好的嵌入式操作系統,對初學者很好。于是我就買了一本書,但是代碼在電腦里調不通,網上也有很多相同的問題,我就看書,分析代碼,一遍 不行就兩遍,三遍,這樣才看了入了門,才知道什么是進程。原來看操作系統書時,根本就不知道進程是個什么東西。在這段時間掌握的東西不多,但是,對我以后 的影響很大,我想起了大學時一個同學跟我說過了一句話:大學里最重要的不是學到了什么,最重要的是學會怎么學!大概是這個意思。
學習嵌入式在這里我把它單獨列出,文章有點紊亂,但是內容希望有益。
1、學習linux根據我在論壇的了解,我選擇學習嵌入式linux,剛好我們學校也重視嵌入式linux,從實驗室到課程安排都是關于嵌入式linux方面,天時地利!這里我把學習linux的經驗和教訓說說。
可以這樣說,在論壇里說道學習linux差不多就學習linux內核。于是我電腦里安裝了linux就開始看linux內核方面的書了。我記得來學校以 前就買到一本陳莉君的講linux內核的第一版,現在有第二版了。我就開始看那本說,大家說linux內核情景分析不錯,我就買了上下冊,后來又買了 《深入理解linux內核》,最后猜蛄嗣虜俚摹肚度朧較低場芬彩欠治鰈inux內核代碼的,主要講arm相關的。
看內核期間是個 非常痛苦的過程,看情景分析有種在森林中找出路,其間我組織了一些同學學習內核,幾乎沒有幾個能堅持下來的。我認為我是堅持下來了。情景分析在看第一、第 二遍是幾乎沒有摸到門道,我分析有三個方面的原因:1、自己的基礎差,這是最關鍵的。2、內核本身很難。3、沒有交流和高人指點。到了第三遍時我才摸到 門,才差不多知道個linux的大概脈絡,很多細節也是稀里糊涂。
學習linux總結,這里聲明一下,我指的嵌入式主要是偏向軟件的嵌入式。學習嵌入式的重點和難點關鍵在操作系統,如果沒有掌握操作系統,我認為很難把握一個嵌入式系統。即使在做嵌入式開發中,作應有層的開發幾乎可以不知道操作系統也可以開發,我認為那是浮在表面的。很難深入和提高自己的層次。聲明:一孔之見!不可深究!
在學習linux內核過程中犯了一個極其嚴重路線錯誤:對linux幾乎不懂就開始學習內核。我個人推薦一個學習路線是:使用linux—〉linux系統編程開發——〉驅動開發和分析linux內核。而我差不多相反,實際上你不會使用linux也可以學習內核,但是如果你懂了這些東西學習更有效率。
關于要不要學習內核的問題,我的回答如下:不一定。如果你是喜歡鉆研的那你進入內核會滿足你的欲望。同時對你以后的嵌入式系統的開發有很好的影響。如果 你想從事嵌入式linux系統開發,最好對內核有所了解。如果僅僅是做應用開發沒有必要。我打個比喻:c、c++、java等語言是武林中的某個武林派別 的話,如什么拳法,什么刀法等,那么linux 內核應該是一個人的內功的反應。
怎么開始學linux內核:最好有三件寶物:《深入理解linux內核》《情景分析》和源代碼。
先看《深》,那主要講原理,好像市場上有本講原理性并且更淺,《linux內核設計與實現》聽說不錯。如果沒有學習操作系統的,像我這樣的,最好先看看 操作系統原理的書?戳藥妆楹,就看情景分析,最好對著《深》看。兩本交*看,《深》是綱,《情》是目。最后深入代碼。
2、學習嵌 入式linux學習嵌入式,我認為兩個重點,cpu和操作系統,目前市場是比較流行arm,所以推薦大家學習arm.操作系統很多,我個人對開始學習的人,特別不是計算機專業的,推薦學習ucos.那是開源的,同時很小。學習很好。為什么選linux,我不想講太多,網上這方面的太多,但是我在工作中發 現,做linux的技術路線很難,在windows幾乎不會有的問題,在linux開發中幾乎遍地陷阱。一掉進去劃很長時間出來,一旦解決自己又長進了! 相對來說開發周期長,難度大,F在資料也逐漸豐富起來,難度也降低了些!
至于怎么學習,這是他的特色地方,必須有塊開發板,我是同學里最早買學習板的,雖然化錢,我認為值。對我實習和工作產生了很大的影響。
更多嵌入式學習咨詢余工Tel173~61~88~79~73
|