Contents Menu Expand Light mode Dark mode Auto light/dark mode
uCore-Tutorial-Guide-2024S 文档
uCore-Tutorial-Guide-2024S 文档

正文

  • 第零章:实验环境搭建
    • 实验环境配置
  • 第一章:应用程序与基本执行环境
    • 引言
    • 代码框架简述
    • makefile 和 qemu
  • 第二章:批处理系统
    • 引言
    • 特权级机制
    • 实现应用程序以及user文件夹
    • 实现批处理操作系统的细节
  • 第三章:多道程序与分时多任务
    • 引言
    • 多道程序放置与加载
    • 进程基础结构
    • 多道程序与协作式调度
    • 分时多任务系统与抢占式调度
    • chapter3练习
  • 第四章:地址空间
    • 引言
    • C 中的动态内存分配
    • 地址空间
    • SV39多级页表机制:内容介绍
    • SV39多级页表机制:OS实现
    • chapter4练习
  • 第五章:进程及进程管理
    • 引言
    • 与进程有关的重要系统调用
    • 进程管理的核心数据结构
    • shell与测例的加载
    • chapter5练习
  • 第六章:文件系统与I/O重定向
    • 引言
    • 文件系统接口
    • nfs文件系统
    • chapter6练习
  • 第七章:进程间通信
    • 引言
    • 文件系统扩充
    • 进程通讯与 fork
    • chapter7练习
  • 第八章:并发
    • 引言
    • 内核态的线程管理
    • 锁机制
    • 信号量机制
    • 条件变量机制
    • chapter8 练习

附录

  • 附录 B:常见工具的使用方法(Rust版本)
  • 附录 C:深入机器模式:RustSBI
  • 附录 D:RISC-V相关信息
    • RISCV汇编相关
    • RISCV硬件相关

开发注记

  • 修改和构建本项目
  • reStructuredText 基本语法

第四章:地址空间¶

  • 引言
    • 本章导读
    • github 多仓库使用讲解
    • 实践体验
    • 本章代码树
    • 本章代码导读
  • C 中的动态内存分配
    • 本节导读
    • kalloc之中的动态内存分配
  • 地址空间
    • 本节导读
    • 虚拟地址与地址空间
      • 地址虚拟化出现之前
      • 加一层抽象加强内存管理
      • 增加硬件加速虚实地址转换
    • 分段内存管理
    • 分页内存管理
    • C的内存布局
  • SV39多级页表机制:内容介绍
    • 本节导读
    • 虚拟地址和物理地址
      • 内存控制相关的CSR寄存器
      • 地址格式与组成
      • 多级页表原理
  • SV39多级页表机制:OS实现
    • 本节导读
    • 地址相关的数据结构抽象
      • 页表实现va–>pa的转换过程
    • 页表的建立过程
    • 启用页表后的跨页表操作
    • 内核页表
    • 用户页表的加载
  • chapter4练习
    • 本章任务
    • 编程作业
      • 重新实现 sys_gettimeofday以及 taskinfo
      • mmap 匿名映射
      • 实验要求
    • 问答作业
    • 报告要求
    • 选做题目
Next
引言
Previous
chapter3练习
Copyright © OS2024Spring | Built with Sphinx and @pradyunsg's Furo theme. | 显示源代码