Soft_Job 板


LINE

不知道你说的韧体是指什麽? 嵌入系有很多种: * embedded linux * 使用 rtos, 例如: freertos/vxworks * bare metal 程式 * 手机 * 其他: 每种都有自己需要修练的功课, 但大概都脱离不了 c 语言, 除了 bare metal 都需要一些 os 相关知识, 也不是 bare metal 不需要 os 相关知识, 而是在 bare metal 要打造 os 机制蛮难的, 选一个 os 来用会比较容易。 虽然 OS 观念大同小异, 但大同之中的小异就足够让人伤透脑筋。 细节很多, 提一些大方向。 embedded linux: device driver porting 到新 chip user mode 应用程式 这 3 个各有其功课要修练, porting 到新 chip 大概是最难的, 一般人也比较没有机会练习到, 大概连第0手资料也没有。 device driver 由於和硬体有关, 会和硬体打交道, 需要使用 一些硬体相关工具, 示波器之类的。也要熟悉 linux device driver 架构。这个要练习比较麻烦, 书籍大概都过时, 需要自己看第0手资料, 也就是自己要看 device driver souce code, 然後想办法把 自己要 porting 的硬体写出来。 user mode 应用程式有很多书籍可以学习, 要看懂他们并不容易, 需要花费不少时间。 尤其是 signal/fork/thread 议题都很难搞懂, 但这只是其中一部分而已。 https://descent-incoming.blogspot.com/2020/03/linuxunix-signal.html signal 议题可以看看这篇, 知道 signal 有哪些复杂的议题。 rtos 则是看使用那一套, 就需要去学习其中的用法, 使用起来应该会和 linux 有点差异。 有 ice 会比较容易 debug, 一般大概也会需要用 ice。 bare metal 程式也是很难, 需要从开机程式开始撰写, 如果 chip 厂商有给范例或是相关函式库, 也许会简单一些。 但如果 c 基础不够, 可能有 bug 时, 不太容易找到问题。 会需要使用 ice 的经验。 至於课本的演算法, 资料结构, 不能说不重要, 但可以从基本先熟悉, 不用着急学比较难的, 例如 queue, linked list, 基本 tree, avl tree, rbtree 可以先缓点。 另外大概都会需要一些反组译的能力, 所以还需要略懂该 cpu 的组合语言。 在没有 ice 下或是没有开发版, 可以使用 qemu 来练习开发, 例如可以使用 qemu 模拟 raspberry pi 2/3, 因为通常没有 ice 来连接 raspberry pi 2/3, 这样就可以得到 ice 等级的 debugger, 使用 qemu + gdb 来除错, 一开始应该会觉得很痛苦, 但取得这个能力是很重要的。 我甚至用 qemu + gdb 来 debug uefi 程式, 因为都是使用 gdb, 所以只要痛苦过一次, 很多平台都可以用。 ※ 引述《ming0071 (ming)》之铭言: : 背景:北科非电资大四,毕业後也是在北科读硕非电资(不打算再重考),硕班未来是跟自 : 走车相关的,目标大概是远离机构设备做韧体/嵌入式系统(不太确定这两个的详细差别 : ),也不太清楚这个校名科系有没有办法 : 目前有修过资工系的资料结构了,不过是用python,现在在考量是该怎麽选择 : 1. 接着继续修演算法的课为主,硕班的课有余力再修 : 2. 修硕班的课为主,把学分拿到,有余力再修演算法 : 3. 买一块板子来把C再好好的练熟,也用C练着写基础的资料结构,再多了解一些硬体的 : 知识 : 爬了文後目前的理解是 硬体的知识>C、C++ >资结、演算法、OS,但是演算法、OS也是蛮 : 重要的,不知道该先着重去了解哪一块好? : 也想请教修演算法的课是必要的吗?或者是修作业系统会比演算法来的有效益呢?因为爬文 : 後发现提到作业系统的次数其实还比演算法多一些,但又怕直接读作业系统会看不太懂。 : 如果要挑选一个先了解的话要选哪个好呢? 又或者其实都一起了解才最优? : 最後想问是该多练C还是C++好,发现有的人说C,有的人说C++,似乎都各有各的说法 -- 纸上得来终觉浅,绝知此事要躬行。 --
QR Code



※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 1.200.83.215 (台湾)
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/Soft_Job/M.1676189634.A.BA2.html
1F:→ withoutshine: Design house 的 firmware engineer 还要看懂奇怪 02/12 16:40
2F:→ withoutshine: 的 register 跟帮忙做各种 workaround 02/12 16:40
3F:推 nicetw20xx: 谢谢大大分享 02/12 17:26
※ 编辑: descent (1.200.83.215 台湾), 02/12/2023 21:20:23
4F:推 ming0071: 谢谢分享! 02/12 21:58
5F:推 alex70266: 推一下,编制中型以下的公司是差不多很可能前三个都要 02/12 22:26
6F:→ alex70266: 碰一点。如果你还遇到有些产品即时性需求高会用自己os 02/12 22:26
7F:→ alex70266: 的公司,那porting还有os概念都是逃不掉的 02/12 22:26
8F:→ alex70266: 但实际上如果是在公司里面实战,很少让新人自干,也不 02/12 22:30
9F:→ alex70266: 太可能希望一个新人这些都会XD 02/12 22:30
10F:→ alex70266: Linux userspace progrmming的话圣经就是TLPI 02/12 23:48
11F:推 viper9709: 推分享 02/12 23:54
12F:推 MoonCode: 02/13 01:29
13F:推 v86861062: 推推 02/13 08:58
14F:推 e12518166339: 推推 02/13 09:49
15F:推 DrTech: 清楚明了,连我这外行都看得懂,而且很有系统化的介绍 02/13 12:27
16F:推 timofEE: 推推 02/15 22:56
17F:推 knme: 推推 02/17 11:40







like.gif 您可能会有兴趣的文章
icon.png[问题/行为] 猫晚上进房间会不会有憋尿问题
icon.pngRe: [闲聊] 选了错误的女孩成为魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一张
icon.png[心得] EMS高领长版毛衣.墨小楼MC1002
icon.png[分享] 丹龙隔热纸GE55+33+22
icon.png[问题] 清洗洗衣机
icon.png[寻物] 窗台下的空间
icon.png[闲聊] 双极の女神1 木魔爵
icon.png[售车] 新竹 1997 march 1297cc 白色 四门
icon.png[讨论] 能从照片感受到摄影者心情吗
icon.png[狂贺] 贺贺贺贺 贺!岛村卯月!总选举NO.1
icon.png[难过] 羡慕白皮肤的女生
icon.png阅读文章
icon.png[黑特]
icon.png[问题] SBK S1安装於安全帽位置
icon.png[分享] 旧woo100绝版开箱!!
icon.pngRe: [无言] 关於小包卫生纸
icon.png[开箱] E5-2683V3 RX480Strix 快睿C1 简单测试
icon.png[心得] 苍の海贼龙 地狱 执行者16PT
icon.png[售车] 1999年Virage iO 1.8EXi
icon.png[心得] 挑战33 LV10 狮子座pt solo
icon.png[闲聊] 手把手教你不被桶之新手主购教学
icon.png[分享] Civic Type R 量产版官方照无预警流出
icon.png[售车] Golf 4 2.0 银色 自排
icon.png[出售] Graco提篮汽座(有底座)2000元诚可议
icon.png[问题] 请问补牙材质掉了还能再补吗?(台中半年内
icon.png[问题] 44th 单曲 生写竟然都给重复的啊啊!
icon.png[心得] 华南红卡/icash 核卡
icon.png[问题] 拔牙矫正这样正常吗
icon.png[赠送] 老莫高业 初业 102年版
icon.png[情报] 三大行动支付 本季掀战火
icon.png[宝宝] 博客来Amos水蜡笔5/1特价五折
icon.pngRe: [心得] 新鲜人一些面试分享
icon.png[心得] 苍の海贼龙 地狱 麒麟25PT
icon.pngRe: [闲聊] (君の名は。雷慎入) 君名二创漫画翻译
icon.pngRe: [闲聊] OGN中场影片:失踪人口局 (英文字幕)
icon.png[问题] 台湾大哥大4G讯号差
icon.png[出售] [全国]全新千寻侘草LED灯, 水草

请输入看板名称,例如:Gossiping站内搜寻

TOP