今天阳光正好
os-lab6笔记 os-lab6笔记
lab6笔记 实验目的 pipe shell shell中设计pipe“|”的部分 管道 是进程间通信的另一种方式,显然是进程间单向通信的一种方式。 mos中pipe的使用与实现 首先分析Pipe这个结构体 struct Pip
2024-06-17
os-lab5实验报告 os-lab5实验报告
Lab5实验报告 思考题 Thinking 5.1 如果通过 kseg0 读写设备,那么对于设备的写入会缓存到 Cache 中。这是一种错误的行为,在实际编写代码的时候这么做会引发不可预知的问题。请思考:这么做这会引发什么问题?对于不同种
2024-06-17
os-lab5笔记 os-lab5笔记
lab5 这一章讲文件系统,其实核心是将外设device。正是由于一切皆文件,才能对外设有统一的管理,或者说为了对外设有统一的管理,于是诞生了一切皆文件的概念。这两个我不清楚哪个在前,一个是目的,一个是方法,或许是方法早就有,恰好对上了这个
2024-06-17
os-lab4实验报告 os-lab4实验报告
Lab4实验报告 思考题 Thinking 4.1 思考并回答下面的问题: 内核在保存现场的时候是如何避免破坏通用寄存器的? 系统陷入内核调用后可以直接从当时的 $a0-$a3 参数寄存器中得到用户调用 msyscall留下的信息吗?
2024-06-17
os-lab6实验报告 os-lab6实验报告
[toc] Lab6实验报告 思考题 Thinking 6.1 示例代码中,父进程操作管道的写端,子进程操作管道的读端。如果现在想让父进程作为“读者”,代码应当如何修改? 将case和default后面的内容交换即可。 #include
2024-06-17
os-lab4笔记 os-lab4笔记
lab4 实验目的: 掌握系统调用的概念及流程 实现进程间通信机制 实现fork函数 掌握页写入异常的处理流程 系统调用: 这个东西早有耳闻。在用户态下,用户进程不能访问系统的内核空间,也不能调用内核函数,这一点是由体系结构保证的。然后
2024-06-17
os-lab1实验报告 os-lab1实验报告
Lab1实验报告 思考题 Thinking 1.1 请阅读 附录中的编译链接详解,尝试分别使用实验环境中的原生 x86 工具 链(gcc、ld、readelf、objdump 等)和 MIPS 交叉编译工具链(带有 mips-linux-
2024-04-24
os-lab2实验报告 os-lab2实验报告
Lab2实验报告 思考题 Thinking 2.1 请根据上述说明,回答问题:在编写的 C 程序中,指针变量中存储的地址被视为虚拟地址,还是物理地址? MIPS 汇编程序中 lw 和 sw 指令使用的地址被视为虚拟地址,还是物理地址?
2024-04-24
os-lab3实验报告 os-lab3实验报告
Lab3实验报告 思考题 Thinking 3.1 请结合 MOS 中的页目录自映射应用解释代码中 e->env_pgdir[PDX(UVPT)]= PADDR(e->env_pgdir) | PTE_V 的含义。 0x7f
2024-04-24
os-lab3笔记 os-lab3笔记
lab3 实验目的: 创建一个进程,并成功运行 实现时钟中断,通过时钟中断内核获得执行权 实现进程调度,创建两个进程,通过时钟中断切换进程执行 使用进程控制卡Env来跟踪用户进程,并建立一个简单的用户进程,加载一个程序镜像到指定的内存空
2024-04-24
1 / 2