摘要:
一、trap简介 三类 trap 系统调用:用户程序执行ecall指令要求内核为其提供服务 异常:(用户或内核)指令做了一些非法的事情,例如除以零或使用无效的虚拟地址; 设备中断,一个设备,例如当磁盘硬件完成读或写请求时,向系统表明需要处理。 trap执行流程 1. 强制将控制权转移到内核 2. 内 阅读全文
posted @ 2024-04-21 00:10
INnoVation-V2
阅读(75)
评论(0)
推荐(0)
摘要:
Backtrace 注意栈帧的结构就很简单 Alarm (hard) sys_sigalarm 解决思路 保存时钟周期和handler地址 每次发生时钟中断时,计数一次,经过n个时钟周期,就调用handler函数 但是handler函数位于用户态 需要跳转到用户态执行handler 然后跳转回来继续 阅读全文
posted @ 2024-04-21 00:10
INnoVation-V2
阅读(21)
评论(0)
推荐(0)
摘要:
CH-3 页表 0、页表简介 每个进程都有一个页表 用于隔离不同进程的地址空间 为每个进程提供私有的地址空间 决定了进程能访问哪些地址 复用物理内存,把同一物理页映射到几个页表中 1. 分页硬件 内存的实际地址是物理地址 用户指令访问的是虚拟地址 需要通过页表,将虚拟地址翻译为物理地址,才能访问 在 阅读全文
posted @ 2024-04-21 00:09
INnoVation-V2
阅读(43)
评论(0)
推荐(0)
摘要:
文档名:riscv-privileged XV6使用Riscv SV39 Riscv satp地址翻译在4.3.1 Addressing and Memory Protection章节 SV39指令格式详细说明在4.4 Sv39: Page-Based 39-bit Virtual-Memory S 阅读全文
posted @ 2024-04-21 00:08
INnoVation-V2
阅读(38)
评论(0)
推荐(0)
摘要:
一、初始化 kernel\main.c\main() void main(){ ... kinit(); // physical page allocator kvminit(); // create kernel page table kvminithart(); // turn on pagin 阅读全文
posted @ 2024-04-21 00:07
INnoVation-V2
阅读(80)
评论(0)
推荐(0)
摘要:
第二章 操作系统的组织结构 1. 资源抽象 由操作系统管理硬件资源,用户程序通过操作系统提供的接口间接访问硬件资源 所有软件共享CPU,由操作系统进行进程切换的工作 进程通信通过文件描述符完成,省略了很多细节,比如管道文件的具体存放位置,而且如果管道中程序执行失败,内核会给管道另一端的程序发送EOF 阅读全文
posted @ 2024-04-21 00:06
INnoVation-V2
阅读(45)
评论(0)
推荐(0)

浙公网安备 33010602011771号