2. 处理机管理
3. 设备管理
4. 文件管理
5. 用户接口
是管理和控制计算机系统中各种硬件和软件资源、合理地组织计算机工作流程的系统软件,是用户与计算机之间的接口。
在内存中同时存放多道程序,在管理程序的控制下交替执行,这些作业共享CPU和系统其他资源。
![这里写图片描述](https://img-blog.csdn.net/20180611133851521)
把处理机运行时间分成时间片,按时间片轮转的方式,把处理机分配给各联机作业使用。允许多个用户与计算机直接交互。
系统能及时(或即时)响应外部事件的请求,在规定的时间内完成对该事件的处理,并控制所有实时任务协调一致地运行。提供即时响应和高可靠性,响应时间快,可以在毫秒级甚至微秒级立即处理。
并发
并发是指两个或多个事件在同一时间间隔内发生。
微观上还是程序在分时地交替执行。
共享
共享是指系统中的资源可供内存中多个并发执行的进程共同使用。
互斥共享方式
如打印机、磁带机。在一段时间内只允许一个进程访问该资源。
同时访问方式
如磁盘设备
虚拟
虚拟是指把一个物理上的实体变为若干个逻辑上的对应物。比如说虚拟处理器,虚拟内存,虚拟外部设备
异步
在多道程序环境下,允许多个程序并发执行,但由于资源有限,进程的执行不是一贯到底,而是走走停停,以不可预知的速度向前推进,这就是进程的异步性。
操作系统最基本的特征是并发和共享,两者互为存在条件。
进程是指一个具有独立功能的程序对某个数据集在处理机上的执行过程和分配资源的基本单位。
引入进程的概念,以便更好地描述和控制程序的并发执行。
程序封闭性是指进程执行的结果只取决于进程本身,不会受外界影响。
进程通常由程序、数据集合和进程控制块PCB三部分组成。程序和它操作的数据是进程存在的静态实体,而专门的数据结构PCB用来描述进程当前的状态、本身的特性等。
当进程被中断时,操作系统会把程序计数器和处理器寄存器(上下文数据)保存在PCB中的对应位置,进程状态已被改变为其他的值,例如阻塞态或就绪态。
PCB是进程存在的唯一标志。故操作系统是根据进程控制块来对并发执行的进程进行控制和管理。
PCB内含的数据结构主要有:进程标志信息、进程控制信息、进程资源信息、CPU现场信息。
每个进程包含独立的地址空间,进程各自的地址空间是私有的,只有执行自己地址空间中的程序,且只能访问自己地址空间中的数据,相互访问会导致指针的越界错误。
对进程的管理和控制功能是通过执行各种原语实现的,如创建原语。
1、给新进程分配一个唯一的进程标识符
2、给进程分配空间
3、初始化进程控制块
4、设置正确的连接
5、创建或扩充其他数据结构
引入线程,是为了减小程序在并发执行时所付出的时空开销,提高操作系统的并发性能。
线程最直接的理解就是“轻量级进程”,它是一个基本的CPU执行单元,也是程序执行流的最小单元。
线程共享进程拥有的全部资源。
线程不拥有系统资源,但是它可以访问进程所拥有的系统资源。
线程没有自己独立的地址空间,他共享他所属的进程的空间。
先来先服务调度算法(FCFS)
短作业优先(SJF)调度算法
从后备队列中选择一个或若干个估计运行时间最短的作业,将他们调入内存运行。
短进程优先(SPF)调度算法
从就绪队列中选择一个估计运行时间最短的进程,将处理机分配给它,使之立即执行。
优先级调度算法
根据能否抢占进程,可将调度算法分为:
根据进程创建后其优先级是否可以改变,分为:
高响应比优先调度算法
时间片轮转调度算法
多级反馈队列调度算法
我们把一次仅允许一个进程使用的资源称为临界资源。
同步亦称直接制约关系,他是指为完成某种任务而建立的两个或多个进程,这些进程因为需要在某些位置上协调他们的工作次序而等待、传递信息所产生的制约关系。
中断屏蔽方法
当一个进程正在使用处理机执行它的临界区代码时,要防止其他进程再进入其临界区访问的最简单方法是禁止一切中断发生。因为CPU只在中断发生时进行进程切换,这样屏蔽中断就能保证当前运行进程将临界区代码顺利地执行完。
硬件指令方法
信号量只能被两个标准的原语wait(S)和signal(S)来访问,也可以记为“P操作“和”V操作“。
原语是指完成某种功能且不被分割不被中断执行的操作序列,通常可由硬件来实现完成不被分割执行特性的功能。
管程是由一组数据以及定义在这组数据之上的对这组数据的操作组成的软件模块,这组操作能初始化并改变管程中的数据和同步进程。
所谓死锁是指多个进程因竞争资源而造成的一种僵局(互相等待),若无外力作用,这些进程都将无法向前推进。
设置某些限制条件,破坏产生死锁的四个必要条件中的一个或几个,以防止发生死锁。
在资源的动态分配过程中,用某种方法防止系统进入不安全状态,从而避免死锁。
银行家算法
通过系统的检测机构及时地检测出死锁的发生,然后采取某种措施解除死锁。
可以有大小相等的分区和大小不等的分区
会有内部碎片
会有外部碎片,可以通过紧凑技术来解决(就是操作系统不时地对进程进行移动和整理,需要动态重定位寄存器支持。
局部性原理
如果程序中的某条指令一旦执行,不久以后该指令可能再次执行;如果某数据被访问过,不久以后该数据可能再次被访问。
所以时间局部性是通过将进来使用的指令和数据保存到高速缓存存储器中。
一旦程序访问了某个存储单元,在不久之后,其附近的存储单元也将被访问。
所以空间局部性通常是使用较大的高速缓存,并将预取机制集成到高速缓存控制逻辑中实现。
文件是以计算机硬盘为载体存储在计算机上的信息集合,文件可以是文本文档、图片、程序等。
在用户进行的输入、输出中,是以文件为基本单位。
无结构文件是最简单的文件组织形式。无结构文件将数据按顺序组织成记录并积累保存,他是有序相关信息项的集合,以字节为单位。
有结构文件(记录式文件)
文件中的记录一个接一个地顺序排列,记录通常是定长的,可以顺序存储或以链表形式存储。
1. 串结构
记录之间的顺序与关键字无关,通常按照存入时间的先后排列。
2. 顺序结构
指文件中的所有记录按关键字顺序排列。
索引文件
索引顺序文件是顺序和索引两种组织形式的结合。索引顺序文件将顺序文件中的所有记录分为若干组,为顺序文件建立一张索引表,在索引表中为每组中的第一个记录建立一个索引项。
直接文件或散列文件
给定记录的键值或通过Hash函数转换的键值直接决定记录的物理地址。
文件控制块。FCB用来存放控制文件所需要的各种信息的数据结构。FCB的有序集合称为文件目录,一个FCB就是一个文件目录项。
FCB主要包含以下信息:
索引节点
文件系统类型:FAT32、NTFS、ext2、ext3、ext4
程序直接控制方式
中断驱动方式
允许I/O设备主动打断CPU的允许并请求服务,从而“解放”CPU,使得其向I/O控制器发送读命令后可以继续做其他有用的工作。
DMA方式
DMA方式的基本思想是在I/O设备和内存之间开辟直接的数据交换通路,彻底“解放”CPU。DMA方式的特点:
通道控制方式