Re: [請益] 研替 Linux/MCU

作者: jimmytzeng (jimmytseng)   2016-12-21 10:00:51
※ 引述《OPliao (OPman)》之銘言:
: ※ [本文轉錄自 Tech_Job 看板 #1OLtv-Fl ]
: 作者: OPliao (OPman) 看板: Tech_Job
: 標題: [請益] 研替 Linux/MCU
: 時間: Mon Dec 19 14:30:20 2016
: 各位前輩好
: 最近拿到兩個研替offer
: 兩間都是豬屎屋
: 一個會接觸到linux Kernel
: 一個是MCU相關
: 兩間薪水差不多 想請教走哪條路比較好?
: 有向學長詢問 他說選擇MCU就進入了 真●嵌入式領域
: 而且要跟Linux說掰掰
: 我考慮的點是Linux Kernel外面用得多,未來不怕沒地方去
: 但MCU台灣好像就幾間,不然就是外商(外商好,但沒打算出國工作
: 說錯請指正
: 有任何建議 分享 都相當感謝
: 也歡迎站內信討論~
: 補充
: 雖然知道Linux用在很多地方 但其實也沒有很清楚
: 可以的話請前輩們指引明燈~
: 謝謝
我覺得可以先從MCU下手在轉linux kernel。
好處是MCU架構相對支援linux的ARM A系列,或是mips到x86等CPU相對簡單很多很多,透
過JTAG配合簡單的程式碼,你可以很快熟悉CPU, 並列串列I/O (uart, i2c, spi, usb, p
cie等), timer,dma等基本功能,會看英文spec,設定register,並知道設定下去是在幹
麼,會對系統產生什麼影響。
甚至是可以自己設計memory lauout,自行安排text, bss, data等section(例如有大量快
速運算需求的section放在速度快的memory做系統最佳化)。或是會不會打包binary檔,bi
nary檔會不會加header,header format 是什麼,你程式碼該怎麼解header等等。
接著進一步移植RTOS上去(FreeRTOS,ucos等),你會知道primitive跟cocurrency 差別在
哪,什麼是queue, semaphore, mutex,或是context switch是怎麼處理的,然後進一步
對系統做穩定度與最佳化。
以上這些東西都是蹲馬步,馬步蹲完在去研究linux kernel 才會比較好上手,不然初學
者什麼都不會,就要去trace 好幾萬行程式碼的kernel,跟本瞎子摸象。摸到了一點皮毛
,會open ioctl /dev , /sys 就想一招打天下,但遇到booting hang,kernel panic 等
問題整個人掛在那裡,狂call FAE也求救無門。
作者: OPliao (OPman)   2016-12-21 10:34:00
感謝建議 會好好選擇的
作者: hungys (hungys)   2016-12-21 11:59:00
作者: ccccboom (西西)   2016-12-21 12:49:00
<--- ioctl 混飯吃
作者: iiiii (I take 5)   2016-12-21 13:38:00
直接進kernel就可以,那些MCU你想自己蓋的東西,Kernel也允許你自己蓋,linux裡又有很多很好的sample code
作者: bab7171   2016-12-21 13:43:00
有人願意帶最快
作者: PUTOUCHANG (自己的廢文自己發)   2016-12-21 20:03:00
有夢最美,誰知道進去是不是打雜,同樣是打雜,不如選有OS的更好練功
作者: M013 (13)   2016-12-22 09:03:00
作者: badyy (nick)   2016-12-22 16:10:00
魯弟問問,玩rtos/os用virutalplatform之類的不是也一樣出硬體前不太可能沒驗證過吧...y
作者: codehard   2016-12-22 19:03:00
也是有原廠沒全驗就MP的 特別是小廠 call FAE不理你
作者: amatt   2016-12-23 19:32:00
此篇道出kernel精華,至少看的出底子很厚
作者: evan731125 (被愛是幸福的)   2016-12-23 22:30:00
推一個!寫的真好
作者: WisdomOrLie (LIvELIfE)   2016-12-24 04:13:00
蹲過跟硬體打交道的那些日子 思考issue的角度真的會跟純軟的不太一樣...
作者: Ethical (游志傑)   2016-12-24 13:13:00
作者: surfingbboy (科科)   2016-12-25 20:27:00
很少豬屎屋會改到純Kernel 大部分都是driver居多不過多trace kernel會讓driver寫得更漂亮MCU要看碰的深度了 對task概念會更清楚 但還是Linux比較好玩 JTAG基本上都會用到 尤其hang在看不出來的的地方

Links booklink

Contact Us: admin [ a t ] ucptt.com