0.

先推荐教程

https://blog.terrychan.me/tags/pintos/

https://www.cnblogs.com/laiy/p/pintos_project1_thread.html#timer_sleep

推荐两篇结合来看,我的实验报告更适用于对本实验不感兴趣只想想完成实验的同学

已完成修改的代码地址:

https://github.com/sorod-sg/pintosInXDU

本实验的环境配置较为复杂,推荐大家使用docker进行实验(我推荐所有要配环境且不能通过pacman解决的东西都用docker解决)

pintos 实验报告

1.实验准备

采用docker + vscode 的方式进行开发

docker 镜像名称 : thierrysans/pintos

不推荐将时间花费到配置bochs上

2.pintos分析

先分析主文件夹下内容

Screenshot_20211124_170245.png

3.问题分析

本实验需要在原有内核上增加如下内容

  1. 中断问题,实现线程的挂起和唤醒,最简单的调度
  2. 优先级问题,将就绪队列修改为一个优先队列,按照优先级对线程进行唤醒