操作系统教案
- 格式:doc
- 大小:617.50 KB
- 文档页数:62
第一章 操作系统引论
1.1 操作系统发展简史
操作系统的发展经历了四个阶段:
1、手工阶段
(1)预约:联机方式(时间浪费)
纸带、纸带机
(2)脱机方式
程序运行时,程序员不在现场。
程序员、操作员
2、早期批处理系统
核心:实现作业之间转换自动化。
由监控程序实现。监控程序常驻内存,监督计算机的运行情况。
与手工操作不同的思想。 依赖于磁带技术。
纸带、卫星机、磁带
3、多道程序
60年代,随着硬件发展(出现了中断技术和通道技术),有人提出了多道程序的思想。内存中同时驻留多道程序,宏观上说,有多道程序处于运行状态;微观上说,只有一道程序在运行,多道程序交替执行。
4、操作系统
随着计算机的硬件技术的发展,逐渐引入操作系统。
1.2 操作系统的功能和特征
一、定义
简言之,操作系统是软硬件资源的控制中心,它以尽量合理有效的方法组织多个用户共享计算机的各种资源。
1、 操作系统:有效的管理计算机系统中的资源,合理的组织计算机系统的工作流程,方便用户使用的程序的集合。
2、资源
(1)软资源:(程序、数据)操作系统对软资源的管理,称为文件管理。如何将信息存储起来,实现按名存取。
(2)硬资源:CPU(CPU管理)
内存(内存管理)
外设(设备管理):各种外部设备集合在一起,进行的有效管理。负责设备的分配。除了资源管理外,人们还关注用户与计算机的接口(用户接口)。人与计算机是如何打交道的,OS如何组织计算机工作流程,称为作业管理。
3、用户接口:为了便于人与OS打交道,OS所提供的用户界面。
命令接口:用户与OS的接口,通过键盘键入命令取得OS的服务。
程序接口:应用程序与OS的接口,在应用程序中要使用OS的某些功能,此时使用程序接口。
图形用户接口:将系统的各项功能及各种应用程序,以图标表示,操作简单。OS提供给用户的图形接口,由命令接口发展而来,现在所使用的环境大多属此类。
作业控制语言:(JCL)利用它写的作业说明书,主要针对批处理程序考虑。
二、操作系统功能
(1)平台与环境功能
(2)资源管理者功能:分为四类:文件管理、CPU管理、内存管理、设备管理。
(3)计算机工作流程组织者或者总调度员的功能
三、特征(微观特征)
1、并发性
两个程序各自都已开始运行,但都还没完成,就称它们是并发的。两个有区别的概念:
并发性:两个或两个以上事件在同一时间间隔内发生。
并行性:两个或两个以上事件在同一时刻发生。
只有多CPU系统才具有并行性。在单CPU的计算机系统中,多个程序不可能同时执行。这些程序串行地、交错地运行(即:走走停停),OS负责这些程序之间的运行切换。并发是从宏观上看多个程序的运行活动,从外部宏观上观察,有多个程序都在系统中运行(如:)。由此引入“多道程序设计”的概念。
多道程序设计:在只有一个CPU的情况下,只要内存中同时存放两道
以上可运行程序,当运行的程序需要输入输出时,立即调度另一个程序运行,这一技术就称为多道程序设计。(见书图)
2、共享性(并发活动必须共享CPU、内存及其它资源)即内存中多个并发执行
的程序等共享系统的软、硬件资源。共享方式可分:互斥共享、同时共享
互斥共享:在一段时间内只允许一个程序访问。如打印机,绘图仪,可写数据、文件等。
同时共享:允许一段时间内多个程序同时访问。如只读的数据、文件等。
3、不确定性
即:使用同样一个数据集的同一个程序,在同样的计算机环境下运行,每次执行的顺序和所需时间不相同。原因是由于多道程序环境下的OS内部的活动错综复杂。但程序执行结果是确定的。
4、虚拟化
四、多道程序设计
多道程序设计:在只有一个CPU的情况下,只要内存中同时存放两道及以上可运行程序,当运行的程序需要输入输出时,立即调度另一个程序运行,这一技术称为多道程序设计。例:(P9.图1.4)
多道程序设计易理解,实现困难。涉及到的相关知识点,在后序章节介绍。
1.3 操作系统的基本类型
操作系统的五大类型
• 批处理操作系统(batch processing operating system)
• 分时操作系统(time sharing operating system)
• 实时操作系统(real time operating system)
• 网络操作系统(network operating system)
• 分布式操作系统(distributed operating system
1. 批处理操作系统
批处理系统:是指加载在计算机上的一个系统软件,在它的控制下,计算机能够自动地成批地处理一个或多个用户的作业。
特征:以批量的形式输入用户作业,采用多道程序设计等技术控制多道作业运行。
多道批处理系统=批处理系统+多道程序设计技术
优缺点:其优点是成批处理作业,提高了作业吞吐量,多道程序运行,提高了资源的利用率。缺点是缺乏交互性。主要运用在大计算量的科学计算上。
如:银河巨型计算机、大型计算中心或者银行的中心机等。
2. 分时操作系统
分时技术:将CPU的时间分成很短的时间片(几十毫秒-几百毫秒)轮流为每个用户工作,采用这种技术的操作系统称为分时操作系统。
特征:多路性、独立性、及时性和交互性。
多路性:主机同时连接多台终端,同时为多个用户服务。
独立性:各个终端同时工作,每个用户都没有滞后感。
及时性:用户在终端用机,以交互方式跟OS打交道。
交互性:若时间片设置得适当小,每个用户都会感觉自己独占了整个计算机一样。
优缺点:优点是控制简单,系统稳定性好,系统交互性好。
缺点是用户的优先级不易控制。
3. 实时操作系统
实时系统:要求计算机对外来信息能以足够快的速度进行处理,并在被控对象允许的时间范围内作出快速响应。主要应用实时处理之中。
特征:及时性、可靠性
及时性:通常被控过程的响应周期,都在毫秒级。
可靠性:要求十分可靠,不允许受到攻击。
常用于航天航空装置的控制、军事武器控制、生产过程控制等。
优缺点:优点是响应速度快,缺点是交互能力差。
4. 网络操作系统
网络操作系统:包括网络管理、通信、资源共享、系统安全和多种网络应用服务。
多用户系统和网络系统的比较:
5. 分布式操作系统
分布式操作系统:分布式处理系统是指由多个分散的
处理单元经互联网络的连接而形成的系统。在分布式
系统上配置的操作系统称为分布式操作系统。
特征:(1)需要一个全局的文件系统;
(2)所有的CPU上运行同样的内核,统一的管理和控制机构,进行优化的协调工作;
(3)有一个单一的、全局的进程通信机制。提供选择优化本地和远地的资源利用。
(4)有全局的保护机制。
1.4 操作系统结构
• 整体式系统结构
• 层次式系统结构
• 虚拟机式系统结构
• 客户机—服务器系统结构
1. 整体式系统结构(“无结构”)
此结构的OS提供的系统调用过程:(P22.图1.11,图1.12 )
特点:OS 由若干个功能模块(或:过程)组成,它们可以互相任意调用。
系统短小精悍,各过程能随意调用,但程序错误传播性强。
2. 层次式系统结构:(P23.图1.13)
特点:分模块,模块分层,只允许上层调用下层。
优点:减少了程序错误的传播。
3. 虚拟机式系统结构:(P24.图1.14,图1.15 )
4. 客户机—服务器系统结构
客户机—服务器系统:为了得到某项服务,用户进程(即客户机进程)把请求发给服务器进程,由服务器进程完成此操作并送还回答信息。(P25.图1.16,图1.17 )
1.5 现代操作系统概念
1.发展动力
(1)硬件的发展
(2)软件的发展
(3)用户需求的增长
(4)市场的竞争
2.设计目标
正确性、高效性、可扩充性、可移植性、可靠性
第2章 进程及其管理
进程概念是操作系统中最基本、最重要的概念。
对于了解现代计算机系统的微观结构与动态运行过程以及理解操作系统各个部分的工作和各项技术极为重要。
2.1 进程概念及其引入
一、程序
1. 程序:若干条指令的有序集合。
2. 顺序环境中的程序
顺序环境:计算机系统中只有一个程序在运行,该程序独占系统所有资源,其执行不受外界影响。
特征:
(1)程序执行的顺序性;
(2)程序执行的封闭性:独占资源,执行过程中不受外界影响。
(3)程序执行结果的确定性:即程序结果的可再现性。
程序运行结果与程序执行速度无关,只要初始状态相同,结果应相同。
(4)速度无关性
3. 并发环境中的程序
并发环境:一定时间内,物理机器上有两个或两个以上的程序同处于开始运行但尚未结束的状态,并且次序不是事先确定的。
特征:
(1)程序的间断性:每个程序在CPU上运行,都是走走停停的。
(2)失支封闭性
由于资源共享,系统中资源被多个进程使用。
比如:一个多用户的分时售票系统,各终端程序共享票号单元X。采用下述程序可实施卖票管理。
Ri = X;
if Ri>0
{
Send (Ri); /* 卖票 */
Ri--;
X = Ri;
}
该终端某时刻究竟卖出第几号票,是否有票可卖,都不是孤立的,必须受其它终端的制约。
(3)结果的不可再现性
并发程序执行的结果与其执行的相对速度有关,是不确定的。
(4)独立性和制约性
独立的相对速度、起始时间;进程之间可以相互作用(相互制约)