Soft_Job 板


LINE

大家好,小弟的工作跟 MCU 有关 近期工作刚 on board,导师要我先看一个资料夹内的 Code 里面看起来像是一个 task 的 create、initilize 跟 API 以往经验,我会先找一个程式的 main function 当入口,然後顺着逻辑去看 code 但这套似乎没办法用在 Kernel 上, 我查的资料也是说: Kernel 比较像是一个状态机的架构,只有init process 能够像我这样"flow"的方式去 trace (参考自:https://reurl.cc/zNDnMp) 我觉得蛮有道理的,毕竟我真的找不太到这个 task 的 entry 点, 勉强来说的话,应该是我上述的 create、initialize function 吧 但这些又如何串上 API 呢? 上方的网站内有提及, 有些 function 可以不必深入进去看实作,大概知道他的作用即可, 我想也是, 毕竟我看的 Code 也是一直去呼叫别人包好的 API 我没有 trace Kernel 的经验,希望有大大能够给我指引,谢谢。 --



※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 49.216.55.170 (台湾)
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/Soft_Job/M.1661957617.A.C2B.html
1F:→ breeze08: 你的kernel指的是linux kernel还是RTOS? 08/31 23:02
RTOS ※ 编辑: ericerix (49.216.55.170 台湾), 08/31/2022 23:04:23
2F:→ breeze08: RTOS原始码量比较少,花些时间是可以看完整个核心的 08/31 23:12
3F:→ breeze08: 但前提是你对作业系统的运作有基本认识 08/31 23:14
4F:→ breeze08: 否则直接看原始码会有很高的机率看不懂,挫折感极大 08/31 23:15
6F:→ breeze08: 所以建议是先了解作业系统的概念再来看原始码 08/31 23:19
7F:→ enthos: github.com/gurugio/lowlevelprogramming-university 08/31 23:19
8F:→ breeze08: 会比较好入手 08/31 23:19
9F:→ breeze08: 如果要快速上手的话,稍微了解一下scheduler跟context 08/31 23:22
10F:→ breeze08: switch的概念,然後就直接看实际范例可能会比较快 08/31 23:22
11F:推 TWkobe: Rtos 算很短易懂了,先看文档怎麽操作建立task,怎麽注册 08/31 23:29
12F:→ TWkobe: int, 再来理解kernel实作 08/31 23:29
13F:推 NerVGear: SourceInsight打开啊 08/31 23:46
14F:推 NerVGear: 如果真要看整个流程去看Bare metal是怎麽init就知道了 08/31 23:49
15F:→ NerVGear: 很多东西都是被toolchain预设的东西藏起来 08/31 23:59
16F:→ NerVGear: 像main function怎麽被call到的这个你就可以研究一阵子 08/31 23:59
17F:→ NerVGear: 了 08/31 23:59
18F:推 henry4343: Task的entry point不就是建立这个task时丢进去的func 09/01 00:12
19F:→ henry4343: tion pointer吗 09/01 00:12
20F:→ henry4343: 如果是os的entry point可以试试找start.S之类的应该会 09/01 00:13
21F:→ henry4343: 有接到c的main 09/01 00:13
22F:推 bena5mail13: 直接从elf反组译就可以找到第一行程式码在那里进入了 09/01 00:21
23F:推 labbat: 怀疑新手能不能拿到os原始码,一般不是.a档包一包就动了 09/01 01:56
24F:→ labbat: 能看到的只有介面的交换资料,真正原始码得找资深同事 09/01 01:57
25F:推 WYchuang: 进入点通常是组合语言 往那边找找看吧 09/01 09:53
26F:推 ihatesmith: RTOS的话可以参考"野火"的RTOS教学pdf 09/01 10:06
27F:推 alex70266: 先确认你老板是要你知道怎麽用,还是要你下手去改。如 09/01 11:24
28F:→ alex70266: 果是rtos类的通常是从main找到他注册task function的地 09/01 11:25
29F:→ alex70266: 方,然後看他怎麽呼叫排程开始 09/01 11:25
30F:推 alex70266: 然後免不了要看一下每一个task怎麽分配stack空间跟管理 09/01 11:30
31F:→ alex70266: ,如果你不用牵涉修改os里面的排程行为应该先知道你手 09/01 11:30
32F:→ alex70266: 上的版本有什麽功能跟怎麽用就好.. 09/01 11:30
33F:→ alex70266: 如果是要亲自去改(比方说porting到另外一个chip)或者 09/01 11:34
34F:→ alex70266: 需要要细看怎麽做排程跟context switch的话,那就要去 09/01 11:34
35F:→ alex70266: 看你手边的code的中断向量/exception handler怎麽实作c 09/01 11:34
36F:→ alex70266: ontext switch(通常在handler中间会看到一段搬动stack 09/01 11:34
37F:→ alex70266: 的动作跟还原的动作)通常这边是用组语或者用c的setjum 09/01 11:34
38F:→ alex70266: p/longjump,怎麽操作就跟你手边的mcu是什麽版本的arm 09/01 11:34
39F:→ alex70266: 有关联,排程的话一定有一个演算法决定下次切换到的tas 09/01 11:34
40F:→ alex70266: k是谁,就是看就好 09/01 11:34
41F:推 neo5277: 推推 想写 09/01 12:16
42F:→ leolarrel: 回原po,只要你基础没打好,就没有"有效率"的方法. 09/01 13:13
43F:推 lplpkkk: 成大资工wiki有freertos教学可以看 09/01 22:25
44F:推 leoloveivy: grep -r无敌 09/02 00:52
45F:推 OnlyRD: 你需要先有kernel的概念,然後分模组看。 09/02 15:01







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灯, 水草

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

TOP