操作系统实验报告
学院: 计算机与通信工程学院 专业: 计算机科学与技术 班级: 学号: 姓名: 指导教师:
成绩:
年 月 日
实验一 线程的状态和转换(5分)
1 实验目的和要求
目的:熟悉线程的状态及其转换,理解线程状态转换与线程调度的关系。 要求:
(1)跟踪调试EOS线程在各种状态间的转换过程,分析EOS中线程状态及其转换的相关源代码;
(2)修改EOS的源代码,为线程增加挂起状态。
2 完成的实验内容
2.1 EOS线程状态转换过程的跟踪与源代码分析
(分析EOS中线程状态及其转换的核心源代码,说明EOS定义的线程状态以及状态转换的实现方法;给出在本部分实验过程中完成的主要工作,包括调试、跟踪与思考等)
2.2为线程增加挂起状态的实现
(给出实现方法的简要描述、源代码、测试和结果等) ListRemoveEntry(&Thread->StateListEntry);
PspReadyThread(Thread); PspThreadSchedule();
3 其他需要说明的问题
1
实验二 进程的同步(7分)
1 实验目的和要求
目的:理解进程同步的原理和意义,掌握信号量的实现方法和应用。 要求:
(1)使用EOS的信号量,实现生产者-消费者问题;
(2)跟踪调试EOS信号量的工作过程,分析EOS信号量实现的源代码; (3)修改EOS信号量的实现代码,使之支持等待超时唤醒和批量释放功能。
2 完成的实验内容
2.1 使用EOS的信号量实现生产者-消费者问题
(简要说明使用EOS的信号量解决生产者-消费者问题的实现方法;给出在本部分实验过程中完成的主要工作,包括调试、跟踪、测试与思考等)
2.2 EOS信号量工作过程的跟踪与源代码分析
(分析EOS信号量实现的核心源代码,简要阐述其实现方法;给出在本部分实验过程中完成的主要工作,包括调试、跟踪与思考等)
2.3支持等待超时唤醒和批量释放功能的EOS信号量实现 (给出实现方法的简要描述、源代码、测试和结果等)
3 其他需要说明的问题
2
实验三 时间片轮转调度(5分)
1 实验目的和要求
目的:理解进程(线程)调度的执行时机和过程,掌握调度程序实现的基本方法。 要求:
(1)跟踪调试EOS的线程调度程序,分析EOS基于优先级的抢占式调度的源代码; (2)修改EOS的调度程序,添加时间片轮转调度。
2 完成的实验内容
2.1 EOS基于优先级的抢占式调度工作过程的跟踪与源代码分析
(分析EOS基于优先级的抢占式调度的核心源代码,简要阐述其实现方法;给出在本部分实验过程中完成的主要工作,包括调试、跟踪与思考等)
2.2为EOS添加时间片轮转调度的实现
(给出实现方法的简要描述、源代码、测试和结果等)
3 其他需要说明的问题
3
相关推荐: