计算机操作系统第一章

操作系统引论

1.1操作系统的目标和作用

定义:操作系统是控制管理计算机系统的硬软件,分配调度资源的系统软件

目标:方便性,有效性(提高系统资源的利用率、提高系统的吞吐量),可扩充性,开放性。

1.2操作系统的作用

  1. 统一管理计算机资源:处理器资源,IO设备资源,存储器资源,文件资源;

  1. 实现了对计算机资源的抽象:IO设备管理软件提供读写接口,文件管理软件提供操作文件接;

  1. 提供了用户与计算机之间的接口:GUI(图形用户界面),命令形式,系统调用形式。

1.3发展动力

推动OS发展的动力 提高计算机系统资源利用率 | 方便用户 | 器件不断更新换代 | 计算机体系结构不断发展 | 不断提出新的应用需求

2.1操作系统的发展过程

OS的发展历程

【1945年 人工操作方式】

【20世纪50年代 脱机 I/O 】

运作: 解决人机矛盾以及CPU与I/O之间速度不匹配的矛盾,程序和数据的输入输出都是在脱离主机的情况下完成的。

联机 I/O : 在主机直接控制下进行的 I/O。

脱机I/O的优点:减少了CPU空闲时间,提高了IO速度

【20世纪50年代中期 单道批处理系统】

运作:把一批作业以脱机IO方式输入到磁带、在系统配上监督程序,在程序控制下,作业被一个一个完成,在内存中始终只保存一道作业。

优点:提高系统资源利用率和系统吞吐量。

缺点:仍未能充分利用系统资源,造成计算机内存的浪费

【20世纪60年代中期 多道批处理系统】

运作:作业先放到外存,排成一个队列(后备队列),由作业调度程序按照一定算法从队列选择若干个作业调入队列,使它们共享CPU和系统中的各种资源

优点:资源利用率高、系统吞吐量大、平均周转时间长、无交互能力

待解决的问题:征用处理机问题、内存分配与保护、IO设备分配、文件组织与管理问题、作业管理、用户与系统的接口

【分时系统】

发展原因:满足用户对于人机交互的要求

运作:为了实现人机交互,必须放弃原批处理系统的运行方式,而采用:①作业直接进入内存,因为作业在磁盘上无法运行;②采用轮转运行,以保证每个作业都有机会运行,因此引入了时间片的概念

特征:多路性(多终端连到同一主机上)、独立性(各自终端互不干扰)、及时性(响应所需时间为1-3s)、交互性

【实时系统】

定义:OS能及时响应外部事件的请求,在规定时间内完成对事件的处理,并控制所有实时任务协调一致地运行

实时OS的类型:工业控制OS、信息查询OS、多媒体OS、嵌入式OS

实时任务的类型:周期性 / 非周期性实时任务、硬实时任务(Hard real time,HRT)、软实时任务 SRT (上述四个任务类型,都伴随截止时间)

特征:多路性(周期性对多路现场信息采集,对多个执行机构进行控制)、独立性(各自终端互不干扰)、及时性(响应所需时间为毫秒级)、交互性、可靠性

实时系统具有的两个基本特征是:及时性、可靠性

3.1操作系统的基本特性

3.1.1并发

  • 并发(并行是同一时刻发生,并发是同一时间间隔发生):

  • 概念:宏观上多个程序同时运行,但微观上每一时刻只有一个程序运行。我们所说的并发,指的一般是进程的并发

3.1.2共享

共享:

概念:OS的共享,指的是资源的复用:供内存中多个并发执行的进程共同使用(即限定了时间,又限制了地点)

类型:互斥共享(A访问完后B才能访问)、“同时”共享(宏观上一起用,微观上交替用)

并发和共享是多任务OS最基本的两个特征,它们互为对方存在的条件。资源的共享是以进程的并发执行为条件的;同时,若不能对资源共享进行协调,则会影响并发的速度

3.1.3虚拟

虚拟性:表现为把一个物理实体转变为若干个逻辑实体。

时分复用技术:资源在时间上进行复用,不同程序并发使用,多道程序分时使用计算机的硬件资源,提高资源的利用率。

空分复用技术:用来实现虚拟磁盘(物理磁盘虚拟为逻辑磁盘,电脑上的C盘、D盘等)、虚拟内存(在逻辑上扩大程序的存储容量)等,提高资源的利用率,提高编程效率。

3.1.4异步

在多道程序环境下,允许多个进程并发执行,但由于资源等因素的限制,使进程的执行以“停停走走”的方式运行,而且每个进程执行的情况(运行、暂停、速度、完成)也是未知的

4.1操作系统的运行环境

操作系统的中断处理

操作系统的中断处理

中断机制的作用:为了在多道批处理系统中让用户进行交互;

中断产生:

发生中断时,CPU立马切换到管态,开展管理工作;(管态又叫特权态,系统态或核心态,是操作系统管理的程序执行时,机器所处的状态。)

发生中断后,当前运行的进程回暂停运行,由操作系统内核对中断进行处理;

对于不同的中断信号,会进行不同的处理。

中断的分类:

内中断(也叫“异常”、“例外”、“陷入”)------- 信号来源:CPU内部,与当前执行指令有关;

外中断(中断)----------信号来源:CPU外部,与当前执行指令无关。

外中断的处理过程:

每执行完一个指令后,CPU都需要检查当前是否有外部中断 信号;

如果检查到外部中断信号,则需要保护被中断进程的CPU环境(如程序状态字PSW,程序计数器PC、各种通用寄存器)把他们存储在PCB(进程控制块中);

根据中断信号类型转入相应的中断处理程序;

恢复原进程的CPU环境并退出中断,返回原进程继续执行。

5.1操作系统的主要功能

处理机管理功能

本质:传统多道程序系统中,处理机的分配和运行以进程为基本单位,因而对处理机的管理可归结于对进程的管理。

功能:进程控制、同步、通信、调度

存储器管理功能

功能:内存分配与回收(静态、动态分配)、内存保护(①各用户程序只在自己内存运行,②不允许用户访问OS程序和数据)、地址映射、内存扩充(虚拟存储技术:请求调入功能、置换功能)

设备管理功能

功能:缓冲管理、设备分配、设备处理

文件管理功能

功能:文件存储空间管理、目录管理、文件读写管理和保护

接口管理功能

功能:OS向用户提供了“用户与OS之间的接口”,分为用户接口(联机用户接口、脱机用户接口、图形用户接口)、程序接口

6.1操作系统的结构

简单结构

模块化结构:

优点:提高OS设计的正确性、可理解性、易维护性、可适应性,加速OS开发过程

缺点:接口规定很难满足划分后,模块对于接口的实际需求;B决定必须建立在A决定的基础上,没有可靠决定顺序,容易造成决定的无序性

分层式结构:

优点:能保证正确性、易维护性、可扩展性

缺点:系统效率低

微内核结构:

概念:足够小的内核、基于客户/服务器的模式、采用策略和机制分离的原则、采用面向对象技术;

功能:进程(线程)管理、低级存储器管理、中断和陷入处理(在微内核OS中,只有很小一部分的属于机制的放入了为内核中,另外绝大部分的都放在了微内核外的各种服务器中)

优点:提高系统扩展性、可靠性、可移植性,提供了对分布式系统的支持,融入了面向对象技术。操作系统可仅通过调整策略来适应不同应用的需求

存在的问题:因为客户和服务器间又消息传递,因此相比于早期的OS,微内核OS的运行效率有所降低(内核大则效率高但占用空间也大,反之效率低但是占空间小)

外核结构:

概念:内核不提供传统OS的进程、虚拟存储器等抽象事物,而是专注于物理资源的隔离(保护)和复用,即非常小的内核负责保护系统资源,而硬件资源的管理职责则委托给应用程序。将原本属于OS内核的功能以库的形式提供给用户

7.1系统调用

系统调用

概念:使应用程序可以通过系统调用来简介调用OS中的相关过程,进而取得相应的服务

系统调用是通过中断机制实现的

区别于一般的过程调用:

①运行在不同的系统状态:系统调用的调用程序运行在用户态,而被调用程序运行在内核态

②因为调用和运行的系统状态不同(一个是用户态,一个是内核态),因此不允许由调用过程直接转向被调用过程,需要通过软中断机制先由用户态转为内核态,经内核分析后才能转向相应的系统调用处理子程序

③返回问题:每一次调用需要判断优先级

④嵌套调用:系统调用对于嵌套调用的深度有一定限制,但是一般的过程调用则没有

系统调用的类型:

①进程控制类系统调用

②文件操纵类系统调用

③进程通信类系统调用

猜你喜欢

转载自blog.csdn.net/CYwxh0125/article/details/129270415