操作系统(英语:operating system,缩写作 OS)是管理计算机硬件与软件资源的计算机程序,同时也是计算机系统的内核与基石。操作系统需要处理如管理与配置内存、决定系统资源供需的优先次序、控制输入设备与输出设备、操作网络与管理文件系统等基本事务。操作系统也提供一个让用户与系统交互的操作界面。(来源于百度)
2.现代计算机系统?现代操作系统多以多道程序设计技术。硬件作出两个支持:中断系统(重点)和通信技术
3.什么是中断系统?对异步事件的相应 响应同时保护cpu状态(主要为了重新启动) 自动转入中断处理程序
4.通道技术为了获得cpu最高与外设的并行能力,引入了通道结构。通道技术又被称为i/o处理机。
作用是:通道技术实现了i/o系统的独立性和各个部件的并行性。(可以理解为不同的cpu主存可以通过不同的通道,执行不同的通道指令,控制控制器执行不同操作)
通道是一种通过执行通道程序管理I/O操作的控制器,它使主机(CPU和内存)与I/O操作之间达到更高的并行程度。由于它的任务是管理实现输入/输出操作,提供一种传送通道,所以将这种部件称作“通道”。
CPU把数据传输功能下放给通道,这样,通道与CPU分时使用内存(资源),就可以实现CPU与外设的并行工作。
在采用通道方式的指令系统中:
- 除了供CPU编程使用的机器指令系统外,
- 还设置另外供通道专用的一组通道指令,
用通道指令编制通道程序,存入存储器。
- 当需要进行I/O操作时,CPU只需启动通道,然后可以继续执行自身程序
- 通道则执行通道程序,管理与实现I/O操作。
整个系统分为二级管理:
- 一级是CPU对通道的管理
- 二级是通道对设备控制的管理。
简单理解:通道就是可以通数据的CPU发出一条通道命令,然后由通道和外设交换数据,之后CPU就做其它的事情,通道和外设交换完数据后再向CPU汇报,CPU再处理
5.cpu和通道的关系cpu和通道的关系是主从关系。
当允许程序要求进行数据传输时,cpu向通道发送i/o指令,命令通道工作
6.什么是陷入由cpu内部事件引起的中断,叫做内中断或者陷入,通常往往是指令错误,运算过程中出现异常
7.多道程序设计实现的目的是什么?为了提高cpu与外部设备更高的并行能力。
8.多道程序设计的实现必须解决的问题?程序存储的内存保护和地址的重定向 处理机的管理与调度 资源管理与分配
9.多道程序的设计特点?宏观上是并行,因为它们像是在同时运行,分配时间片;
微观上来说是串行,因为在一台处理上,同一时刻只能处理同一条指令
就是将cpu利用率增加到最大,我们有很多调度算法(根据系统的资源分配策略所规定的资源分配算法)
调度算法:在操作系统中调度是指一种资源分配,因而调度算法是指:根据系统的资源分配策略所规定的资源分配算法。
对于不同的的系统和系统目标,通常采用不同的调度算法
例如,在批处理系统中,为了照顾为数众多的段作业,应采用短作业优先的调度算法;
又如在分时系统中,为了保证系统具有合理的响应时间,应当采用轮转法进行调度。
目前存在的多种调度算法中,有的算法适用于作业调度,有的算法适用于进程调度;但也有些调度算法既可以用于作业调度,也可以用于进程调度。
一、先来先服务和短作业(进程)优先调度算法 1. 先来先服务调度算法。先来先服务(FCFS)调度算法是一种最简单的调度算法,该算法既可用于e79fa5e98193e58685e5aeb931333365633837作业调度, 也可用于进程调度。FCFS算法比较有利于长作业(进程),而不利于短作业(进程)。由此可知,本算法适合于CPU繁忙型作业, 而不利于I/O繁忙型的作业(进程)。 2. 短作业(进程)优先调度算法。短作业(进程)优先调度算法(SJ/PF)是指对短作业或短进程优先调度的算法,该算法既可用于作业调度, 也可用于进程调度。但其对长作业不利;不能保证紧迫性作业(进程)被及时处理;作业的长短只是被估算出来的。二、高优先权优先调度算法 1. 优先权调度算法的类型。为了照顾紧迫性作业,使之进入系统后便获得优先处理,引入了最高优先权优先(FPF)调度算法。 此算法常被用在批处理系统中,作为作业调度算法,也作为多种操作系统中的进程调度,还可以用于实时系统中。当其用于作业调度, 将后备队列中若干个优先权最高的作业装入内存。当其用于进程调度时,把处理机分配给就绪队列中优先权最高的进程,此时, 又可以进一步把该算法分成以下两种: 1)非抢占式优先权算法 2)抢占式优先权调度算法(高性能计算机操作系统) 2. 优先权类型 。对于最高优先权优先调度算法,其核心在于:它是使用静态优先权还是动态优先权, 以及如何确定进程的优先权。 3. 高响应比优先调度算法 为了弥补短作业优先算法的不足,我们引入动态优先权,使作业的优先等级随着等待时间的增加而以速率a提高。 该优先权变化规律可描述为:优先权=(等待时间+要求服务时间)/要求服务时间;即 =(响应时间)/要求服务时间三、基于时间片的轮转调度算法 1. 时间片轮转法。时间片轮转法一般用于进程调度,每次调度,把CPU分配队首进程,并令其执行一个时间片。 当执行的时间片用完时,由一个记时器发出一个时钟中断请求,该进程被停止,并被送往就绪队列末尾;依次循环。 2. 多级反馈队列调度算法 多级反馈队列调度算法多级反馈队列调度算法,不必事先知道各种进程所需要执行的时间,它是目前被公认的一种较好的进程调度算法。 其实施过程如下: 1) 设置多个就绪队列,并为各个队列赋予不同的优先级。在优先权越高的队列中, 为每个进程所规定的执行时间片就越小。 2) 当一个新进程进入内存后,首先放入第一队列的末尾,按FCFS原则排队等候调度。 如果他能在一个时间片中完成,便可撤离;如果未完成,就转入第二队列的末尾,在同样等待调度…… 如此下去,当一个长作业(进程)从第一队列依次将到第n队列(最后队列)后,便按第n队列时间片轮转运行。 3) 仅当第一队列空闲时,调度程序才调度第二队列中的进程运行;仅当第1到第(i-1)队列空时, 才会调度第i队列中的进程运行,并执行相应的时间片轮转。 4) 如果处理机正在处理第i队列中某进程,又有新进程进入优先权较高的队列, 则此新队列抢占正在运行的处理机,并把正在运行的进程放在第i队列的队尾。