前言
如何开始实验
贡献指南
CHANGELOG
1.
Lab0:拆炸弹
1.1.
基本知识
1.2.
二进制炸弹拆除
2.
Lab1: 机器启动
2.1.
RTFSC(1)
2.2.
内核启动
2.3.
页表映射
3.
Lab2: 内存管理
3.1.
物理内存管理
3.2.
页表管理
3.3.
缺页管理
4.
Lab3: 进程管理
4.1.
RTFSC(2)
4.2.
线程管理
4.3.
异常管理
4.4.
系统调用
4.5.
用户态程序编写
5.
Lab4: 多核调度与IPC
5.1.
多核支持
5.2.
多核调度
5.3.
进程间通信(IPC)
5.4.
实机运行与IPC性能优化
6.
Lab5: 虚拟文件系统
6.1.
Posix适配
6.2.
FSM
6.3.
VFS(FS_Base)
6.4.
BowerAccess
7.
Detail: 源码详解
7.1.
Lab0:拆炸弹
7.2.
Lab1: 机器启动
7.2.1.
源码解析
7.2.1.1.
内核启动
7.2.1.2.
页表映射
7.2.2.
教材阅读
7.2.3.
拓展与思考
7.3.
Lab2: 内存管理
7.3.1.
源码解析
7.3.1.1.
物理内存管理
7.3.1.2.
虚拟内存管理
7.3.2.
教材阅读
7.3.3.
拓展与思考
7.4.
Lab3: 进程管理
7.4.1.
源码解析
7.4.1.1.
进程/线程管理
7.4.1.2.
异常管理
7.4.1.3.
系统调用
7.4.2.
教材阅读
7.4.3.
拓展与思考
7.5.
Lab4: 多核调度与IPC
7.5.1.
源码解析
7.5.1.1.
多核支持
7.5.1.2.
多核调度
7.5.1.3.
ipc通信
7.5.2.
教材阅读
7.5.3.
拓展与思考
7.6.
Lab5: 虚拟文件系统
8.
附录
8.1.
Bomb: 工具教程
8.1.1.
TL;DR Cheatsheet
8.1.2.
tmux
8.1.3.
gdb
8.1.3.1.
源码级调试 vs 汇编级调试
8.1.3.2.
使用简介与扩展阅读
8.1.4.
objdump
8.1.5.
make
8.1.6.
qemu
8.1.6.1.
进程级模拟 vs 系统级模拟
8.1.6.2.
GDBServer
8.2.
Kernel: ELF格式
8.3.
Kernel: Linker Script
8.4.
Kernel: 调试指北
Light
Rust
Coal
Navy
Ayu
IPADS OS Course Lab Manual
源码解析
这部分内容是对多核支持-多核调度-进程间通信部分的chcore源代码的详细解析,包括进程/线程管理、异常管理与系统调用三个部分。
important
完成 Lab4 后,再阅读这部分内容。