操作系统引论2

1.3  操作系统的基本特征

共同的基本特征:

     并发、共享、虚拟、异步

1、并发

并行性:两个或多个事件在同一时刻发生
并发性:两个或多个事件在同一时段发生

理解CPU并发:
单处理器系统中,多道程序在宏观上看似并行,实际在微观上是多道程序占用cpu交替执行的,并不是真正的“并行”。多处理器系统才有CPU并行。
单处理器系统中的并行:
在硬件技术支持的条件下,CPU 和 I/O操作能实现并行,这也是多道程序设计能够提高效率的原因之一。

并发和进程是现代OS最重要的基本概念 

2、共享

系统中的资源可供内存中多个并发执行的进程(线程)共同使用。主要有两种共享方式:
互斥共享方式:
对临界资源(如打印机)采用该方式,资源分配给某进程后未释放前,不能被其他进程所用。
临界资源(独占资源):一段时间内只允许一个进程访问的资源。
同时访问方式:
对允许“同时”访问的资源(如磁盘)采用该方式,但“同时”仍然是“宏观并行微观串行”的,不是真正的同时 

并发和共享互为存在的条件
多个程序并发才导致了资源需要共享
资源共享若没有协调好,必然影响程序的并发执行

3、虚拟

通过某种技术把一个物理实体变为若干个逻辑对应物(用户感觉上的东西),两种实现方式:
时分复用
一个物品被多人分时使用,在一段时间内就表现为每个人都有一个该物品可用,1虚拟为n。
空分复用
一个物品划分为多个部分,多个人每人都有一部分可用,主观上看也是1虚拟成n。 

虚拟磁盘
时分复用:多个程序可“同时”读写
空分复用:1个硬盘对应成4个逻辑区
虚拟内存
时分复用:一块内存空间分时的分配给多个进程使用,逻辑上扩大内存空间。
空分复用:充分利用内存空闲空间,提高内存利用率
虚拟是操作系统管理系统资源的重要手段,可提高资源利用率。用于实现虚拟的技术,就称为虚拟技术

4、异步性

指进程的执行顺序和执行时间的不确定性

1.4操作系统的主要功能 

1、处理机管理功能

1)进程控制:
为作业创建进程、撤销已结束的进程,控制进程在运行过程中的状态转换。以及线程的创建撤销等。
(可理解为对单个进程基本信息进行管理)
2)进程同步:
为多个进程运行进行协调(包括互斥和同步)
3)进程通信:
用来实现在相互合作进程间的信息交换;(直接通信和网络通信)
4)调度:
作业调度(入内存)和进程调度(分配CPU)

2、存储器管理功能

1)内存分配:为每道程序分配内存空间(包产到户)具体分配涉及许多细节:
分配方式:动态、静态
分配机制需要的数据结构、分配算法、回收内存功能
2)内存保护:确保每道用户程序都只在自己的内存空间中运行
需要一个硬件——界限寄存器,存放正在执行进程的内存上下界,每条指令的访问地址都要进行越界检查,一般用硬件实现检查
3)地址映射(变换):进程的逻辑地址到内存物理地址的映射。
程序编译形成的目标程序地址都是从0开始,是逻辑地址
真正调入内存某个空间存放的地址是物理地址
4)内存扩充:用虚拟存储技术解决内存容量不足的问题;
请求调入功能
页面置换功能

3、设备管理功能

1)缓冲管理:匹配CPU和外设的速度,提高两者的利用率和并行操作程度;
2)设备分配:按某种设备分配策略,为之分配所需的设备;
应设置设备控制表等数据结构记录设备及其控制器的标识符和状态;不同的设备,分配方式不同
3)设备处理:设备处理程序即驱动程序,及时X响应设备控制器请求,实现CPU和设备控制器之间的通信。

4、文件管理功能

1)存储空间的管理:分配外存空间,提高外存的利用率,提高文件系统的运行速度;
需要相应的数据结构,记录文件存储空间的使用情况;要有对存储空间分配和回收的功能
2)目录管理:为文件建立目录项,并有效组织,实现方便的按名存取;提供快速的目录查询手段,提高文件检索速度;还需实现文件共享。
3)文件的读写管理和保护:读写操作与有效的存取控制功能。

5、用户接口

1)命令接口
用户可通过键盘终端发出命令以控制作业的运行。
联机用户接口:由一组磁盘操作命令和命令解释程序组成。
脱机用户接口:由一组作业控制语言组成,如批处理文件。
2)程序接口
用户程序在执行中访问系统资源而设置,由一组系统调用组成。
早期汇编语言才能使用,后高级语言及C语言中都给出了系统调用对应的库函数。
3)图形接口

      

1.4操作系统的主要功能 

1、无结构OS

提高设计的正确性、可理解性和可维护性;
增强了OS的可适应性,可选用相应功能模块,也可进行增减和修补以满足新需求;
加速了开发过程;

2、模块化OS结构

3、分层式OS结构

优点:
易保证系统正确性
易扩充和维护
缺点:
分层单向依赖,执行一个功能,总要自下而上地穿越多层,增加系统通信开销,降低了效率。 

4、微内核OS结构

1)足够小的内核,微内核并非一个完整的OS。与硬件紧密相关,实现较基本功能,复杂客户和服务器通信。
2)基于C/S模式
3)应用”机制与策略分离“原理机制——实现某一功能的具体执行机构,位于基层;策略——借助某些参数和算法实现功能优化或达到不同功能目标,位于系统高层。
4)采用面向对象技术

猜你喜欢

转载自www.cnblogs.com/Kirino1/p/9704212.html