時間:2019-07-24 00:00:00 來源:信盈達 作者:信盈達
嵌入式發展火熱,linux驅動作為嵌入式行業的高薪職業也吸引了愈來愈多的嵌入式工程師的關注,但是遇有linux驅動入門門檻比較高,讓很多工程師都經歷過從入門到放棄的痛苦階段。今天我們先來看一下如何成為一名優秀的linux驅動工程師,成為一名優秀的工程師需要什么條件。
一、足夠的硬件知識
能看簡單的原理圖,能夠分析硬件異常的可能原因,能夠使用常見的硬件調試工具,我想這是做為優秀的驅動工程師,區別與其它軟件工程師,所不可避免、必須具備的專業素質。當然取決于你具體從事的工作,對這方面的要求不盡相同。對于驅動開發者來說,不了解所開發驅動外設的硬件原理和相關背景知識,也許很多時候,也能夠完成一些移植,修補的工作任務,但這就好比無源之水,無根之木,我相信是很難走遠的。
二、多多益善的操作系統知識
做驅動開發,特別是純粹的外設的驅動移植工作,剛開始的時候,也許你并不需要了解很多操作系統本身的知識(像內存管理,進程調度,鎖,各種內核子系統的原理框架等等),也能順利完成手頭的一些工作。但是,如果一但需要優化驅動,需要完善軟件框架,或者是遇上疑難問題需要跟蹤解決,對操作系統,內核本身的了解,就體現出它的價值了。
對于Linux內核驅動開發者,尤其如此,首先,代碼是完全開源的,你有條件去了解背后的運行機制,其次,Linux內核和各個組成子系統總是在迅速的進化發展中,不進則退,你也有必要跟上時代發展的腳步。
三、強烈的好奇心,持續的熱情
如果驅動開發不僅僅是你的愛好,更是你養家糊口的途徑,很多時候,你大概不會有機會專注于一兩個你最有經驗的模塊的開發和維護。隨著能力的成長,勢必會要求你接觸和掌握越來越多的各式各樣的驅動模塊的開發。最起碼的標準應該是對具體驅動模塊相關的子系統的整體工作流程,框架,具備足夠的好奇心,樂于去了解和學習,而不僅僅是為了完成任務而工作,否則的話,很難積累下扎實的經驗和技術。
四、清晰的邏輯思維能力
這一點,也許是個軟件開發人員都應該具備吧,不過,做為驅動開發工程師來說,有時候,大多數情況下,工作的硬件環境并不是完美的,遇到問題需要分析判斷錯誤的原因是硬件問題還是驅動Bug,這時候,清晰的邏輯思維能力尤其重要。
五、良好的工作習慣
大多數人都不是天才,要成為優秀的開發工程師,其一需要持續努力,其二需要時間積累經驗,而這過程中,很重要的一點,就是要有良好的工作習慣。譬如,注意設計文檔的維護,對工作中遇到的問題的記錄,過往經驗的及時記錄,適當的軟件開發流程等等。文檔工作,可能很多人很不愿意去做,它的確很花費時間。不過,好記性不如爛筆頭啊 。當然,其實設計文檔更多的是為你提供思考的機會,而過往經驗的總結,也可以起到和大家交流技術,共同進步的目的。
六、英語
這個也是必須的啦,沒有辦法,郵件列表,技術文檔,社區,精通英語肯定是很大的優勢,做開源項目尤其如此。閱讀各種Spec標準文檔之類的速度還是很重要的。閱讀無障礙是一回事,能和母語一樣一目十行,人生苦短,效率啊!
免費領取試聽卡
申請已經提交
老師會馬上給您安排試聽課程!
申請出錯了
您可以加老師QQ:914865590報名咨詢!