saltyfishyjk's Blog

我会珍惜这一份幸运

Mermaid笔记

...

「BUAA OS Lab5」名词解释

「BUAA OS Lab5」名词解释变量和类型Block磁盘块,虚拟概念,将相邻的扇区组合在一起,减小由于扇区过多带来的寻址困难。 磁盘块控制块 位置:fs/fsformat.c 12345struct Block{ uint8_t data[BY2BLK]; uint32_t type;}; 其中,uint8_t是unsigned char,uint32_t......

「BUAA OO Unit 3 HW12」第三单元总结

「BUAA OO Unit 3 HW12」第三单元总结[TOC] Part 0 前言值得一提的是,笔者在做作业中探索了适合自己的策略,和大家分享: 首先通览guidebook,了解大致需求以及用到的算法 实现异常类 实现一般类中新增的内容,可以用Tricks一节中的插件进行比较快速得知更新内容 Part 1 第九次作业1.1 作业要求根据给定JML编写符合要求的在限制复杂度内的Java......

「BUAA OS Lab4」难点梳理与理解总结

「BUAA OS Lab4」难点梳理与理解总结为了节约页面,保证阅读的连贯性,本篇博客尝试不再提供函数的具体实现代码,而转将其在「BUAA OS Lab4」名词解释中专门介绍。读者若有需要,可以两篇博客对比阅读。 首先明确,硬件决定了我们在用户态时,用户进程不能访问系统的内核空间,即,不能存取内核使用的内存数据,不能调用内核函数。我们不允许内核态执行用户程序的代码,因此我们设计了内核空间中的......

「BUAA OS Lab4-1-Extra」IPC实现阻塞机制避免发送方轮询

「BUAA OS Lab4-1-Extra」IPC实现阻塞机制避免发送方轮询Part 0 前言本篇博客记录Lab4-1-ExtraIPC实现阻塞机制避免发送方轮询的实现,Part 1为思路分析,Part 2为代码实现(经过重测已通过),Part 3 踩过的坑,读者可自取所需。 由于本次为线上上机,题目已经开源,不再在文中另附;如有需要者,可以联系yjk_official@foxmail.co......

「BUAA Discrete Mathematics Chapter8」特殊计数数列

「BUAA Discrete Mathematics Chapter8」特殊计数数列Part 0Part 1 Catalan数定义Catalan数列是序列 C_{0}, C_1, C_2, \cdots , C_n, \cdots其中 C_{n} = \frac{1}{n+1}\tbinom{2n}{n} \quad (n = 0, 1, 2, \cdots )是第 $ n $ 个Cat......

「BUAA OS Lab4」名词解释

「BUAA OS Lab4」名词解释变量和类型__SYSCALL_BASE位置:include/unisted.h 系统调用号基址。内核确定是哪类系统调用的唯一依据。 1#define __SYSCALL_BASE 9527 SYS_putchar位置:include/unisted.h 1#define SYS_putchar ((__SYSCALL_BASE ) + (0 ) ) ......

GCC笔记

GCC笔记Part 0 Part 1-ggcc hello.c -g o hello ...

「BUAA OS Lab3」难点梳理与理解总结

「BUAA OS Lab3」难点梳理与理解总结 进程创建进程控制块(Process Control Block)PCB是用来进程管理的数据结构,在我们的MOS中就是Env结构体,具体内容可以参考源码或Lab 3 名词解释。在后文中,我们可能混用PCB和Env,其实两者基本是一个东西。 对于PCB,我们仿照Lab 2中的思路,为envs开辟空间,通过boot_map_segment将其map到......

「BUAA OS Lab2」难点梳理与理解总结

「BUAA OS Lab2」 难点梳理与理解总结内存访问 内存访问的流程: TLB根据虚拟地址查找 若存在,在cache中查找;若不存在,按照页表查询,再查cache,更新TLB 若cache命中则完成,若未命中,进行页面替换 值得一提的是,这里有一个思考方式:我认为应当将虚拟地址如何划分和管理与如何进行物理内存管理这两件事分开考虑。也就是说,我们在虚拟空间中,按照我们的规则将不同的内容......