实验简介
更新日志
实验之前
环境部署
GDB 调试方法*
实验指导
实验指导零
摘要
创建项目
移除标准库依赖
移除运行时环境依赖
编译为裸机目标
生成内核镜像
调整内存布局
重写程序入口点
使用 QEMU 运行
接口封装和代码整理
小结
实验指导一
摘要
什么是中断
RISC-V 中的中断
程序运行状态
状态的保存与恢复
进入中断处理流程
时钟中断
小结
实验指导二
摘要
动态内存分配
物理内存探测
物理内存管理
小结
实验指导三
摘要
从虚拟地址到物理地址
修改内核
实现页表
实现内核重映射
页面置换*
小结
实验指导四
摘要
线程和进程
线程的创建
线程的切换
线程的结束
内核栈
线程调度
小结
实验指导五
摘要
设备树
virtio
驱动和块设备驱动
文件系统
小结
实验指导六
摘要
构建用户程序框架
打包为磁盘镜像
解析 ELF 文件并创建线程
实现系统调用
处理文件描述符
条件变量
小结
实验题
实验一:中断
实验二:内存分配
实验三:虚实地址转换
实验四(上):线程
实验四(下):线程调度
实验六:系统调用
开发笔记
文档代码划分
文档格式规范
代码格式规范
Published with GitBook
摘要
实验指导一
实验概要
这一章的实验指导中,我们将会学习
RISC-V 中有关中断处理的寄存器和相关流程
如何保存上下文,使得中断处理流程前后,原本正在执行的程序感知不到发生了中断
处理最简单的断点中断和时钟中断
results matching "
"
No results matching "
"
results matching "
"
No results matching "
"