在嵌入式這個(gè)行業(yè),只要工作了幾年的同仁。他們通常在跳槽面試下一家企業(yè)的時(shí)候簡(jiǎn)歷都寫(xiě)的高大上,十個(gè)里面有起碼有七個(gè)是帶水分的。
國(guó)內(nèi)嵌入式公司主要有兩種: 偏底層芯片公司,偏應(yīng)用層業(yè)務(wù)需求公司。
實(shí)際上大多數(shù)公司都是做應(yīng)用層業(yè)務(wù)需求;
比如做人臉識(shí)別打卡機(jī)的,做GPS導(dǎo)航的,做云終端設(shè)備的公司等。
這類(lèi)的公司,除非已經(jīng)是非常大規(guī)模的,正常是幾十號(hào)研發(fā)在運(yùn)作。
人臉打卡,人臉識(shí)別模塊是核心,但是硬件和軟件是買(mǎi)的,公司可能制作c++,QT實(shí)現(xiàn)上班打卡業(yè)務(wù)的工作使用場(chǎng)景,數(shù)據(jù)傳輸,導(dǎo)出導(dǎo)入等相關(guān)編程
GPS導(dǎo)航的,GPS模塊,核心驅(qū)動(dòng),Linux,WinCE的,都不需要此公司的開(kāi)發(fā)者去做開(kāi)發(fā)。
云終端的,核心接入?yún)f(xié)議可能是買(mǎi)思杰的方案,也有可能買(mǎi)Vmware的方案,再不行的就搞個(gè)山寨的spice協(xié)議,rdp協(xié)議這些免費(fèi)開(kāi)源的。
以上幾個(gè)產(chǎn)品,核心模塊,買(mǎi)之,接口使用之,大多國(guó)外技術(shù)。
硬件方案,要么開(kāi)發(fā)板生搬硬套要么外包給硬件廠(chǎng)商。
那這些公司的開(kāi)發(fā)做什么呢?
如果產(chǎn)品UI是的是QT, 那就寫(xiě)大量的C++代碼,各種好的軟件框架,各種多線(xiàn)程,多進(jìn)程配合。
如果UI是GTK,那就寫(xiě)大量的C代碼,各種結(jié)構(gòu)體來(lái)模擬面向?qū)ο蟮拈_(kāi)發(fā)思想,當(dāng)然也可以學(xué)習(xí)內(nèi)核開(kāi)發(fā)者寫(xiě)的牛x框架,比如學(xué)習(xí)輸入子系統(tǒng),設(shè)備驅(qū)動(dòng)模型啊,binder驅(qū)動(dòng)模型啊,將內(nèi)核的編程思想靈活運(yùn)用到應(yīng)用層編程,寫(xiě)出穩(wěn)定,拓展性極強(qiáng)的框架就是很牛的人物啦。
真正涉及到Linux底層開(kāi)發(fā)的偏少,如果一個(gè)人真正深入掌握l(shuí)inux內(nèi)核的進(jìn)程管理,時(shí)間管理,內(nèi)存管理,文件管理,各種驅(qū)動(dòng)框架等,能在各種硬件平臺(tái)做一個(gè)實(shí)時(shí)操作系統(tǒng)的,還懂裸機(jī),寫(xiě)點(diǎn)啟動(dòng)代碼來(lái)引導(dǎo)自己的操作系統(tǒng),那就是大牛中的大牛。
回歸到剛進(jìn)入嵌入式世界探索的孩子們,其實(shí)你們目前的水平去分析uboot,分析linux內(nèi)核源碼,是一件很egg疼的事情。
調(diào)用接口來(lái)實(shí)現(xiàn)多線(xiàn)程,來(lái)處理進(jìn)程通信,來(lái)寫(xiě)socket編程都是難事,甚至還在糾結(jié)指針傳參,糾結(jié)指針數(shù)組和數(shù)組指針,怎么能去看uboot,linux內(nèi)核源碼呢?
做技術(shù)得一步一個(gè)腳印。而很多童鞋們都會(huì)被培訓(xùn)機(jī)構(gòu)設(shè)置的課程而煩擾?;蛟S連C和指針,C程序設(shè)計(jì)都沒(méi)懂多少。而在那里高談大論。不管怎么樣,只要我們基礎(chǔ)扎實(shí)了。才能進(jìn)一步探究Linux內(nèi)核框架。
-
嵌入式
+關(guān)注
關(guān)注
5087文章
19153瀏覽量
306425 -
軟件工程師
+關(guān)注
關(guān)注
8文章
218瀏覽量
21148
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論