计算机操作系统第一次作业+软件第一次作业

自我介绍

廖辉映 菜鸡 

操作系统作业记录一下思路   以面以后忘记

先看最终的实现效果

单道程序:

 

 

 

多道程序非抢占式:

 

 

 

 

 

 

 

 

项目结构

 

 

 实现思路:单道程序采用Drawer作为绘画器 Operation为调度程序 首先operation会依次给输入的程序在drawer添加一个类似于监听器的内部类,这个内部类用于监听CPUdevice和

IOdevice发出的绘画事件,我这里我设计成了多线程的方式。也可以不用线程。用线程是因为一开始没清楚,想完全模拟cpu执行.。这里我把每个程序要使用那些Componet看成一个Event事件,cpu是cpuEvent  io是ioEvent。因为是单道程序又有优先级  那么可以把他看成一个有序的链表 这里用递归处理很快。只是遇到不支持的事件要把他放到支持的事件里去处理 

 

 

具体的执行逻辑  就是依次像注册器发送注册事件 

 

 

事件的注册:这里取巧了 不可借鉴

 

总调度程序依次执行ABC程序 

 

 

这里我用的是个队列 而且输入的时候是ABC顺序天然有序  不需要去设计优先级 但是只是应付这个题目 不可取  

 

 

 多道程序设计的比较乱 没有整理好思路 想到再写 有点取巧 但是基本可以实现。

 

posted @ 2020-09-07 21:47  城西吴彦祖  阅读(168)  评论(1)    收藏  举报