嵌入式Linux學前建議(初學者必讀)
時間:2018-07-03作者:華清遠見
目前,Linux作為嵌入式系統的主力軍,廣泛應用于消費類電子、工業控制、軍工電子、電信/網絡/通訊、航空航天、汽車電子、醫療設備、儀器儀表等相關行業。隨著嵌入式行業的迅猛發展,嵌入式Linux憑借其系統發展的成熟度、市場應用的高份額也受到更多工程師朋友的青睞,越來越多的企業和研發機構都轉向嵌入式Linux的開發和研究,這使得嵌入式Linux在新興的嵌入式操作系統領域內也獲得了飛速發展和廣泛應用。而對于那些希望盡快進入嵌入式行業從事產品研發的朋友們,選擇嵌入式Linux方向作為切入點無疑是好的途徑之一。 近期,有許多面臨畢業、找工作的大學生來到華清遠見嵌入式培訓中心咨詢了解有關嵌入式Linux方向的學習安排。在與他們交流溝通的過程中,被問到多的幾個問題就是“如何做好嵌入式Linux學習前的準備?”,“學習嵌入式Linux需要補習哪些基礎課程?”,“嵌入式Linux開發跟普通軟件開發在學習方法上有什么不同?”,“項目實戰環節多嗎?”,“有專業人員帶領嗎?”,相信這些也是很多準備入行的初學者都會關心的問題,為了幫助大家做好嵌入式Linux的學前準備,我們對這些常見的問題逐一進行解答,提供給大家參考,希望能夠有所幫助。 1、如何做好嵌入式Linux學習前的準備? 要成為一名合格的嵌入式Linux工程師,就需要系統的學習軟、硬件相關領域內的知識,需要在開始就掌握開發的規范和原則,養成良好的工作習慣。為了確保學習的效果,華清遠見安排的整個課程體系是非常集中、高效的,這就要求準備參加嵌入式Linux就業課程學習的同學要調整好自己的時間,務必要確保在4個多月的學習時間內能夠高度集中精力。 在整個集中學習過程中,既要保證課上認真聽講、實戰演練的時間,也要保證課下繼續實戰演練、查閱資料的時間。只有經過這種高強度的、實戰為主的訓練,才能夠在比較短的時間內掌握規范的嵌入式開發工作流程,讓自己符合嵌入式企業對應崗位的需求。 除了在學習時間上要做好充分的準備之外,在學習的心態和方法的調整上也要做好準備。許多朋友只了解嵌入式Linux方向美好的發展前景,只關注高收入、就業機會多等熱點,卻忽略了學習過程本身。為了能夠讓集中培訓的效果發揮到佳,建議大家在學習開始前更多地去了解嵌入式產品研發的特點、所需要掌握的技術規范和工作要點,關注需具備基礎的補充和學習,從而為后續的強化學習過程做好心態上的準備,畢竟態度往往決定了后做事的結果。 2、學習嵌入式Linux需要補習哪些基礎課程? 嵌入式Linux工程師的學習需要具備一定的C語言基礎,因此面對許多朋友只是在大一或者大二學習過C(還不一定認真學了,呵呵!),之后基本就不再用過的情況,建議大家在來華清遠見學習之前先復習一下C語言基礎這塊。要提醒大家的是,復習時不能只關注基本語法,對于常用的數據存儲及處理方式,例如:數組、結構體等也要關注,有條件的話一定在機器上親自敲敲代碼、分析理解一下具體案例代碼編寫的思路,讓自己慢慢進入一名嵌入式開發人員的狀態。 此外,在時間允許的情況下,建議大家看一下有關計算機操作系統工作原理以及計算機組成原理等方面的專業書籍。對于進程、線程、任務調度、總線、I/O等基本概念及工作原理有一個初步的了解和掌握,這部分知識的準備對于后續更好地學習嵌入式Linux系統開發將會起到很好的幫助作用。 3、嵌入式Linux開發跟普通軟件開發在學習方法上有什么不同? 要成為一名成功的嵌入式軟件開發人員,程序的設計能力是首要技能,這一點與普通的軟件開發人員的要求是一樣的。但是作為“軟硬兼施”的嵌入式開發,則要求大家不僅要了解較底層軟件的工作過程和工作原理(例如操作系統級、驅動程序級軟件),在軟件開發的專業水平上也需要充分考慮軟件設計的時間和空間效率,這樣才能設計出高性能嵌入式程序。 因此面對相對復雜的嵌入式系統的研發過程,在學習的過程中需要更多關注完整的知識體系結構的建立。特別是對于原理性知識的掌握程度則相對普通的軟件開發人員提出了更高的要求。因此在學習的過程中,“要知其然,更要知其所以然”。 同時由于一直以來嵌入式行業中專業人才的緊缺,許多經驗性的東西都有待交流和分享,因此充分關注與每一位講師的實際經驗交流就顯得至關重要。華清遠見的每一位專業講師都擁有多年的嵌入式Linux開發經驗,他們在各自擅長的領域內都有很多值得分享和交流的體會,因此通過他們課堂的講解、示范,通過充分的交流溝通,無疑可以大大縮短在行業中摸索的時間,記住不要以為原理性的東西通過看書就能解決,借助這些行業高手的透徹分析,才能讓你的學習過程更有價值、更加實用。 4、華清遠見的課程體系中項目實戰環節多嗎?有專業人員帶領嗎? 由于大多數人對嵌入式開發過程的陌生,因此實戰環節的訓練就顯得格外重要。在嵌入式Linux課程學習的每個階段,都需要在專業人員的引導下,通過全真的案例設計與實現來鞏固所學的知識點。同時我們要求大家盡可能在課堂上多出問題、多暴露問題,只有這樣,才能通過專業人員的及時幫助和指導,高效地掌握解決實際問題的方式和方法,積累足夠的技術經驗和項目經驗。 同時也只有通過終綜合項目實戰環節的密集訓練,才能夠逐步建立起嵌入式產品開發的工程化概念。在這個過程中,除了可以達到所學知識綜合、實際應用的目的,還可以讓大家更真實地體驗到如何編寫工程化程序?如何在設計中與團隊協作開發?如何為后續有效地升級與維護做好準備?如何編寫規范的文檔等?而這些體驗都將為后續真正從事企業內工程化的軟件設計做好充分的準備。 記住貫穿始終的是:要知道為什么學?要知道學的是什么?要知道怎么學?要知道學了如何用?后還要知道用的時候出了問題該如何解決?相信以這些問題為線索的學習過程一定可以幫助大家快速成為一名優秀的嵌入式開發工程師。 發表評論
|