韦大叔的书这里是不是写错了,应当是指向下一个结构体...

2020-01-01 17:49发布

WDS的书上有一段,
讲bootloader的15.1节

其中,tag_next 定义如下,它指向当前标记的末尾:

#define tag_next(t) ((struct tag *)((u32 *)(t) + (t)->hdr.size))


这个宏定义里面,嗯

首地址是t,加上一个tag的大小后
地址应当变成下一个tag,而不是
本tag的末尾

就像一个tag结构体,
大小是10个byte,首地址是
0x8000 0000
那么加上10个byte以后,指向
的是0x8000 000A,
是另外一个tag,而不是本tag的末尾,
因为本tag的末尾是
0x8000 0009

不知道是我对了,还是他错了……
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
20条回答
zzj0329
1楼-- · 2020-01-04 11:44
blxy 发表于 2016-8-1 21:51
楼主拿18K工资?

到底是楼主能拿18k工资还是你们没拿18k工资?
chen849928055
2楼-- · 2020-01-04 13:24
会的想回答就回答别人问题,不想回答就不回答,非得讽刺别人干嘛?搞不懂这是一种什么心理?
就像20楼说的"到底是楼主能拿18k工资还是你们没拿18k工资?"

一周热门 更多>