操作系统是直接控制和管理计算机系统的软硬件资源和数据资源,合理组织计算机的工作流程,并提供人机交互界面,方便用户使用计算机的软件集合,是运行在硬件基础上的第一层软件。
从以上定义中可以看出,操作系统在计算机系统中占有非常重要的地位,它在硬件系统和用户之间搭建了一座桥梁,其作用体现在:一方面,操作系统屏蔽了硬件的物理特性和操作细节,使用户不必了解复杂的硬件体系结构和指令系统,为用户使用计算机提供了便利;另一方面,操作系统以管理者身份有效管理CPU、内外存储设备、输入输出设备等硬件资源,既保证硬件资源能够协调工作,又解决了多个程序同时占用系统造成的资源共享问题。
3.1.1 操作系统概念
操作系统是控制和管理计算机软、硬件资源,以尽量合理有效的方法组织多个用户共享多种资源的程序集合。
从资源管理的角度来看,操作系统是计算机系统中的资源管理器,负责对系统的硬、软件资源实施有效的控制和管理,提高系统资源的利用率。
从方便用户使用的角度看,操作系统是一台虚拟机,是对计算机硬件的首次扩充,隐藏了硬件操作细节,使用户与硬件细节隔离,从而方便用户使用。
3.1.2 操作系统特征
一般操作系统具有以下4个基本特征。
1.并发性
并发性(Concurrence)是指两个或两个以上的事件或活动在同一时间间隔内发生。系统内部具有并发机制,能协调多个终端用户同时使用计算机和资源,能控制多道程序同时运行。
2.共享性
共享性是操作系统的另一个重要特性。共享是指操作系统中的资源(包括硬件资源和软件资源)可被多个并发执行的进程共同使用,而不是被一个进程所独占。共享的方式可以分成两种:
(1)互斥访问
(2)并发访问
3.虚拟性
虚拟性是指操作系统中的一种管理技术,它把一个物理上的实体映射为若干个逻辑上的对应物。
4.不确定性
不确定性有两种含义:程序执行结果是 不确定的,即对同一程序,使用相同的输入,在相同的环境下运行,却可能获得完全不同的结果,即程序是不可再现的。
3.1.3 操作系统的作用与功能
操作系统是用户与计算机硬件之间的接口。
操作系统是计算机系统的资源管理者。
具体地讲,其主要功能包括以下6种。
1.处理机管理
处理机管理的主要任务是对处理机的分配和运行实施有效的管理。在多道程序环境下,处理机的分配和运行是以进程为基本单位的。
2.存储器管理
计算机的存储器包括:主存储器(内存)、寄存器、高速缓存以及磁盘缓存。
(1)主存储器
主存储器是用于保存进程运行时的程序和数据,CPU的控制部件只能从主存储器中取得指令和数据.
(2)寄存器
寄存器用于加速存储器的访问速度,如用寄存器存放操作数。
(3)高速缓存
高速缓存容量大于或远大于寄存器,但小于内存,访问速度高于主内存器,根据程序局部性原理,将主存中一些经常访问的信息存放在高速缓存中,减少访问主存储器的次数,可大幅度提高程序执行速度。
(4)磁盘缓存
存储器管理的主要任务是对内存进行分配、保护和扩充,为多道程序运行提供有力的支撑,便于用户使用存储资源,提高存储空间的利用率。存储管理的主要功能包括:
(1)内存分配:按一定的分配策略为每道程序分配内存;
(2)存储共享:存储管理能让内存储器中的多个用户程序实现存储资源的共享,以提高存储器的利用率;
(3)内存保护:保证各程序在自己的内存区域内运行而不相互干扰;
(4)内存扩充:为允许大型作业或多作业的运行,必须借助虚拟存储技术来实现增加内存的效果。
3.设备管理
设备管理的主要任务是管理各类外围设备,完成用户提出的I/O请求,加快I/O信息的传送速度,发挥I/O设备的并行性,提高I/O设备的利用率,以及提供每种设备的设备驱动程序和中断处理程序,为用户隐蔽硬件细节、提供方便简单的设备使用方法,操作系统对设备进行分层管理。
4.文件管理
操作系统中负责文件管理的部分称为文件系统。
(1)文件和文件系统
文件系统的管理功能是通过把它所管理的程序和数据组织成一系列文件的方法来实现的。而文件则是指具有文件名的若干相关元素的集合,分为有结构文件和无结构文件。
(2) 文件操作
① 创建文件
② 删除文件
③ 读文件
④ 写文件
⑤ 截断文件
⑥ 设置文件的读/写位置
(3)文件的逻辑结构
① 有结构文件
② 无结构文件
(4)顺序文件
文件的物理结构,又称为文件的存储结构,是指文件在外存上的存储组织形式,不仅与存储介质有关,还与外存分配方式有关。
文件是记录的集合,文件中的记录可以是任意顺序的,因此,它可以按照各种不同的顺序进行排列,一般地,可归纳为以下两种情况。
① 串结构
② 顺序结构
(4)索引文件
对于定长记录文件,可以方便地实现顺序存取和直接存取,然而,对于变长记录就很难实现。
(5)目录管理
对目录的管理要求如下:
① 实现按名存取
② 提高对目录检索速度
③ 文件共享
④ 允许文件重名
目录结构的组织,关系到文件系统的存取速度,也关系到文件的共享性和安全性,目前常用的目录结构形式有单级目录、两级目录、多级目录。
当一个文件系统含有多级目录时,每访问一个文件,都要使用从树根开始直到树叶(数据文件)为止的、包含各中间节点(目录)的全路径名,这非常麻烦,可为每个进程设置一个当前目录,又称为工作目录,进程对各文件的访问都相对于当前目录而进行的。把从当前目录开始值得数据文件为止所构成的路径称为相对路径,而把从树根开始的路径称为绝对路径。
5.网络与通信管理
(1)网上资源管理功能。
(2)数据通信管理功能。
(3)网络管理功能。
6.用户接口
为了使用户能灵活、方便地使用计算机和系统功能,操作系统还提供了一组友好的使用其功能的手段称用户接口。通常,操作系统为用户提供以下两种接口:命令接口和程序接口。
(1)命令接口:提供一组命令供用户直接或间接控制自己的作业,近年来出现的图形接口是命令接口的图形化。
(2)程序接口:提供一组系统调用,供用户程序和其他系统程序调用。
3.1.4 操作系统的特性和分类
并发性和共享性的主要特征。
并发性是指在内存中存放多道作业,在一个时间段上来看,每一道作业都能不同程度地向前推进,但在任何一个时间点上只能有一道作业占用CPU,各道程序同时在CPU上交替轮流地执行。
共享性是指系统中的资源可以供内存中多个并发执行的程序共同使用,很多种资源(CPU、内存等)都可以被多道作业共同享用。
并发与共享互为条件,是操作系统的基本特征。
1.批处理操作系统
批处理操作系统的基本工作方式是:用户将作业交给系统操作员,系统操作员在收到作业后,并不立即将作业输入计算机,而是在收到一定数量的用户作业之后,组成一批作业,再把这批作业输入到计算机中。
2.分时系统
从操作系统的发展历史上看,分时操作系统出现在批处理操作系统之后。它是为了弥补批处理方式不能向用户提供交互式快速服务的缺点而发展起来的。
3.实时操作系统
实时操作系统(RTOS:Real Time Operating System)是指,使计算机能在规定的时间内,及时响应外部事件的请求,同时完成以该事件的处理,并能够控制所有实时设备和实时任务协调一致地工作的操作系统。实时操作系统主要目标是:在严格时间范围内,对外部请求做出反应,系统具有高度可靠性。
4.个人计算机操作系统
个人计算机操作系统(Personal Computer Operating System)是一种单用户的操作系统。个人计算机操作系统主要供个人使用,功能强,价格便宜,在几乎任何地方都可安装使用。它能满足一般人操作、学习、游戏等方面的需求。
5.网络操作系统
为计算机网络配置的操作系统称为网络操作系统。
网络操作系统把计算机网络中的各个计算机有机地连接起来,其目标是相互通信及资源共享。
6.分布式操作系统
将大量的计算机通过网络连接在一起,可以获得极高的运算能力及广泛的数据共享的系统称作为分布式系统(Distributed System)。为分布式系统配置的操作系统称为分布式操作系统(Distributed Operating System)。
3.1.5 现代主流操作系统
从1974年,第一个微机操作系统CP/M诞生至今,在操作系统的发展过程中出现许多不同类型的操作系统。目前,在服务器、个人计算机以及智能手机中应用最广泛的是以下几种操作系统,下面进行简要介绍。
1.Unix操作系统
2.Linux操作系统
3.Windows操作系统
4.手机常用操作系统