处理机调度的模拟实现,用先来先服务、短作业优先、最短剩余时间优先、时间片轮转、基于静态优先级的调度,基于高响应比优先的动态优先级调度处理机调度算法的实现,能够模拟进程调度情况,并输出进程的完成时间,计算周转时间、带权周转时间,平均周转时间和平均带权周转时间。要求使用链表,进程个数由用户提供,按照进程的实际个数生成PCB。程序能够让用户选择使用哪种调度算法,进程基本信息要既可从文件读入,也可手动输入。程序还要考虑用户界面的友好性和使用方便性。
2020-01-03 11:40:34 15KB C语言 操作系统 处理机调度
1
这是北化操作系统课程上机实验课代码,包括linux的进程创建和进程间通讯,银行家算法,还有文件系统,分页模拟等等。但需要自己写readMe文件,本压缩包只有源代码。
1
大连理工大学 软件学院 操作系统 上机答案 上机资料+代码
2019-12-21 22:12:43 7.15MB 操作系统
1
$$完整代码+22页实验报告$$。#大车埋土#进程调度算法包括先来先服务调度算法 FCFS、最短作业时间优先 SJF(抢占式 和非抢占式)、最高响应比调度 HRN 算法 4 种。(每个人必须做非抢占式 SJF, 然后在后面的三种中任选一种,即每个人必须做 2 种调度算法的模拟。) [2]. 衡量算法性能的参数 计算进程的平均周转时间和平均带权周转时间。 3. 实验内容 (1)编程实现本实验的程序,要求: [1]. 建立进程的进程控制块,进程控制块至少包括: a) 进程名称; b) 进程需要执行时间; c) 进入就绪队列时间; d) 进程执行开始时间 e) 进程执行结束时间 [2]. 编程实现调度算法。 [3]. 进程及相关信息的输入。这些信息可以直接从键盘上输入,也可以从文件读 取。 [4]. 时间片与时间流逝的模拟。本实验需要对算法的执行计时,程序应该提供计 算时间的方法。一种最简单的方法是使用键盘,比如每敲一次空格代表一个 2 时间片的流逝。另一种方法是使用系统时钟。 [5]. 一组进程序列执行完毕,打印出结果信息。程序需要计算出每个进程的开始 执行时间、结束时间、周转时间和带权周转时间,并为整个进程序列计算平 均周转时间和平均带权周转时间。程序将计算结果按一定的格式显示在计算 机屏幕上或输出到文件中。打印出进程调度顺序图。 [6]. 实现数据在磁盘文件上的存取功能。 (2)对下列就绪进程序列分别使用上面的几种算法进行调度,计算每种算 法下的平均周转时间和平均带权周转时间。 进程号 到达时间 要求执行时间 0 0 1 1 1 35 2 2 10 3 3 5 4 6 9 5 7 21 6 9 35 7 11 23 8 12 42 9 13 1 10 14 7 11 20 5 12 23 3 13 24 22 14 25 31 15 26 1
2019-12-21 21:43:24 143KB cc'c'c
1
操作系统实验报告三份,基于天津理工大学,实验1:处理机调度.;实验2:存储器的分配与回收;磁盘调度算法的实现
1
1. 目的: 调试、修改、运行模拟程序,通过形象化的状态显示,使学生理解进程的概念,了解同步和通信的过程,掌握进程通信和同步的机制,特别是利用缓冲区进行同步和通信的过程。通过补充新功能,使学生能灵活运用相关知识,培养创新能力。 2. 内容及要求: 1) 调试、运行模拟程序。 2) 发现并修改程序中不完善的地方。 3) 修改程序,使用随机数控制创建生产者和消费者的过程。 4) 在原来程序的基础上,加入缓冲区的写互斥控制功能,模拟多个进程存取一个公共缓冲区,当有进程正在写缓冲区时,其他要访问该缓冲区的进程必须等待,当有进程正在读取缓冲区时,其他要求读取的进程可以访问,而要求写的进程应该等待。 5) 完成1)、2)、3)功能的,得基本分,完成4)功能的加2分,有其它功能改进的再加2分 3. 程序说明:   本程序是模拟两个进程,生产者(producer)和消费者(Consumer)工作。生产者每次产生一个数据,送入缓冲区中。消费者每次从缓冲区中取走一个数据。缓冲区可以容纳8个数据。因为缓冲区是有限的,因此当其满了时生产者进程应该等待,而空时,消费者进程应该等待;当生产者向缓冲区放入了一个数据,应唤醒正在等待的消费者进程,同样,当消费者取走一个数据后,应唤醒正在等待的生产者进程。就是生产者和消费者之间的同步。   每次写入和读出数据时,都将读和写指针加一。当读写指针同样时,又一起退回起点。当写指针指向最后时,生产者就等待。当读指针为零时,再次要读取的消费者也应该等待。 为简单起见,每次产生的数据为0-99的整数,从0开始,顺序递增。两个进程的调度是通过运行者使用键盘来实现的。 4. 程序使用的数据结构 进程控制块:包括进程名,进程状态和执行次数。 缓冲区:一个整数数组。 缓冲区说明块:包括类型,读指针,写指针,读等待指针和写等待指针。 5. 程序使用说明   启动程序后,如果使用'p'键则运行一次生产者进程,使用'c'键则运行一次消费者进程。通过屏幕可以观察到两个进程的状态和缓冲区变化的情况。
2019-12-21 20:28:08 306KB 操作系统 上机 实验报告 进程同步
1
一、实验题目:页面置换算法(请求分页) 二、实验目的: 进一步理解父子进程之间的关系。 1) 理解内存页面调度的机理。 2) 掌握页面置换算法的实现方法。 3) 通过实验比较不同调度算法的优劣。 4) 培养综合运用所学知识的能力。 页面置换算法是虚拟存储管理实现的关键,通过本次试验理解内存页面调度的机制,在模拟实现FIFO、LRU等经典页面置换算法的基础上,比较各种置换算法的效率及优缺点,从而了解虚拟存储实现的过程。将不同的置换算法放在不同的子进程中加以模拟,培养综合运用所学知识的能力。 三、实验内容及要求 这是一个综合型实验,要求在掌握父子进程并发执行机制和内存页面置换算法的基础上,能综合运用这两方面的知识,自行编制程序。 程序涉及一个父进程和两个子进程。父进程使用rand()函数随机产生若干随机数,经过处理后,存于一数组Acess_Series[]中,作为内存页面访问的序列。两个子进程根据这个访问序列,分别采用FIFO和LRU两种不同的页面置换算法对内存页面进行调度。要求: 1) 每个子进程应能反映出页面置换的过程,并统计页面置换算法的命中或缺页情况。 设缺页的次数为diseffect。总的页面访问次数为total_instruction。 缺页率 = disaffect/total_instruction 命中率 = 1- disaffect/total_instruction 2)将为进程分配的内存页面数mframe 作为程序的参数,通过多次运行程序,说明FIFO算法存在的Belady现象。
2019-12-21 20:28:08 3.68MB 操作系统 上机 实验报告 页面置换
1
自考操作系统上机考试题...........................
2019-12-21 20:06:20 22KB 自考 上机
1
自考历年上级试题内容详细含有注释,可以自己看看
2019-12-21 19:56:41 692KB 自考 操作 系统
1
同济大学操作系统作业之一:电梯调度模拟 在vs2005下用mfc完成。。。。。。。。。。。。
2019-12-21 19:55:09 31KB 操作系统 处理机 电梯调度模拟
1