操作系统实验报告
姓名 学号 日期
实验室 设备编号
设计题目
一、设计内容
模拟中断事件的处理
二、设计目的
现代计算机系统的硬件部分都设有中断机构,它是实现多道程序设计的基础。中断机构能发现
中断事件,且当发现中断事件后迫使正在处理器上执行的进程暂时停止执行,而让操作系统的中断
处理程序占有处理器去处理出现的中断事件。对不同的中断事件,由于它们的性质不同,所以操作
系统应采用不同的处理。通过实习了解中断及中断处理程序的作用。本实习模拟“时钟中断事件”的
处理,对其它中断事件的模拟处理,可根据各中断事件的性质确定处理原则,制定算法,然后依照
本实习,自行设计。
三、设计过程
1、 数据结构设计
设定日历时钟结构体,用以存储不同定时闹钟时日历闹钟结束的值。
struct time
{
int year; //年
int month; //月
int day;//日
int hour;//时
int minite;//分
int s;//秒
int ms;//毫秒
}clock[N];
2、算法设计
模拟中断事件的处理,由两部分组成,一部分是模拟硬件产生时钟中断,另一部分模拟操作系
统的时钟中断处理程序。程序中,用从键盘读入信息来模拟中断寄存器的作用,用计数器加 1 来模
拟处理器执行了一条指令。每模拟一条指令执行后,从键盘读入信息且分析,当读入信息=0 时,表
示无中断事件发生,继续执行指令;当读入信息=1 时,表示发生了时钟中断事件,转时钟中断处理
程序。
计算机系统有一时钟,它按电源频率(50Hz)产生中断请求信号,即每隔 20 毫秒产生一次中
断请求信号,称时钟中断信号,时钟中断的间隔时间(20 毫秒)称时钟单位。
实验中,在键盘上键入“0”或“1”来模拟按电源频率产生的时钟中断信号。