明確自己的發展方向,并為此制定可行的職業計劃
很多學生總不確定將來可能做什么,所以對于專業學習根本就沒有計劃或分析,而是抱著走一步算一步的態度。這樣的想法往往就會通過潛意識去暗示你自己,導致終你變得無所事事、碌碌無為。如果你從現在起,確定自己的發展方向,制定職業計劃并為此付出實際行動,那么無論你將來是往技術、管理方向發展還是自主創業,甚至無論你將來是否仍然執行你現在制定的計劃,你都將獲得能力的提高。
具有理論與實踐并重,內外雙修的素質
一個合格的嵌入式系統軟件工程師,是真正理解了嵌入式系統軟件產品的本質及軟件產品研發思想精髓的人。掌握嵌入式系統軟件開發語言、應用語言工具解決工作中的具體問題、完成目標任務是嵌入式系統軟件工程師的主要工作。但從嵌入式系統軟件工程師這個角度來看,這只是外在的東西,并非重要的、本質的工作。學習、掌握嵌入式系統軟件產品開發理論知識、軟件開發方法,并在實踐中理解、應用軟件產品的分析、設計、實現思想來解決具體的嵌入式系統軟件產品研發問題,才是真正的嵌入式系統軟件工程師的必要素養。
具有良好的職業知識表達能力
正如前面所言,粵嵌教育的目標是培養學生能用、能做、能想、能說的能力。實際上,“能說”是關鍵的能力培養。建立在“能說”能力的背后的是你對相關知識的確實理解和你對問題的敏捷反應。
深入理解了嵌入式系統的概念
從硬件上理解。嵌入式系統硬件是將傳統的基于CPU的外圍器件,整合到CPU芯片內部。例如比較高端的ARM類IntelXscale架構下的IXP網絡處理器CPU內部集成了PCI控制器,還集成了3個NPE網絡處理器引擎。
從軟件上理解。嵌入式系統就是在定制操作系統內核里將應用一并選入,編譯后將內核下載到ROM中。而在定制操作系統內核時所選擇的應用程序組件則是完成了軟件的“嵌入”。比如WinCE在內核定制時,會有相應
選擇,其中就是Wordpad、PDF、MediaPlay等等選擇。如果我們選擇了,在CE啟動后,就可以在界面中找到這些東西。
從實現上理解。把軟件內核或應用文件系統等東西寫入到嵌入式系統硬件平臺中的ROM,就實現了一個真正的“嵌入”。
知道嵌入式系統的分層方式
嵌入式系統分為4層,硬件層、驅動層、操作系統層和應用層。
硬件層:是整個嵌入式系統的根本,如果你現在對單片機及接口這塊很熟悉,并且能用C語言和匯編語言來編程的話,那么從嵌入式系統的硬件層做起來就相對容易。硬件層是嵌入式系統的基礎,但嵌入式系統增值還是要靠軟件。
驅動層:要能看懂電路圖還要能對操作系統內核十分的精通,以便所寫的驅動程序在系統調用時,不會獨占操作系統時間片,而導至其它任務不能運行。當然,不懂操作系統內核架構和實時調度性、沒有良好的驅動
程序編寫風格,僅僅只是按照資料介紹去添加驅動程序,是很多人可以做到的,但這也僅僅只是個初級的嵌入式系統驅動工程師的水平。
操作系統層:在操作系統層的主要工作還是移植,而很少有人來自已寫操作系統。
應用層:需要掌握編程語言、開發工具,知道在Linux/Windows等操作系統下如何進行編程、函數調用,掌握編譯和開發環境等。
掌握操作系統、編程工具和程序設計環境
精通嵌入式系統的程序設計是主要的要求,因為編程是嵌入式系統軟件工程師花費絕大部分時間的工作,因此嵌入式系統軟件工程師必須熟練掌握操作系統和嵌入式硬件結構,看得懂諸如硬件寄存器一類的內容、
掌握基于板級的匯編和C編程,了解硬件的接口電路設計,掌握基于嵌入式操作系統的環境應用與工具鏈,比如Linux下的ARM工具鏈等等。
熟練使用嵌入式系統開發平臺
嵌入式系統開發環境是你學習如何開發一個嵌入式系統項目的實驗平臺。在培訓中,你接觸的是一種能夠進行具有相當實際效果實驗的教學實驗平臺,這種教學實驗平臺必須外接特定的開發模塊,才能形成一個實際的開發系統。
擁有一套嵌入式系統實驗平臺,能夠極大地幫助嵌入式系統軟件初學者盡快熟悉和掌握嵌入式系統。熟悉一個實際的嵌入式系統開發平臺,并且能夠從事某個具體項目的開發,是獲得實際進行嵌入式系統軟件開發工作經驗的必經之路。
如果你滿足了上面的這些要求,你就可以成為一位合格的嵌入式系統軟件工程師。當然,真正的嵌入式系統軟件工程師是要靠工作中的積累才能形成的,而這也是用實際工作時間來衡量的。