操作系统原理实验
麓山君陌
在校科研生
展开
-
操作系统原理实验(5):内存管理
一、实验目的分页内存管理是内存管理的基本方法之一。本实验的目的在于全面理解分页式内存管理的基本方法以及访问页表,完成地址转换等的方法。二、实验过程&错误内容(一):设计不同的方式引发页错误,观察并记录对应的现象存储器保护:操作系统的一个主要任务是将程序彼此隔离。为了实现这个目标,操作系统利用硬件功能来确保一个进程的存储区域不能被其他进程访问。根据硬件和操作系统的实现,存在各种方法。比方说,一些ARMCortex-M处理器(用于嵌入式系统)具有存储器保护单元(MPU),其允许您定义具有不同原创 2020-10-14 21:58:56 · 4575 阅读 · 2 评论 -
操作系统原理实验(4):深渊:竞争条件与死锁
一、实验目的当多个任务访问同一个资源(数据)是就会引发竞争条件问题,这不仅在进程间会出现,在操作系统和进程间也会出现。由竞争条件引发的问题很难复现和调试,这也是其最困难的地方。本实验的目的在于了解竞争条件和死锁现象,并掌握处理这些问题的初步方法等。。二、实验过程&错误内容(一):死锁的复现及死锁的简单处理在硬件中断的帖子中,我们设置了可编程中断控制器,以正确地将硬件中断转发到CPU。为了处理这些中断,我们将新条目添加到中断描述符表中,就像我们为异常处理程序一样。我们将学习如何获取定期的计时器原创 2020-10-14 21:41:23 · 1672 阅读 · 0 评论 -
操作系统原理实验(3):操作系统的基石中断与异常
一、实验目的中断、异常和陷阱指令(合称类中断)是操作系统的基石,现代操作系统就是由(类)中断驱动的。本实验的目的在于深刻理解(类)中断的原理和机制,掌握 CPU 访问设备控制器的方法,掌握 x86 体系结构的(类)中断机制和规范,实现时钟中断服务和部分异常处理等。二、实验过程&错误内容(一):实现 Breakpoint 异常的处理步骤1:新建一个os并复制文件main.rs和vga_buffer.rs步骤2:新建lib.rs文件并输入pub mod interrupts;步骤3:新建原创 2020-10-14 21:31:01 · 2548 阅读 · 0 评论 -
操作系统原理实验(2):从打印开始,实现println宏
一、实验目的print()函数是学习几乎任何一种软件开发语言时最先学习使用的函数,同时该函数也是最基本和原始的程序调试手段,但该函数的实现却并不简单。本实验的目的在于理解计算机(显卡)字符显示的原理,理解操作系统与硬件的接口方法,并实现一个可打印字符的宏(非系统调用),用于后续的调试和开发。二、实验过程&错误内容(一):查找文献深入了解VGA的字符模式(VGATextMode),在实验报告中的合适部分进行记录和描述步骤1:在百度上查找VGA模式现象1:VGA的规格表如下:256KiB原创 2020-10-14 21:12:39 · 1774 阅读 · 0 评论 -
操作系统原理实验(1):实现最小内核
一、实验目的安全性实验包含两个实验项目(参见表4.3),其中1个为必修,1个为选修。自主存取控制实验为设计型实验项目,审计实验为验证型实验项目。二、实验过程&错误内容(一):安装工具链(Mac)步骤1:下载Rust,输入curl https://sh.rustup.rs -sSf | sh问题1-1:显示未安装curl解决方法1-1:输入sudo apt install curl安装curl现象1-1:停止在选择界面,有三个选项可以选择问题1-2:选择安装版本解决方法1-2:原创 2020-10-14 20:58:11 · 3191 阅读 · 1 评论