标签:font 效率 传统 索引 本质 互斥 存在 环境 进程同步
正是系统中的程序能并发执行这一特征,才使得OS能有效地提高系统中的资源利用率,增加系统的吞吐量。
若对内存中的多个程序都分别建立一个进程,它们就可以并发执行,这样便能极大地提高系统资源的利用率,增加系统的吞吐量。
------在宏观上既限定了时间(进程在内存期间),也限定了地点(内存)。
实现资源共享的2种方式 具体说明:
1)互斥共享方式:系统中的某些资源:如打印机、磁带机等,虽然可以提供给多个进程(线程)使用,但是应规定在一段时间内,只允许一个进程访问该资源。
-------- “临界资源”:一段时间内只允许一个进程访问的资源
2)同时访问方式:系统中还有另外一些资源,允许在一段时间内由多个进程“同时”对它们进行访问。
-------- 这里的“同时”也就是前面讲的在微观下交替进行的。典型的例子:磁盘设备!
在OS中也是利用时分复用和空分复用技术来实现“虚拟”的。
注:时分复用 :能够提高资源利用率的根本原因:它利用某设备为一用户服务的空闲时间,又转去为其他用户服务,使设备得到最充分的利用。
空分复用 :指的是将一个频率范围比较宽的信道 划分成 多个频率较窄的信道(称为频带)。
注意:举个例子:一个100MB 的应用程序之所以可以运行在 30MB 的内存空间,实质上就是 每次只把用户程序的一部分调入内存中运行,运行完 成后将该部分换出,再换入另一部分到 内存中运行,通过这样的置换功能,便实现了用户程序的 各个部分分时地进入内存运行。
1、处理机管理功能:
传统的多道程序系统中,处理机的分配和运行 都是以 进程 为基本单位的。
1)进程控制:在设置有线程的OS中,进程控制还应包括为一个 进程 创建若干个线程,以提高系统的并发性。
2)进程同步:其主要任务是 为多个进程(含线程)的运行进行协调。协调方式:进程互斥方式和进程同步方式。
3)进程通信:进程通信的任务是 实现相互合作进程之间的信息交换。
4)调度:包括 作业调度和 进程调度。
2、存储器管理功能:
主要任务是:为多道程序的运行提供良好的环境,提高存储器的利用率,方便用户使用,并能从逻辑上扩充内存。
具有 内存分配和回收、内存保护、地址映射和内存扩充等功能。
3、设备管理功能:
具有 缓冲管理、设备分配和设备处理以及虚拟设备等功能。
4、文件管理功能:
对用户文件和系统文件进行管理以方便用户使用,并保证文件的安全性。
应当具有 对文件存储空间的管理、目录管理、文件的读/写管理以及文件的共享与保护等 功能。
补充知识:
“机制与策略分离”原理:
机制:指实现某一功能的具体执行机构;
策略:在机制的基础上借助于某些参数和算法来实现该功能的与优化,或达到不同的功能目标。
① 操作系统的5大管理功能:
1)设备管理:主要负责内核和外围设备的数据交互,实质是对硬件设备的管理,包括输入输出设备的分配、初始化、维护和回收等等。
2)作业管理:负责人机交互、图形界面或系统任务的管理。
3)文件管理:涉及文件的逻辑组织和物理组织、目录结构和管理等等。
从操作系统的角度来看,文件系统是系统对文件存储器的存储空间进行分配、维护、回收,同时负责文件的索引、共享和权限保护。
从用户的角度来说,文件系统是按照文件目录和文件名来进行存取的。
4)进程管理:说明一个进程存在的唯一标志是PCB(进程控制块),负责维护进程的信息和状态。进程管理的实质是系统采取某些进程调度算法来是处理合理的分配给每个任务使用。
5)存储管理:数据的存储方式和组织结构。
② 操作系统的结构:
1)单结构:不同的功能归类为不同的功能块,每个功能块相对独立,它们通过一定的方式进行联系,不同的功能块可以相互调用它们提供的服务。这样,整个操作系统就像是一个巨大的单一体,运行在系统的内核态下,为用户提供服务。
由于单结构系统的功能块之间结构复杂,修改某一功能块将导致其他功能块的修改,从而导致操作系统设计开发的困难。
例:MS-DOS操作系统。
2)分层结构:将操作系统分成若干层,低层次的功能为其上一个层次的功能提供服务,而高层次的层尤为更高一个层次的功能提供服务。
操作系统的所有功能都在内核态下运行,而从用户态转化为内核态需要一定的时间成本,这样造成了操作系统效率的嫡系。另外,内核态运行的程序可以访问所有的系统资源,随着操作系统越来越大,设计可靠和安全的操作系统将变得异常困难。
3)微内核:目标是建立基于消息传送机制的最小内核,以便在此基础上建造对其他操作系统的模拟层来模拟其他操作系统的特性。
微内核的有优点是大大提高了操作系统的兼容性,使得基于微内核的操作系统能够迷你其他操作系统的特性,从而支持许多运行于其他操作系统上的应用程序。
微内核的另一优点是提高了系统的扩充性。微内核设计的一个目标就是内核只要提供对操作系统绝对必要的功能,而把其他属于传统操作系统内核部分功能留给用户态进程实现。
例:Unix操作系统。
4)模块化方法:使用面向对象技术创建模块化内核。
采用模块化结构的操作系统由一些不同功能的结构模块集合组成,每一个模块实现一个特定的功能,如调度、文件系统、设备驱动等等,并且这些模块可以根据需要自动进行加载和卸载。本质上,一个模块就是内核在运行时可以链接或者断开链接的一个对象文件。
例:Linux操作系统。
标签:font 效率 传统 索引 本质 互斥 存在 环境 进程同步
原文地址:https://www.cnblogs.com/JesseP/p/11625414.html