6.S081 Lab2:system calls

Lab2:system calls 编写两个系统调用

Problem 1:System call tracing
System call tracing需要对系统调用进行跟踪,并且要求能够继承给子进程,因此需要将相关的信息记录到存储进程相关信息的数据结构中。

Problem 2:Sysinfo
Sysinfo涉及到了系统调用的传参和返回值,要点在于意识到系统调用和普通函数调用所处的空间不同,系统调用时会跳转到内核空间,因此传参和返回值时需要从特定寄存器取值和存入特定寄存器,涉及到地址取值时候需要将虚拟进程地址利用Pagetable转换为物理地址再使用。
Sysinfo还需要返回剩余的物理空间,在xv6的内核中存在一个物理空间分配器,物理地址空间为由一个链表进行管理,因此在查询剩余空间时候可以利用遍历链表计算。

暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇