操作系统 第1章 概序 (学习笔记)
第1章 概序
1.1计算机与操作系统
1.1.1计算机系统
什么是操作系统?
操作系统:是控制和管理计算机系统内各种硬件和软件资源、有效地组织多道程序运行的系统软件(或程序集合),是用户与计算机之间的接口。
1)OS是什么:是系统软件(一整套程序组成,如UNIX由上千个模块组成)
2)管什么:控制和管理系统资源(记录和调度)
操作系统基本特征:并发,共享和异步性。
1)并发:并发性是指两个或多个活动在同一给定的时间间隔中进行。
2)共享:共享是指计算机系统中的资源被多个任务所共用。
3)异步性:每个程序什么时候执行,向前推进速度快慢,是由执行的现场所决定。但同一程序在相同的初始数据下,无论何时运行都应获得同样的结果。
操作系统的地位:
操作系统是裸机之上的第一层软件,是建立其他所有软件的基础。它是整个系统的控制管理中心,既管硬件,又管软件,它为其它软件提供运行环境。
1.1.2实用的操作系统
实用的操作系统:
1)IBMSystem/360操作系统(1964-)
2)MULTICS(MULTiplexed Information and Computing Service)操作系统(1965-2000)
3)Unix操作系统(1969-)
优点:
可移植,良好的、通用的、多用户、多任务、分时的操作系统。
其运行时的安全性、可靠性以及强大的计算能力
4)MS DOS操作系统(-1994)
特点: 优良的文件系统,是一个单用户单任务操作系统
优点:开销小,运行效率高,使用于微型机
缺点: 无法发挥硬件能力,缺乏对数据库、网络通信的支持,没有通用的应用程序接口,用户界面不友善
5)MACOS 操作系统
特点:全图形化界面,操作方式
优点: 全新的窗口系统、强有力的多媒体开发工具和操作简便的网络结构
6)Windows操作系统(1985-)
特点:多任务操作系统,即插即用和电源管理,新的图形界面,更加高级的多媒体支持,不断更新的版本和功能
7)Linux操作系统(1911-)
特点:继承了Unix的优点,又有了许多更好的改进,由于其开放的源代码,有利于发展各种操作系统,它符合Unix的POSIX标准,各种应用可方便地移植
例:指令操作
(1)用户之间可以相互发信息:指令write username+发送内容
(2)采用广播的方式(将信息发给所有人/所有登录主机的用户):指令wall+发送内容
8)其他操作系统
(1)有线电视机顶盒领域PowerTV
(2)掌上计算机领域Palm OS
(3)数字影像领域Digita
(4)手机Symbian,SmartPhone,Palm OS
(5)嵌入式Linux:uClinux,MontaVista Linux,LynxOS
1.2操作系统的功能
1.2.1操作系统的定义
操作系统的特点:
1)操作系统是程序的集合
2)操作系统管理和控制系统资源
3)操作系统提供了方便用户使用计算机的用户界面
4)操作系统优化系统功能
5)操作系统协调计算机的各种动作
操作系统定义:
对计算机系统资源进行直接控制和管理,协调计算机的各种动作,为用户提供便于操作的人—机界面,存在于计算机软件系统最底层核心位置的程序的集合。
1.2.2操作系统的功能
主要功能:
1)处理机管理: 进程控制,进程同步,进程通信,进程调度
2)存储器管理: 内存分配,地址映射,内存保护和内存扩充
3)作业管理/用户接口:任务、界面管理、人机交互、图形界面、语音控制和虚拟现实等(命令界面/图形界面和系统调用接口)
4)信息管理/文件管理:文件存储空间的管理,文件操作的一般管理,目录管理,文件的读写管理和存取控制
5)设备管理: 缓冲区管理,设备分配,设备管理,设备驱动和设备无关性
标准的技术处理:
1)标准输入/输出:键盘为标准输入设备及显示器为标准输出设备
2)中断处理:针对可预见的异常配备好了中断处理程序及调用路径,当中断发生时暂停正在运行的程序而转去处理中断处理程序
3)错误处理:将可能出现的错误进行分类,并配备对应的错误处理程序
一旦错误发生,它就自动实现自己的纠错功能。(向用户提示发现错误的信息,自动保障系统的安全)
1.2.3操作系统的设计原则
操作系统设计原则:
1)系统效率高
2)系统吞吐能力大
3)系统响应时间快
1.2.4操作系统的发展
1.2.4.1计算机系统发展初期
ENIAC(1946-):世界上第一台计算机
ohn vonNeumann计算机概念:运算器、存储器、控制器、输入/输出设备和与之相关的操作员
计算机上运行的程序进行组织:
1:凡是运行步骤大致相同的程序组织成为一批,
2:由操作员通过输入机输入到磁带机上,
3:再将磁带机连接到计算机主机上准备运行,
4:余下的控制工作交由称为监督程序的程序来控制完成。(操作员的一部分工作被监督程序替代)
5:完成后操作员将存有输出结果的磁带机取下,
6:再连接到输出设备上逐一地输出不同程序的输出结果,最后交给用户。
这时的计算机系统称为脱机批处理系统,输入/输出设备与主机之间不再有直接的联系,主机只与磁带机打交道。
1.2.4.2多道批处理系统
多道批处理系统:
当主存储器中存放着不止一批的作业,处理机在调用一批作业运行时,如发现输入/输出所产生的等待,监督程序就引导处理机去执行另外的程序,这样就使处理机总是处于工作状态。
存储器上存放的程序批次越多,处理机的利用率就越高。
为了提高计算机的利用率,多道批处理系统不允许用户的干预。
1.2.4.3联机多道程序系统
联机多道程序系统: 程序来控制计算机设备和用户终端,多用户,多任务,分配处理机时间,分配内存空间,共享输入/输出设备,协调程序运行时各种冲突
1.3操作系统的分类
操作系统的主要类型:多道批处理系统、分时系统、实时系统、个人机系统、网络系统和分布式系统
1.3.1多道批处理系统(脱机处理系统)
多道批处理系统:按用户作业的类型不同分成若干批次,将不同批次的作业都存放于存储器中,每一批次作业顺序处理。如果需要输入/输出,就调用另一批次的作业运行,从而实现资源的充分利用。
(1)批处理系统的特点:多道、成批
(2)批处理系统的优点:资源利用率高、系统吞吐量大
(3)批处理系统的缺点:等待时间长、没有交互能力
具体概念:
(1)单道程序: 在主存储器中只存放着一批程序(或者一个程序)
(2)多道程序: 在主存储器中存放着不止一批的程序(或者多个程序)
(3)作业: 是用户交给计算机执行的具有独立功能的任务
1)作业步:作业的执行步骤往往代表着一个具体的子功能
2)作业步的执行顺序:前一个作业步的输出是后一个作业步的输入,后一个作业步必须在前一个是作业步执行完毕后执行
4)作业的描述方法:通过专用的作业控制语言、高级语言、键盘命令
(4)批处理: 将作业组织成批,并一次将该批作业的所有描述信息和作业内容输入计算机,计算机将按照作业和作业步进入的先后顺序依次自动执行,在一个批次范围内用户不得对程序的运行进行任何干预
1.3.2分时系统(多用户操作系统)
(1)分时:指若干并发程序对CPU时间的共享。它是通过系统软件实现的。共享的时间单位称为时间片
(2)时间片: 程序一次运行的最小时间单元
(3)响应时间: 分为用户响应时间和系统响应时间
1)系统响应时间:计算机对用户的输入作出的反应时间。
2)用户响应时间:单个用户所感受到的系统对他的响应。
时间片越短,响应时间越快。
(4)多用户:用户通过终端连接主机,主机分时对终端程序反应,用户行为互不影响
(5)分时系统安全性: 保证系统及各个用户程序的安全,系统必须采取一定的安全措施(最常见的安全方法是用户登录方式)
(6)分时系统的特征:多路性/同时性, 独立性,及时性,交互性
1)多路性/同时性:系统同时支持多路终端的连接
2)独立性:多用户各自独立地使用计算机
3)及时性:终端都及时地得到系统的反应
4)交互性:通过终端直接与计算机进行对话(人--机对话)
(7)分时系统设计目标及用途:要充分考虑到满足用户的需求,用户最大的要求是联机交互和及时响应
1.3.3实时系统
(1)实时系统:立即响应(毫秒/微秒级),高可靠性
(2)目的: 为了满足特殊用户的需要,在响应时间上有着特殊要求、利用中断驱动、执行专门的处理程序、具有高可靠性的系统(针对某一种特殊需要而设计的)
(3)专门系统: 定制系统,在各个领域之间不能通用,设计费用无法均摊
(4)立即响应: 事件发生到计算机做出反应之间的时间通常在微秒数量级范围.
不同的系统其反应时间不同,必须保证被控制设备能够做出正确的动作,任何时间延迟都会导致系统的错误。
(5)事件驱动: 为预发生的情况编制好了对应的处理程序----事件处理程序或者中断处理程序,在系统启动时就被存放在主存储器上.当事件发生,程序运行,否则一般处于等待状态
(6)高可靠性: 多存储器系统或者存储器镜像系统,多处理机系统,多主机系统
1) 多存储器系统或者存储器镜像系统:同样的数据保存在不同的存储位置,防止意外时数据可恢复
2)多处理机系统:采用主处理机和后备处理机处理同样事件,主处理机发生意外,启动后备处理机处理结果
3)多主机系统:多套处理机及存储器组合,避免任何意外所导致的不安全性
(7)典型应用形式:过程控制系统、信息查询系统、事务处理系统(军事、工业控制、金融证券、交通及运输等领域)
(8) 实时系统与分时系统的主要区别:
1.3.4个人机系统
(1)单用户操作系统 单用户操作系统特征:
个人使用:整个系统由一个人操纵,使用方便。
界面友好:人机交互的方式,图形界面。
管理方便:根据用户自己的使用要求,方便的对系统进行管理。
适于普及:满足一般的工作需求,价格低廉。
(2)多用户操作系统多
代表是UNIX,具有更强大的功能和更多优点。
1.3.5分布式系统
(1)定义:运行在不具有共享内存的多台计算机上,但用户眼里却像是一台计算机。(分布式系统无本地操作系统运行在各个机器上)
(2)分布式系统特征:分布式处理、模块化结构、利用信息通信、实施整体控制
(3)分布式操作系统特点:透明性、灵活性、可靠性、高性能、可扩充性
1.3.6网络系统
(1)计算机网络=计算机技术+通信技术
(2)计算机网络的特征:分布性、自治性、互连性、可见性
(3)网络操作系统功能
本机+网络操作系统:本地OS之上覆盖了网络OS,可以是同构的也可以是异构的。
功能:实现网络通信、资源共享和保护、提供网络服务和网络接口等
1.3.7几种操作系统的比较(多/分/实)
1.4操作系统的观点
(1)资源管理观点:操作系统对资源进行分配、释放、相互配合、信息记录和信息修改,实现用户所要求的各种功能(资源是静态的,而操作系统是动态的)
(2)用户管理观点:操作系统对任务的产生、执行、停止进行安排
(3)进程管理观点:操作系统对进程进行管理,管理进程的建立、运行、撤消等