西北工业大学 操作系统实验 基于2022修订版实验手册 若后续实验再次修订,则无法直接使用,请关注时效性
我们的课程设计弃其精华取其糟粕,上课把实验手册和实验环境发给大家,然后告诉大家照着手册去完成实验吧,下课前要验收。一句都不讲,好家伙这玩意儿几千行的代码指望学生用四节课靠自己看懂并完善? 实验手册里充斥着长篇大论的代码, 却没几句解释, 完全不得要领。 在这种情况下,为了学分,抄一下作业倒也无可厚非了
project0-4为完成后的代码文件,已生成对应的虚拟机文件,可直接复制到实验环境中,并使用bochs -f bochsrc运行虚拟机
-
project0 内容为从磁盘加载操作系统,并打印指定的字符串。然后自己设计线程程序并加载运行(仓库中的代码为设计自定义线程程序后的结果)
-
project1 内容为解析ELF文件,验收需求能够打印三条指定字符串
-
project2 内容为加载用户态进程,启动一个shell。 验收需求在shell中依次执行以下指令:
pid
b 1 2 3
long
exit
- project3 内容为实现进程调度算法, 实现信号量
分两阶段验收 第一阶段(进程调度)需要在shell中依次执行以下指令:
workload rr 1
workload rr 100
workload mlf 1
workload mlf 100
第二阶段(信号量)需要在shell中依次执行以下指令:
semtest
semtest1
semtest2
- project4 内容为实现分页内存管理,虚拟内存
验收需求在shell中依次执行以下指令:
rec 4
rec
我知道能翻出来这个仓库的你,大概率不会自己完成实验,也基本看不懂这实验到底干了什么,没关系,这里教你如何快速生产看起来像实验报告的答辩,感谢赛博义父ChatGPT
-
实验过程部分,将你执行结果的截图扔给AI,然后将测试程序的代码也扔给AI(位于/project/src/user,和你执行的指令同名的那个C文件), 把截图贴到报告上再把AI生成的分析贴到截图下面
-
实验分析部分,把实验手册对应章节的前言部分扔给AI,生成一下这个实验都干了什么。再让AI生成这个实验所需要的相关知识, 挑几个合适的放进报告。然后翻一下实验手册的项目实现部分,在那里找几个你看着顺眼的函数,然后去项目的源码(/project/src/user/geekos)里面找到同名函数的源代码,把它扔给AI让他分析一下,将这段源码和AI的分析同时放进报告,作为关键函数的代码实现,多弄几个函数冲冲报告长度。
-
实验遇到的问题部分, 使用下面的提示词生成若干问题
假设你是一个学生,你完成了这个实验,你在完善这些关键函数的过程中遇到了某些问题,这些问题可能(这里自己填充为您希望AI生成的 问题描述)等等, 请编写若干可能出现的问题, 详细描述出现问题时的状况,问题的分析及其解决方案。 重点描述出现问题时的程序状态,使用更丰富的语言。使用如下的格式给出,不要添加其他的序号,不进行字体加粗,不进行非必要的缩进 问题描述: 问题分析: 解决方案:
好了,挑几个你看着顺眼的粘上去吧
- 实验总结部分,先把课后题扔给AI,生成一个答案,然后把题目和答案全放进来, 最后使用以下提示词生成一段实验收获
你是完成了这个实验的学生, 你在完成实验后感到收获颇丰, 你希望将在实验中学到的知识分享出来, 你会使用尽可能丰富且严谨的语言来描述你的收获。 基于对当前实验的讨论内容生成一份实验收获, 使用连贯的若干段话描述, 不添加非必要的序号和缩进
到此为止,你应该已经收获了一坨5000多字的答辩了, 接下来就把它交给老师品味吧。