Re: [請益] 非本科韌體技能樹該怎麼點

看板Soft_Job作者 (瑪莉)時間1年前 (2023/02/11 21:00), 編輯推噓13(13033)
留言46則, 14人參與, 1年前最新討論串3/6 (看更多)
小魯本科學碩,在IC Design House寫過幾年FW 分享自己的經驗以及一點淺見 要進這行的順序: 1. C練熟,至少要有大一計概與程設課程等級 具體目標是用C寫出八皇后、河內塔...等經典問題 這個階段主要是讓你熟悉C語言 包括基本語法、編譯與執行的方式、如何Debug 還有最重要的: 撐過去並且願意繼續寫C 如果你遇到了一堆Segmentation Fault,或是各種Compile不過 上Stack Overflow也不見得可以在五分鐘之內就找到bug的解法 你依然願意繼續找下去依然不放棄這行 那你再往下看其他步驟,否則壓力只會更大 2. 修大學部的作業系統概論 目標就是跟著修完一學期的課就對了 無論是上開放式課程或是直接去學校旁聽都好 一定要跟著交作業/Project 如果跟著寫作業的話應該會更加熟悉C 以及遇到更多坑 我預期作業應該會讓你熟悉以下幾點操作 a. 裝VM b. Linux File System c. Linux 內的基本Command,例如ls、cat、grep... d. 用gcc 寫/編譯 C code 所以要記得先完成第一點熟悉C到一定程度 否則這時候寫作業會有更多問題 更加複雜更不容易找到Solution 3. 修大學部的計算機架構/計算機結構 概論 課名上可能EE/CS 會有不同,但授課範圍都大同小異 目標一樣是修完大學Level一學期的課 一樣請跟著寫作業/Project 這堂課主要是對應到原Po提到的"硬體知識" 就是熟悉CPU的Cache、Write through/Write back、TLB...等等內容 我當年在修的時候有一部分會和OS的內容重疊 所以其實可以兩堂一起修,看你時間分配 另外這堂課作業也許會需要你寫Verilog 如果有遇到的話就跟著學,以後可以自己玩FPGA 4. 準備面試 網路上應該有相關的介紹 你在修完上述兩門課之後面試會問到的東西應該都看得懂了 或至少有基礎知識,要再繼續上Google查也會更有方向 我認為一般人要能面試進這行至少要完成上面4個步驟 當然如果你有任何特權 (身份/血統/...) 就可以無視 如果有錢有閒想再更進階的話可以再進修以下幾點 1. 嵌入式系統概論 我建議可以修個大學部的課 應該可以讓你compile kernel,熟悉一下kernel module、Makefile等等 當然你要自己買個板子來玩也是ok 反正就是熟悉以後的開發環境 2. Linux 就跟著鳥哥的課 有空就加減看一下練習練習 熟悉Linux環境跟Bash Script,以後上班會很好用 祝福原Po順利找到理想工作 我個人是不想繼續寫C 就是了XD -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 71.135.0.220 (美國) ※ 文章網址: https://www.ptt.cc/bbs/Soft_Job/M.1676120416.A.D82.html

02/11 21:29, 1年前 , 1F
開機程式好像都是C 不知道CPP能不能寫開機
02/11 21:29, 1F

02/11 21:30, 1年前 , 2F
其實想選韌體或嵌入式也是發現自己喜歡寫程式,但是非
02/11 21:30, 2F

02/11 21:30, 1年前 , 3F
本科好像也就這個方向可以轉過取,不然感覺一直讀記憶
02/11 21:30, 3F

02/11 21:30, 1年前 , 4F
體位置也是蠻單調枯燥的
02/11 21:30, 4F

02/11 21:33, 1年前 , 5F
好奇寫FW好玩嗎 從來沒機會玩過個覺得可惜
02/11 21:33, 5F

02/11 22:37, 1年前 , 6F
好人
02/11 22:37, 6F

02/11 22:37, 1年前 , 7F
非本科怎麼不寫SW,就不太需要知道HW的東西
02/11 22:37, 7F

02/11 22:38, 1年前 , 8F
寫軟體才比較需要資結跟演算法
02/11 22:38, 8F

02/11 22:39, 1年前 , 9F
想要寫程式不一定要寫C啊,有Python了何不繼續下去
02/11 22:39, 9F

02/11 22:41, 1年前 , 10F
幹嘛限制在bash,高手都用tcsh和csh殼層做事情的
02/11 22:41, 10F

02/11 23:58, 1年前 , 11F
只要能compile成組語/機械語言,沒有啥不能寫的
02/11 23:58, 11F

02/11 23:59, 1年前 , 12F
現代語言都是A編譯B再編譯成C...問題是有沒有轉譯器
02/11 23:59, 12F

02/12 00:14, 1年前 , 13F
其實你有興趣什麼都學一點也不會有什麼問題
02/12 00:14, 13F

02/12 00:18, 1年前 , 14F
絕大部分的人都不是專點一兩項技能的
02/12 00:18, 14F

02/12 00:20, 1年前 , 15F
我以前給人的建議都是
02/12 00:20, 15F

02/12 00:20, 1年前 , 16F
A. 想走嵌入式,那弄塊可以跑linux的版子
02/12 00:20, 16F

02/12 00:21, 1年前 , 17F
上面放自己編譯的web opensource service上去
02/12 00:21, 17F

02/12 00:22, 1年前 , 18F
弄個i2c sensor接起來讀數值
02/12 00:22, 18F

02/12 00:22, 1年前 , 19F
把數值丟在網頁上顯示
02/12 00:22, 19F

02/12 00:23, 1年前 , 20F
bsp kernel/uboot/toolchain都可以用原廠給的
02/12 00:23, 20F

02/12 00:24, 1年前 , 21F
但是放進去的rootfs盡量想辦法自己用busybox編進去
02/12 00:24, 21F

02/12 00:24, 1年前 , 22F
要用C++寫OS之前你先學一下rust
02/12 00:24, 22F

02/12 00:25, 1年前 , 23F
這樣已經很有嵌入式工程師自幹風了 XD
02/12 00:25, 23F

02/12 00:26, 1年前 , 24F
B.想要練寫C,那就試著用C重頭寫一個簡單的http server
02/12 00:26, 24F

02/12 00:27, 1年前 , 25F
不難但是都需要讀一點東西,也有足夠菜鳥磨練的空間
02/12 00:27, 25F

02/12 00:34, 1年前 , 26F
想學linux 感覺會更軟一點 不會像現在一堆時間都花在找硬
02/12 00:34, 26F

02/12 00:34, 1年前 , 27F
體問題上面QQ
02/12 00:34, 27F

02/12 01:43, 1年前 , 28F
好的 感恩各位前輩的指導,目前看了下來感覺我應該也會
02/12 01:43, 28F

02/12 01:43, 1年前 , 29F
想盡量避開受到硬體限制的問題,可能朝向嵌入式來做努力
02/12 01:43, 29F

02/12 01:43, 1年前 , 30F
吧。不過要是沒辦法大概也是走向韌體了,最大的目標還是
02/12 01:43, 30F

02/12 01:43, 1年前 , 31F
離開機構設備的框架
02/12 01:43, 31F

02/12 02:25, 1年前 , 32F
我是會把演算法跟資結這種當成寫程式基本功。不要把自
02/12 02:25, 32F

02/12 02:25, 1年前 , 33F
己的路設想的太死只有一個方向比較好
02/12 02:25, 33F

02/12 02:32, 1年前 , 34F
依照我自己的經驗是做嵌入式系統什麼都要會一點,當然
02/12 02:32, 34F

02/12 02:32, 1年前 , 35F
核心能力還是那些。但隨著soc能力越來越高,不代表不會
02/12 02:32, 35F

02/12 02:32, 1年前 , 36F
在上面放高階語言的應用,越來越多上層程式需要開發在
02/12 02:32, 36F

02/12 02:32, 1年前 , 37F
這些東西的時候,學過的東西越多看東西的角度越廣是越
02/12 02:32, 37F

02/12 02:32, 1年前 , 38F
好。
02/12 02:32, 38F

02/12 11:13, 1年前 , 39F
推薦 Linux From Scratch
02/12 11:13, 39F

02/12 11:19, 1年前 , 40F
寫SW啊會用glibc就很底層了
02/12 11:19, 40F

02/13 09:20, 1年前 , 41F
我覺得再過幾年可能MCU上要跑Nodejs和SQLite了
02/13 09:20, 41F

02/13 23:31, 1年前 , 42F
好文推
02/13 23:31, 42F

02/14 01:12, 1年前 , 43F
感謝上面幾位前輩的回覆,有得到一點方向了,打算修個作
02/14 01:12, 43F

02/14 01:12, 1年前 , 44F
業系統的課先開始著手
02/14 01:12, 44F

02/14 01:15, 1年前 , 45F
提到的不要受限只有一個方向也打破我一些鑽牛角尖的念頭
02/14 01:15, 45F

02/14 01:15, 1年前 , 46F
,會再放開去了解更多東西的,非常感謝!!
02/14 01:15, 46F
文章代碼(AID): #1Zvv5Ws2 (Soft_Job)
討論串 (同標題文章)
文章代碼(AID): #1Zvv5Ws2 (Soft_Job)