韋東山談Linux設計與開發(fā)_第1頁
韋東山談Linux設計與開發(fā)_第2頁
韋東山談Linux設計與開發(fā)_第3頁
韋東山談Linux設計與開發(fā)_第4頁
韋東山談Linux設計與開發(fā)_第5頁
已閱讀5頁,還剩6頁未讀 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領

文檔簡介

11/11網(wǎng)址:1、電子發(fā)燒友:大家都比較想了解您個人學習的歷程與感想,可否與大家共享一下?

韋東山:

我從2003年開頭工作,那時候的技術(shù)真是差勁啊:直到2005年,在硬件方面我只會設計兩層板,在軟件方面我用的始終是51單片機。有一次老板的伴侶來做技術(shù)指導,聊起ARM、wince、Linux、操作系統(tǒng),讓人真是大開眼界。操作系統(tǒng)才是將來!必須轉(zhuǎn)變!在硬件方面沒人指導很難有長進,但是軟件方面我可以自學啊。于是我開頭買各種ARM的書,買周立功的2104板和書,用它來學習過UCOS,感覺他們還在連續(xù)著單片機的思路。這不行??!得上操作系統(tǒng)!學WINCE?還是學LINUX?WINCE可是要錢的,咱學個免費的LINUX吧。買個S3C2440開發(fā)板,就這樣開頭了LINUX的自學之路。多謝友善之臂的老板楊斌,我買的是個二手的2440開發(fā)板,他還是專心的供應技術(shù)支持,那時我沒少請教他問題。他應該發(fā)達!2005年那會,嵌入式LINUX方面的書是沒有的,所以我的學習過程完全依靠網(wǎng)絡、論壇,現(xiàn)在回首那個時候的提問,可以發(fā)現(xiàn)很多幼稚問題(特意去試了下,我才發(fā)現(xiàn)那個網(wǎng)站已經(jīng)關(guān)閉了,世事難料啊)。工作后再難有在校時的心態(tài)與大段時間……,直到公司倒閉……,我于是回老家閉門學習半年。在外租房,有家不回;沒日沒夜,不是在電腦前就是在床上,要不就是去吃飯的路上;自學、翻書、發(fā)貼、編程試驗、問題解決不了時苦悶得想砸電腦;現(xiàn)在回想起來感覺也挺勵志的。就這樣,用了半年終究入了門,bootloader完全掌握,基本的Linux驅(qū)動會寫了,錢也用完了,要出來工作了(想想也挺郁悶,高校4年工作2年,竟然技術(shù)不過關(guān)要回爐重造)。我沒有Linux工作閱歷啊,怎么辦?那就自己寫個操作系統(tǒng)混閱歷值吧,仿照UCOS、LINUX,寫一個簡潔的操作系統(tǒng):基于MMU的操作系統(tǒng)(MOS)。就用它作為敲門磚,寫到簡歷上去顯得有點料。去面試了三家公司,華為惠通、UT斯達康、中興,全中!由于錢沒了,而中興的通知來得最早,就去它吧。說實話,那時我的Linux水平只是剛?cè)腴T,好在2006年那會中興也剛從vxwork轉(zhuǎn)為Linux,大家都不懂都在學習,我倒也不顯得丟人。在中興里,又是沒日沒夜地工作、學習了2年。期間遇到過很多的疑難問題,煅煉了能力。說真的,只有在解決問題的同時,你才會東想西想,把有關(guān)、無關(guān)的技術(shù)都想清晰并掌握得扎實。2007年從中興辭職開頭寫書。不要笑我只有2年Linux工作閱歷就敢寫書,自學半年工作兩年,是這輩子最用功的時刻,遠比高考時努力。這2年半所學到的東西遠超高校4年。工作和寫書對技術(shù)的要求完全不同,工作上你能寫出程序解決問題就可以,而寫書則要求你對知識理解透徹。書寫了1年,也可以認為連續(xù)學習了1年。2008年那會還沒有手把手教、從零搭系統(tǒng)開頭學習嵌入式Linux的書,這本書《嵌入式Linux應用開發(fā)完全手冊》又火了一把。書出了,我也稍有點名氣,于是從2009年開頭在幾個培訓機構(gòu)講課,去過華清遠見、尚觀,都是兼職,由于我當時還想著自己創(chuàng)業(yè)呢。業(yè)沒創(chuàng)好錢又沒了,只能去兼職。這樣又持續(xù)了2年,這又是一個煅煉:怎么講,別人才容易學會。這就是我的學習工作經(jīng)歷,生活推著我在Linux上歷煉了9年。如果你還是同學,勸你盡早找到自己的愛好,全力鉆研;如果你已經(jīng)進入社會,最好能找到相關(guān)的工作,白天上班也是煅煉,晚上連續(xù)學習。2、電子發(fā)燒友:自從業(yè)以來,遇到最大的困難與挑戰(zhàn)是什么?能否給我們共享些您的閱歷以及心路歷程?

韋東山:

轉(zhuǎn)行!轉(zhuǎn)行是最困難的,這意味著你前面積累的閱歷幾乎沒用了,還需要學習全新的知識──這需要大量的時間。我的第1份工作是做硬件的,后來由于工作需要也寫一下單片機程序,但是軟件水平是很低的。決定轉(zhuǎn)行學習Linux時,這需要有操作系統(tǒng)的概念知識、全新的ARM體系架構(gòu)知識、完全沒接觸過的軟件設計理念(寫單片機時就是一個while循環(huán),Linux里都是面對對象的思想)。這千頭萬緒,要學習的知識很多,從哪里入手,從哪里抽出時間,這就是2個最大的困難。對于時間,我是暫停工作閉門自學了半年;對于從哪里學習,我是先學習了趙炯的《LINUX內(nèi)核完全注釋》,這讓我對操作系統(tǒng)有比較深的生疏;接著把ARM開發(fā)板當作單片機學習裸板,把bootloader涉及的硬件操作單獨寫程序試驗;最后開頭學習驅(qū)動程序的編寫。從裸板程序開頭,直到Linux驅(qū)動,這就是我的主要學習方法,這也是《嵌入式Linux應用開發(fā)完全手冊》的章節(jié)挨次。5、電子發(fā)燒友:傳統(tǒng)的Linux驅(qū)動開發(fā)和Android驅(qū)動開發(fā)有何區(qū)分?現(xiàn)在android那么火,它跟LINUX是什么關(guān)系?學好了你們的視頻,對學習android有何幫助?你們后續(xù)有無錄制android視頻的計劃?

韋東山:

簡潔地說,Android驅(qū)動=Linux驅(qū)動+封裝。Android應用程序是使用java編寫的,Linux內(nèi)核和驅(qū)動程序是使用C語言編寫的,javaAPP要訪問驅(qū)動程序,這中間需要插入一個封裝接口。核心還是底下的Linux驅(qū)動程序;對于封裝,你只要了解了封裝規(guī)章,基本就可以一通百通了。所以,如果你的目標是掌握Android驅(qū)動,那么我們的視頻很適合你。我們后面也會講講Android驅(qū)動的封裝,它不會太難。對于Android應用程序,可以認為它跟Linux的關(guān)系不大。即使你沒有Linux知識,也可以在1個月內(nèi)入門Android應用開發(fā)──我只是說,你會開發(fā)簡潔的界面。程序的核心永久是在界面之后,所以不要沾沾得意。比如手機游戲,背后的圖像處理算法、游戲的規(guī)律,這才是重點。如果你的目標是掌握Android應用,我反而覺得你應該跳出“Android”來學習。應用程序的領域?qū)嵲谔?,有網(wǎng)絡、圖像處理、平安、搜尋等等,由你的愛好來選擇方向吧。Android應用只是一個人機界面,把背后的簡單系統(tǒng)展現(xiàn)給客戶來使用,如果你只滿足于“寫界面”,好吧,1個月速成,再花幾個月深化理解Android的框架。容易上手的,就容易掉價。前幾年Android應用開發(fā)由于會的人還不多,工資挺高;這兩年就開頭往下掉了;要保住你的薪資水平,除了界面你還需要掌握“核心技能”:界面背后的支撐。我沒有打擊Android應用的意思,對于急于找到工作的人,我反而建議去學習Android應用。你應聘到工作后,公司自然會壓著你去了解產(chǎn)品的相關(guān)知識,否則你也寫不出界面啊。6、電子發(fā)燒友:工程師一般時間都是比較緊張的,您是在什么情況下寫的《嵌入式LINUX應用開發(fā)完全手冊》這本書呢?這本書是想給大家共享些什么呢?

韋東山:

辭職寫的。我2005年自學Linux時在網(wǎng)上發(fā)布了“S3C2410完全開發(fā)流程”的學習筆記,被出版社的編輯看到。他們在2006年聯(lián)系我寫書,那時我在中興上班。在公司上班期間,根本沒有時間寫書:工作累個半死,回來哪有精力寫。于是決定2007年辭職專門寫書。我學習時,大部分的知識都是從網(wǎng)上搜尋得來,這需要耗費巨大的精力去尋找,并且不系統(tǒng)。作為初學者,不知道去搜什么來入門,也不知道搜什么來深化。所以,我想出一套“完全教程”,讓零基礎的入只看這本書,就可以入門并掌握比較深的、工作中可以使用的知識。好吧,其實也是被編輯以名利相誘,然后催我寫寫寫!7、電子發(fā)燒友:“電子從業(yè)人員的進展方向”也許分為兩類:軟件工程師、硬件工程師,軟件工程師一般又可以分為:底層系統(tǒng)、上層應用。您如何看待這三種方向的職業(yè)進展呢?

韋東山:

我剛工作時也曾是個硬件工程師,但是發(fā)現(xiàn)沒人帶的話很難有進步,于是轉(zhuǎn)行做軟件了。對于他的職業(yè)進展,我也只能簡潔說說。

不少人問我,到底是學驅(qū)動還是學應用?

我只能說憑愛好,并且驅(qū)動和應用并不是截然分開的a.我們說的驅(qū)動,其實并不局限于硬件的操作,還有操作系統(tǒng)的原理、進程的休眠喚醒調(diào)度等概念。想寫出一個好的應用,想比較好的解決應用遇到的問題,這些知識你應該懂b.做應用門檻低,特別是現(xiàn)在的ANDROID,純JAVA。做應用的進展路徑個人認為有兩個方向:一是業(yè)務純熟,二是成為某個專業(yè)領域的專家。比如在通信行業(yè)、IPTV行業(yè)、手機行業(yè),你了解行業(yè)的業(yè)務需求。所以,當領導的人,多是做業(yè)務應用的。另一個方面就是在網(wǎng)絡傳輸、圖像處理、人工智能等等領域的鉆研,這更多的時候像是在商量學術(shù)問題,而不僅僅是寫程序。c.做驅(qū)動,其實我不想稱為“做驅(qū)動”,而是想稱為“做底層系統(tǒng)”,做好了這是通殺各行業(yè)。我工作幾年,做過手機、IPTV、會議電視,但是這些產(chǎn)品對我毫無差別,由于我只做底層。他們的業(yè)務跟我沒關(guān)系。當應用消失問題,他們解決不了時,我就會從內(nèi)核角度給他們出主意,給他們供應工具。在實際工作中,寫驅(qū)動的活反而不多,更多的是從系統(tǒng)的角度解決難題。底層涉及的絕不僅僅是驅(qū)動,更多在于"系統(tǒng)":它上接應用,下接硬件。很多疑難問題只能由底層的人解決。做底層的進展方向,個人認為是著眼于整個系統(tǒng)的技術(shù)專家。d.其實,做底層還是做應用,之間并沒有一個界線,有底層閱歷,再去做應用,你會感覺很踏實。

有了業(yè)務閱歷或是掌握某項核心技術(shù),你再了解一下底層,很快就可以組成一個團隊。e.我建議你上下兼通,做應用讓你視野更寬闊,做底層讓你技術(shù)扎實。f.就職位而言,永久是應用的職位多于底層的職位。所以,如果你找不到底層的工作,完全可以先做應用。在工作中把底層的本事也學會。在公司中,那些被稱為"系統(tǒng)工程師"的人肯定是上下兼通的8、電子發(fā)燒友:工程師常常在談如何找一個好的平臺,您是如何看待這個問題的?

韋東山:

找平臺,這是個技術(shù)活,或是個運氣活。我有同學始終在騰迅做游戲,估量身家豐厚;也有伴侶在公司分股票之前離職。就我個人閱歷來說,我先是在小公司上班,后來到大公司,各有利蔽:對于技術(shù)能力:在小公司里你會成為多面手,軟件硬件生產(chǎn)調(diào)試你都會插上一腳,如果能潛心學習,對往后進展有好處。我在小公司里設計過硬件,到中興做驅(qū)動時,可以跟硬件工程師一起商量原理圖?,F(xiàn)在創(chuàng)業(yè)了,還可以自己設計產(chǎn)品。在大公司里,每人專門負責一小塊,你可以學得深化,并且有各種設計規(guī)范。對于人際關(guān)系:在大公司里,你會生疏更多的人,生疏各個部門的人,這對今后進展也有幫助。我辭職后接到的獵頭電話,都是中興的同事推舉的?,F(xiàn)在缺乏哪方面的技能,也可以向原來的同事請教。對于收入:呵呵,看運氣吧。有人被微軟拒絕后成為了億萬富翁,有人則終身在微軟里寫代碼;有人創(chuàng)業(yè)失敗,有人單憑公司年終獎就資產(chǎn)豐厚。依據(jù)你的需求,能擔當風險的能力,來選擇平臺──這似乎是廢話,確實是。社區(qū)之星招募:不限專業(yè)領域、不限技術(shù)方向,只要你是一個有活力并樂于共享的開發(fā)者,只要你愿意把自己的閱歷收獲共享給大家,幫助眾多從業(yè)者共同學習、共同進步,我們就歡迎你來做客社區(qū)之星。

聯(lián)系方式:陳晨,論壇用戶名:zhou2sheng。快來聯(lián)系小編吧!往期回顧:

第十七期:社區(qū)之星——學霸教你如何考進嵌入式國家實驗室

第十六期:社區(qū)之星——資深工程師指點:如何走好電路設計之路

第十五期:社區(qū)之星——勇于試錯,BeBrave

第十四期:社區(qū)之星——資深工程師現(xiàn)身:談談嵌入式開發(fā)的那些年

第十三期:社區(qū)之星——酸甜苦辣兼有之,資深工程師談創(chuàng)業(yè)之路

第十二期:社區(qū)之星——FPGA資深FAE的閱歷獨白

第十一期:社區(qū)之星——特權(quán)同學從自學FPGA到權(quán)威翻譯的這五年

第十期:社區(qū)之星——怎樣完成從電子工程師菜鳥到研發(fā)主管的蛻變

第九期:社區(qū)之星——追求卓越,成功就會在不經(jīng)意間追上你:宋雪松

第八期:社區(qū)之星——持之以恒:劉卓

第七期:社區(qū)之星——天道酬勤:阿東

第六期:社區(qū)之星

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論