计算机与网络的基础知识
进程:程序的一次执行。PCB
程序与进程的区别:程序是静态的指令序列 进程是为执行程序线程而保留的资源集
进程的转换与控制:
- 进程的基本状态:
三态模型: 五态模型:
五态模型比三态模型引进了新建态与终止态,具有挂起状态的进程状态及其转换
对进程的控制一般由操作系统完成。
进程互斥以及P,V操作:
- 进程间的同步:异步环境 按一定的顺序
- 互斥:共享资源 争端
- 临界资源:一次仅能供一个进程调用的资源
- 临界区管理:临界区指操作临界资源的代码。原则:有空则进,无空则等,有限等待,让权等待
- 信号量限制(荷兰学者:Dijkstra)
- 整型信号量与PV操作:
信号量:一个整型变量,根据控制对象的不同赋不同的值
- 公用信号量:实现进程的互斥,初始值=1或资源数目
- 私用信号量:实现进程同步,初始值=0或某个正整数
信号量S的物理意义:S>=0表示某资源的的可用数,S<0,其绝对值表示阻塞队列中等待该资源的进程数
Pv操作时实现进程同步于互斥的常用方法。PV操作时低级通信的原语,P表示申请一个资源,v表示释放一个资源。
P的操作定义:
V操作:
- 利用pv操作实现进程互斥:
令信号量mutex的初始值为1。执行代码段如下:
- 利用PV操作实现进程同步:
进程的同步是由于进程之间的相互合作引起的相互制约问题。要实现进程之间的一个同步可用一个信号量与消息联系起来。当信号量为零时表示希望的消息未产生。当信号量为非零的时候表示希望的效益已经存在。假定用信号量S表示消息,进程可以采用P操作来测试消息是否到达,调用v操作来通知消息已经准备好。
例子:生产者与消费者
其中信号量Bufempty表示缓冲区的空单元数。Buffull表示缓冲区非空单元数。他们的初值分别为1与0。
进程管理域通信:
- 进程通信:
通信值进程之间的信息交互。分为:控制信息交互,数据信息交互。控制信息的交互称为低级信息通信,进程的同步与互斥是通过信号量来实现的。数据通信称为高级通信,主要是通过共享储存系统、消息传递系统和管道通信实现。高级通信分为直接通信与间接通信。
- 管程
Hansen与Hoare提出另一种同步机制:管程。
管程是由一些共享数据、一组能为并发进程执行的作用在共享数据上的操作的集合、初始代码以及存取权限组成。(共享数据以及在其上操作的一组过程构成了管程)。进程可以在任何需要的时候调用管程,且在任意一个时刻只能有一个进程进入管程,其余的只能列队等待。管程提供了一种可以允许多进程安全有效地共享抽象数据类型的机制。
每一个管程都有一个名字,如下:
进程调度与死锁:
- 进程调度:处理器调度。主要功能是确定处理器在什么时候分配给哪一个进程。(一般操作系统中作业 的提交需要经历高中低三级调度。)
- 调度方式与算法:
- 调度方式:当有更高优先级的进程到来时如何分配cpu。调度方式分为可剥夺与不可剥夺两种。
- 调度算法:常用的为:先来先服务、时间片轮换、优先级调度、多级反馈调度
- 死锁:两个以上的进程都因请求对方已经占有的资源而无限期的等待下去。
- 死锁产生的原因及其条件:
原因:资源竞争及进程推进顺序非法
条件:互斥、请求保持、不可剥夺、环路
策略:鸵鸟策略(不理睬策略)
预防策略(破坏死锁的四个必要条件之一)
避免策略(精心分配资源,动态回避死锁)
检测与解除死锁(一旦发生死锁,系统能检测出并解除)
线程:
进程中的一个实体,被系统独立调用与分配的基本单位。在引入线程的操作系统中,通常一个进程都有若干个线程。线程只拥有一些运行中必不可少的资源,他与同属一个进程的的若干个线程共享进程所有的全部资源。线程具有许多传统继承所具有的特性,称为轻型进程,传统的进程则称为重型进程。
存储管理
存储器是计算机的关键性资源,是存放各种资源的重要性场所。存储器管理的主要任务是如何提高主存的利用率、扩充主存以及对主存信息实现有效保护。存储管理的对象是主存(内存)
存储管理的概念:
- 逻辑地址:用户程序经编译后,每个目标以0为基址进行的顺序编址。又称相对地址。
- 物理地址:主存中个存储单元的地址。又称绝对地址
- 存储空间:
- 地址空间:逻辑地址的集合。
- 存储空间:物理地址的集合
地址重定位:
逻辑地址转换成物理地址的过程。
- 静态重定位:编译时定位,也可称为装入内存时定位
- 动态重定位:运行时定位
存储管理的功能:主存储器的分配与回收,提高主存储器的利用率、存储保护、主存扩充
存储管理方式:分区存储、分页存储、分段存储、段页式存储、虚拟存储
存储保护:在多道程序系统中,内存中既有操作系统,又有许多用户程序。为使系统正常运行,避免内存中各程序相互干扰,必须对内存中的程序和数据进行保护
- 防止地址越界
对进程所产生的地址必须加以检查,发生越界时产生中断,由操作系统进行相应处理 - 防止操作越权
对属于自己区域的信息,可读可写;
对公共区域中允许共享的信息或获得授权可使用的信息,可读而不可修改;
对未获授权使用的信息,不可读、不可写。 - 存储保护一般以硬件保护机制为主,软件为辅,因用软件实现系统开销大,速度成倍降低。当发生越界或非法操作时,硬件产生中断,进入操作系统处理
设备管理:指对计算机系统中所有输入、输出设备的管理。
(l)方便用户使用外部设备,控制设备工作完成用户的输入输出请求。
(3)提高外围设备和系统的可靠性和安全性,以使系统能正常地工作。
设备管理应具有如下功能:设备的分配和回收、外围设备的启动、对磁盘的驱动调度、外部设备中断处理、虚拟设备的实现。
用户申请设备时通过设备类别申请,系统根据请求及当前设备分配情况在相应类的设备中选择一个空闲设备,并将其分配给申请者,申请与实际设备的无关性称为设备独立性。系统设立"设备类表"和"设备表"记录系统设备的分配情况。
3.扫描(电梯)算法:总是从磁臂当前位置沿磁臂的移动方向选择距当前位置最近的请求,当前进方向无请求时才改变移动方向。
当磁头到达某柱面时,该柱面上可能有多个请求,对它们的调度通常是按这些请求旋转通过磁头的顺序进行调度。
(2)中央处理机发出"启动I/O"指令,通道逐条执行通道程序中的指令实现I/O。
(3)I/O完成后,通道利用中断机构向中央处理机报告执行情况。
中断处理程序负责对通道发出的中断进行处理,对输入输出是否正常结束或出现错误等进行相应的处理。
通道状态字(CSW)中记录通道、控制器、设备的状态,当中央处理机接到通道发出的中断后,利用通道状态字判断本次输入输出是否正常。
虚拟设备:独占型设备是不利于提高系统效率的,可采用的措施有两种:脱机外围设备操作和联机同时外围设备操作。
文件控制块与文件目录:FCB文件存在的唯一标识。文件目录是文件控制块的有序集合。
作业调度是完成从后备状态到执行状态的转变。常用的调度方法有:先来先服务、响应比高优先、优先级调度、均衡调度。
网络操作系统(NOS):使网络中各个计算机能方便而有效地共享网络资源,为用户提供各种服务的软件以及有关规则的集合。