操作系统
文章平均质量分 94
操作系统学习
鸣沙山
天上白玉京,十二楼五层,仙人抚我顶,结发授长生。
展开
-
ucore_lab8 实验报告
实验目的通过完成本次实验,希望能达到以下目标某操作系统中建立了一个基于索引节点(index node)结构的文件系统very simple file system, 简称vsfs。vsfs的用户操作包括(以函数形式表示):mkdir(“str”) - 创建一个新目录,目录名称为”str”creat(“str”) - 创建一个空文件,空文件名称为“str”原创 2022-12-27 15:50:35 · 308 阅读 · 0 评论 -
ucore_lab7实验报告
管程是由局部于自己的若干公共变量及其说明和所有访问这些公共变量的过程所组成的软件模块。原创 2022-10-20 11:12:29 · 349 阅读 · 0 评论 -
ucore_lab6实验报告
实验目的熟悉ucore的系统调度器框架,以及基于此框架的Round-Robin(RR) 调度算法。然后参考RR调度算法的实现,完成Stride Scheduling调度算法。原创 2022-09-19 15:17:24 · 373 阅读 · 0 评论 -
通用双向循环链表学习
双向循环链表是很常用的一种数据结构。其结构如下图所示:ucore里面使用了很多双向循环链表组织数据,如空闲页链表等。一般我们在Java写双向链表可能会这么写:public class DoubleLink<T> { T data; DoubleLink prev; DoubleLink next;}而在C里面可能会这么写:struct custom_data {};struct double_link { struct custom_data原创 2022-03-07 17:46:32 · 487 阅读 · 0 评论 -
ucore_lab5实验报告
让用户进程在用户态执行,且在需要ucore支持时,可通过系统调用来让ucore提供服务。为此需要构造出第一个用户进程,并通过系统调用sys_fork/sys_exec/sys_exit/sys_wait来支持运行不同的应用程序,完成对用户进程的执行过程的基本管理。原创 2022-08-23 16:48:33 · 584 阅读 · 0 评论 -
页表自映射机制(Page Tables self-map)
学习ucore操作系统的时候在看到关于页表自映射的介绍,但是讲的不是很详细,理解起来有些吃力,查了一些资料大概有了一个自己的理解。原创 2022-08-11 14:54:06 · 1472 阅读 · 0 评论 -
ucore_lab4实验报告
实验目的:本次实验将首先接触的是内核线程的管理。内核线程是一种特殊的进程,内核线程与用户进程的区别有两个:进程是资源分配单位,线程是CPU调度单位。本实验依赖实验1/2/3。请把你做的实验1/2/3的代码填入本实验中代码中有“LAB1”,“LAB2”,“LAB3”的注释相应部分。和前面一样,直接合并代码即可alloc_proc函数(位于kern/process/proc.c中)负责分配并返回一个新的struct proc_struct结构,用于存储新建立的内核线程的管理信息。ucore需要对这个结构进行最基原创 2022-07-13 17:20:36 · 580 阅读 · 0 评论 -
ucore_lab3 实验报告
在做完lab1、lab2的实验后接着就是lab3,lab3主要是虚拟内存管理相关的内容,按照lab3的实验指导书的要求,开始做lab3的练习本次实验是在实验二的基础上,借助于页表机制和实验一中涉及的中断异常处理机制,完成Page Fault异常处理和FIFO页替换算法的实现,结合磁盘提供的缓存空间,从而能够支持虚存管理,提供一个比实际物理内存空间“更大”的虚拟内存空间给系统使用。这个实验与实际操作系统中的实现比较起来要简单,不过需要了解实验一和实验二的具体实现。实际操作系统系统中的虚拟内存管理设计与实现是相原创 2022-07-13 17:19:44 · 483 阅读 · 0 评论 -
ucore_lab2实验报告
lab1的实验完成后开始lab2,lab2主要是实现内存分配实验目的:理解基于段页式内存地址的转换机制理解页表的建立和使用方法理解物理内存的管理方法在lab1的时候我们用的是段式管理,涉及到的地址都是物理地址。而lab2需要建立段页式内管管理机制。从应用程序的使用角度看是不关心具体对应的物理内存的,操作系统提供一个可用的连续内存空间(虚拟的)给应用程序使用,这样会更方便应用程序编写。lab2主要分三部分:首先要了解的是如何发现系统(硬件)的物理内存建立对物理内存的初步管理页原创 2022-03-07 17:47:29 · 1177 阅读 · 0 评论 -
ucore_lab1实验报告
此篇是学习ucore操作系统lab1的实验报告,参考了很多资料和文章,也学到了不少。先看要求:为了实现lab1的目标,lab1提供了6个基本练习和1个扩展练习,要求完成实验报告。对实验报告的要求:基于markdown格式来完成,以文本方式为主。填写各个基本练习中要求完成的报告内容完成实验后,请分析ucore_lab中提供的参考答案,并请在实验报告中说明你的实现与参考答案的区别列出你认为本实验中重要的知识点,以及与对应的OS原理中的知识点,并简要说明你对二者的含义,关系,差异等方面的理解(也可原创 2022-03-07 17:44:22 · 1748 阅读 · 0 评论