简介
Pintos 是 Github 上的一个操作系统开源项目,用于进行操作系统教学。适配于 i386 体系结构 CPU,可以在真实的 i386 机器上面进行引导,基础项目源码包含了引导阶段,C语言初始化阶段,CPU 初始化阶段和一个简单的调度器代码。很多课程比如 CSCC69 和 CS162 沿用了这个源于斯坦福的项目,其课程设计是补充完成 pintOS 内核,并且分为以下几个子项目
- 项目1 进程调度 (project 1 Threads)
- 项目2 用户程序 (project 2 User Programs)
- 项目3 虚拟内存 (project 3 Virtual Memory)
- 项目4 文件系统 (project 4 File System)
课程
CS162 的课程可以在讲师 John Kubiatowicz 的油管频道白嫖,John Kubiatowicz 参与了早期 Windows 的开发,在多核处理器设计方面也十分专业 。
pintOS 文档
pintOS 的 原文档 里面也涵盖了许多补充材料,对项目的帮助还是很大的。
麻雀虽小五脏俱全,实际上 pintOS 项目可以做的远不止这些,可以任意在内核中扩充你想要的功能,在 pintOS 原仓库中也包含了 Shell 一类的样例程序,增加了项目的多样性和乐趣。