-
Notifications
You must be signed in to change notification settings - Fork 237
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Fix typos in ch1,ch3-9 #191
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
调整了一下格式,进行了一些补充。
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
这个文件是咋回事?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
这个我们可以探讨一下怎样更方便理解,我感觉这个概念不是绝对的。之前从riscv calling convention来看,ra被分类成caller-saved,但是从编译出来的汇编代码来看,看起来更像是callee-saved,可以看这次commit。ra本身就是和调用行为密切相关的,所以这个caller/callee的边界其实很模糊。你可以讲一下你的理解。
另外列出的几个问题请分别在这个repo里面提个issue,放到那个issue里面解决。 |
5-4和1-5有点问题,看一下review意见。 |
好的,已更新了comments, 加了自己的理解。 |
@h888866j 没看到comments更新,有链接发一个? |
5-4 scheduling 这里只是将 在掌握了进程间同学 改成了 在掌握了进程间通信。 和 提交时将CRLF 换成了 LF
|
1-5 这里主要是本节中上下描述不一致问题,总得改一处或者标注一下。
和下面的:
一个说是调用者保存,一个说是被调用者保存。 嗯,开始我觉的是 callee-saved, 因此还提过一个pr改成callee-saved #180 pr已经关了。 我的理解是: 如果函数A 调用了 函数B,子函数B的 如果从发生函数调用时
ra( x1 ) 是调用者保存的。调用函数(Caller)在调用子函数之前就需要修改 ra 使得子函数(Callee)调用能正确返回。而被调用函数(Callee)只要不是叶函数也会调用它的子函数,此时相对于它的子函数,它将变成Caller。 因此,每个函数都需要在开头保存 ra 到自己的栈帧中,并在结尾使用 ret 返回之前将其恢复以确保它自身能正确返回。栈帧是当前执行函数用于存储局部变量和函数返回信息的内存结构。 |
抱歉,我是直接在review意见那里回复的,好像除了自己都看不见。已重新添加成comments。 |
抱歉最近有点忙。姑且都改成被调用者保存了,看看后面有没有更好的说法。 |
修复 描述错误,重复字词,缺字,错别字等。