zl程序教程

您现在的位置是:首页 >  系统

当前栏目

第一章 操作系统引论

操作系统 第一章
2023-09-27 14:21:03 时间

学习目的
①学习操作系统的发展过程
②建立对于操作系统基本的框架

1.1 &1.2操作系统发展和作用

(1)目标
平衡用户的使用和计算机的高效运行,连接计算机硬件和用户的桥梁。
(2)作用
提供更便利的接口;
管理系统资源
(3)发展方向
提高资源利用率;(一个接一个任务的处理)
提高系统的使用便利性。(操作越简单越好)
(4)发展路径
第一阶段:未配置操作系统的计算机系统
①人工操作
不足:用户独占全机(人机矛盾)、CPU等待人工操作,CPU速度迅速提高,但是I/O设备速度提高缓慢(CPU与I/O设备之间的矛盾);
②脱机I/O系统
将事先装有用户程序和数据
的纸带装入纸带输入机,在外围机的控制下,把纸带上的程序和数据输入磁带。
第二阶段 批处理
①单道批处理
监督程序依次将作业任务装入内存。
缺点:每个内存中仅有一道程序,必须在该程序I/O完成后才能继续运行,对于中小型程序运行,这样仍然是低效的。
②多道批处理
作业调度程序按照一定的算法从后备队列中选择若干个作业调入内存,
eg,在运行程序A时,利用其因I/O操作而暂停执行的CPU空档是时间再调用另外一个程序。
是针对单道批处理系统的改进。
缺点:这样的调度嵌套,平均任务周期长,用户修改调试程序不方便
第三阶段 优化交互
需求:交互(修改程序)、共享主机
①分时系统
系统能够接收用户从终端输入的命令,处理后将结果返回给用户。
②实时系统
及时响应外部世界的请求,在规定时间内完成对该事件的处理。
第四阶段
①微机操作系统(个人计算机的前身)
按字长分:一次能处理的二进制位数
按运行方式:任务数、用户数
②嵌入式操作系统
完成某种特定功能设计的系统,精简可配置。
③网络操作系统
用于计算机网络环境下对网络资源进行管理和控制,实现数据通信和对网络资源的共享
划重点!!!
eg,UNIX、Linux、Windows
特点:运行于各个硬件平台,为网络中共享资源提供一致性的接口,对网络中的资源进行统一管理。
④分布式操作系统
基于软件实现的一种多处理机系统,是多个处理机通过通信线路互联而构成的松散耦合系统,系统的处理和控制功能分布在各个处理机上。

1.3 操作系统的基本特性

OS下的资源工薪,限制时间(进程在内存中),限定地点(内存)
(1)并发
①并行vs并发
并行:多个事件同一时刻发生;
并发:两个或多个事件同一时间间隔内发生;
②进程
进程:系统中能独立运行并能作为资源分配对象的基本单位,由一组机器指令、数据和堆栈等组成。
没有引入进程属于同一个应用程序和I/O程序只能顺序执行,引入进程后可以并发执行。
(2)共享
资源共享的两种方式
①互斥共享
临界资源:一段时间内只允许一个进程访问的资源;
②同时共享
允许多个用户同时访问某文件。
(3)虚拟
①时分复用
②空分复用
(4)异步
程序运行时各种条件的不可控,使得运行的时间具有不可预知性,异步的方式是被允许的。

1.4 操作系统的运行环境

(1)硬件支持
CPU+设备控制器
①CPU
CPU只能从内存中加载指令
(2)内核
一直运行在计算机上的程序放入内核提高OS的运行效率、防止遭到其他应用程序的破坏。
第一类主要功能:支撑功能
①中断处理
eg,各种类型的资源调用、键盘命令的输入、进程调度、设备驱动;
②时钟管理
eg,实时系统对截止时间的控制
第二类主要功能:资源管理功能
eg,进程管理、存储器管理(逻辑地址和物理地址的对应)、设备管理
(3)处理机的双重工作模式
用户态:执行用户程序
内核态:执行OS程序
相关配置:模式位(用户态1,内核态0);指令(特权指令,内核态;非特权指令,用户态)。

1.5操作系统的功能

(1)处理机管理功能
①进程控制
在多道程序环境中,为每道作业创建一个或几个进程,并为之分配必要的资源。
为作业创建进程,撤销(终止)已结束的进程;
②进程同步
对多个进程运行时进行协调;
进程互斥:各进程对临界资源进行访问,采用互斥方法;
进程同步:相互合作以完成共同任务的各进程间,由同步机构对它们的执行次序加以协调。
③进程通信
由源进程利用发送命令,直接将消息挂到目标进程的消息队列丧,由目标进程利用接收命令从其消息队列中取出信息。
④调度
作业调度:从后备队列中选出若干个作业,并为他们分配运行所需的资源;
进程调度:按照一定算法,从进程就绪队列中选出一个进程,将处理机分配给他,并为它设置运行现场,使其投入执行。
(2)存储器的管理功能
①内存的分配和回收
基本原则:
为每道程序分配内存空间;
减少不可用的内存空间;
为正在运行的程序申请附加的内存空间,以适应程序和数据动态增长的需要;
②内存保护
每道程序仅在自己的内存空间中运行,彼此互不干扰;
不允许用户访问OS的程序和数据;
保护机制:设置两个界限寄存器,分别存放正在执行程序的上界和下界。
③地址映射
映射程序的物理地址和逻辑地址.
④内存扩充
请求调入功能:
置换功能:发现内存中已无足够的空间装入需要调入的程序和数据,则系统能将内存中一部分暂时不用的程序和数据调至盘上,以腾出内存空间。
(3)设备管理功能
①缓冲管理
缓解CPU与I/O设备速率不匹配的问题。
②设备分配
根据用户进程的I/O请求与系统现有的资源情况,按照某种设备分配策略,为之分配所需设备。
③设备处理
实现CPU和设备控制器之间的通信
(4)文件管理功能
①文件存储空间管理
②目录管理
文件名、文件属性、文件在磁盘上的物理位置
③文件的读/写管理与保护
读写:指针方法
文件保护:防止未经核准的用户存取文件;防止冒名顶替文件;防止不正确的方式使用文件。
(5)接口管理功能
①用户接口
联机用户接口(CLI):一条命令一条命令的运行;
脱机用户接口(JCL):批命令运行
图形用户接口(GUI):图形化的操作界面
②程序接口
(6)现代操作系统的新功能
①保障系统安全
②支持用户通过联网获取服务
③可处理多媒体信息

1.6 操作系统的结构

(1)模块化结构
①优点:适应性、理解性、维护性;加快开发
②缺点:需要制定额外的次序选择
(2)分层式结构
①优点:自上而下的开发,易于理解和维护
②缺点:单向依赖,通信开销大
(3)微内核结构
基本功能:进程管理、存储器管理、中断陷入处理
①微内核是什么
OS中最基础的部分,处理与硬件紧密相关的部分。
②客户/服务器模式
客户与服务器之间借助微内核提供的消息传递机制来实现信息交互。
③策略与机制分离
机制:实现某一功能的具体执行机构;
策略:在机制的基础上,借助某些参数算法来实现该功能的优化或者达到不同的功能目标。
④面向对象技术
面向对象相关术语:抽象,封装,继承
(4)外核结构
不提供传统OS中的进程、虚拟存储器等抽象的事物,专注于物理资源的隔离(保护)与复用。

1.7系统调用

程序接口由一组系统调用组成;
调用的本质:应用程序请求OS内核完成某功能时的一种过程调用;