摘要: OS复盘 OS课设已经结课一段时间了,我也从其他课程中抽身出来,有了一段能够好好反思的时光。 说实话,完成OS课设的过程是很痛苦的,指导书蜻蜓点水、注释模棱两可、各种函数和文件调用杂乱无章。每次在完成的时候都是向auser的博客(目前已经失效了)和github学习,之前的lab2和lab3都还比较清 阅读全文
posted @ 2020-06-23 18:46 p_wk 阅读(178) 评论(0) 推荐(3) 编辑
摘要: OS-lab6 管道 在lab5的时候我们实现了文件类设备的读写操作,而在fd.c中,我们定义了3种设备:文件类设备、管道、终端,其中终端已经被完成了,剩下的就是管道了。 管道是一种父子进程间通信的设备,这样的通信是单向的。建立一个匿名管道的流程首先是建立一个缓冲文件,接着 user/pipe.c 阅读全文
posted @ 2020-06-23 17:51 p_wk 阅读(204) 评论(0) 推荐(0) 编辑
摘要: OS-lab5 磁盘管理 完成文件系统的第一步就是要能够处理磁盘等外设的信息。 lib/syscall_all.c 处理磁盘的信息,最基本的就是对磁盘进行读写操作。 sys_write_dev函数用于对外设进行写操作。首先是检查地址的合法性,写入的这段地址需要在规定地址范围之内,接着使用bcopy把 阅读全文
posted @ 2020-06-23 17:49 p_wk 阅读(273) 评论(0) 推荐(0) 编辑
摘要: OS-lab4 系统调用 系统调用的流程 按照上述的流程逐个分析。 user/syscall_lib.c 这个文件位于user文件夹下,也就是用户程序可以调用的函数,相当于操作系统提供给用户程序的一些库函数。里面定义了一系列系统调用函数如syscall_putchar、syscall_yeild等, 阅读全文
posted @ 2020-06-23 17:46 p_wk 阅读(282) 评论(0) 推荐(0) 编辑
摘要: OS-lab3 lab2之后,我们能够通过MMU访问内存了,不过操作系统最重要的是能够让进程运行。 include env.h 定义了进程控制相关的变量,如进程数量NENV、进程状态ENV_FREE等、进程控制块Env、创建进程的宏函数ENV_CREATE、ENV_CREATE_PRIORITY等, 阅读全文
posted @ 2020-06-23 17:43 p_wk 阅读(175) 评论(0) 推荐(0) 编辑
摘要: OS-lab2 启动之后,我们的操作系统要能运行,需要一个载体,就是内存。内存的访问不是直接的,而是通过MMU完成。在完成MMU之前,我们先看看一些需要用到的宏定义和函数。 include pmap.h 定义了内存控制块Page结构体,用于记录页面的分配和使用情况。其中pp_link有两个成员,*l 阅读全文
posted @ 2020-06-23 17:41 p_wk 阅读(320) 评论(0) 推荐(1) 编辑
摘要: OS-lab1 boot boot文件夹中只有start.S文件,这个文件用于初始化内核。关掉中断,设置内核栈,并跳转到main函数。 init init.c 执行初始化操作。 main.c 主函数,调用init.c完成初始化等任务。 lib print.c lp_Print函数主要是解析字符串,完 阅读全文
posted @ 2020-06-23 17:40 p_wk 阅读(239) 评论(0) 推荐(0) 编辑
摘要: OO第四单元总结 程序结构分析 第一次作业 Method ev(G) iv(G) v(G) MainClass.main(String[]) 1 1 1 MyAssociation.MyAssociation(UmlAssociation) 1 1 1 MyAssociation.getOther( 阅读全文
posted @ 2020-06-15 18:22 p_wk 阅读(151) 评论(0) 推荐(0) 编辑
摘要: OO第三单元总结 JML理论基础 JML是用于对Java程序进行规格化设计的一种表示语言,是一种行为接口规格语言(Behavior Interface Specification Language,BISL),基于Larch方法构建。JML以javadoc注释的方式来表示规格,每行都以@起头。而JM 阅读全文
posted @ 2020-05-20 00:14 p_wk 阅读(205) 评论(0) 推荐(1) 编辑
摘要: OO第二单元总结 程序结构分析 第一次作业 | Type Name | MethodName | LOC | CC | PC | | | | | | | | Elevator | Elevator | 7 | 1 | 1 | | Elevator | move | 10 | 1 | 0 | | El 阅读全文
posted @ 2020-04-15 14:38 p_wk 阅读(134) 评论(0) 推荐(0) 编辑