首页 > 代码库 > 计算机操作系统学习笔记_1_操作系统概述
计算机操作系统学习笔记_1_操作系统概述
操作系统概述
一、操作系统的概念、特征、功能和提供的服务
1.操作系统的概念操作系统是计算机系统中最重要、最基本的系统软件,操作系统位于硬件和用户程序之间。
对于用户来讲:它能向用户提供使用计算机的接口;
从资源管理角度来看:它能管理计算机软硬件资源,提高其利用率;
再者,利用虚拟机技术(如WMWare,VirtualBox,Java虚拟机等),扩展了计算机的功能和使用范围。
因此,操作系统的定义为:操作系统是控制和管理计算机软、硬件资源,以尽可能合理、高效的方法为不同用户及其应用程序提供服务的一种系统程序。
2. 操作系统的特征
操作系统具有并发(与并行的区别:并行是真正意义上的同时;而并发是宏观上的同时,而微观上是交替)、共享、虚拟和不确定性(由并发引起,应尽量减少系统的不确定性)四大特征。
其中,最重要的是并发特征,其他三个特征都是以并发为前提的。
3. 操作系统的功能
操作系统主要有进程管理、存储管理、文件管理、设备管理四大功能。
4. 操作系统所能提供的服务
操作系统为用户程序和系统程序提供了一系列的服务,这些服务可使使用计算机的人更快捷、高效和简单地完成自己的工作。
1.公共服务(命令控制接口:命令行shell,图形界面GUI,NUI[自然用户接口],脚本)
提供人机对话平台。
2.系统调用服务
提供编程时的系统服务;创建,打开,关闭,读,写,删除等。
【附:API是多个系统调用和部分代码的综合,比系统调用功能更加强大一些】
二、 操作系统的发展与分类
1. 操作系统的发展操作系统的发展目前呈现出多样化的局面:
大型计算机、巨型计算机需要满足其集群计算,高性能计算的需求;
军用计算机、工业控制计算机希望操作系统能实时响应;
嵌入式计算机要求精简、功能专一;
便携式设备要求省电,电池持续耐力强等等。
因此,操作系统将会随着用户对系统不断的新要求,在硬件的支持下,得到更加快速、强大地发展。
2. 操作系统的分类
1).单用户操作系统
2).批处理操作系统
批处理系统又分为以下两类(其中又分为联机操作系统和脱机操作系统):
(1)单道批处理系统
(2)多道批处理系统
3).分时操作系统(现在通用的操作系统)
4).实时系统(硬实时,软实时)
5).网络操作系统
特点: a.与普通操作系统相比,有更强大的资源共享的能力
b.有更加强化的通信功能
6).分布式操作系统
7).并行操作系统
三、 操作系统的运行环境
1. 内核态与用户态[开始时操作系统并没有严格区分内核态与用户态,而是随着并发提出来的]多数系统将处理器工作状态划分为内核态和用户态。
内核态[运行特权指令]一般指操作系统管理程序运行的状态,具有较高的特权级别,又称为特权态、系统态或管态[虽然级别较高,但是也不能访问用户态的内容,体现了西方尊重私人财产的哲学思想];
用户态[运行访管指令]一般指用户程序运行时的状态,具有较低的特权级别,又称为普通态、目态。
[内核态与用户态“井水不犯河水”,由硬件提供相关技术]。
2. 中断、异常
所谓中断(interrupt)是指处理机对系统中或系统外发生的异步事件的响应。
异常(有时也称为陷阱 trap)是指由系统发起的一次确定的服务过程。相当于软中断,是以中断的方式来调用的一段代码。
中断与异常的区别与联系:就比较通用的观点来看,中断是强迫性的,异常是自愿性的;中断一般外来的,异常是程序发出的,中断服务于所有程序,异常一般为发出异常的程序服务。
3. 系统调用
系统调用的处理过程是这样的,当系统调用发生时,处理器通过一种特殊的机制,通常是中断或者异常处理,把控制流程转移到监控程序内的一些特定的位置。同时,处理器模式转变成特权模式。其次,由监控程序执行被请求的功能代码。这个功能代码代表着对一段标准程序段的执行,用以完成所请求的功能。第三,处理结束之后,监控程序恢复系统调用之前的现场;把运行模式从特权模式恢复成为用户方式;最后将控制权转移回原来的用户程序。
系统调用与一般程序调用(API)的不同:
(1)运行在不同的系统状态。调用的程序是运行在用户态,被调用的程序运行在系统态。
(2)进入的方式不同。过程调用语句直接跳转到被调用过程;而系统调用则必须通过运行系统调用命令。
(3)返回方式不同。过程调用直接返回;系统调用则不直接返回,有重新调度过程。
(4)代码层次不同。过程调用是用户级程序,而系统调用是系统级程序。
(5)系统调用一般不能嵌套或递归。
四、 操作系统体系结构
常见的操作系统体系结构有整体式结构、层次式结构和微内核(客户/服务器)结构等。1).整体式结构[无结构,如MS-DOS]
首先确定操作系统的总体功能,然后将总功能分解为若干个子功能,实现每个子功能的程序称为模块。它的主要优点是:结构紧密,接口简单直接,系统效率较高。
2).层次式结构
所谓层次式结构就是把操作系统的所有功能模块,按功能流图的调用次序,分别将这些模块排列成若干层,各层之间的模块只能是单向依赖或单向调用关系。这样不但操作系统的结构清晰,而且不构成循环。
3).微内核(客户/服务器)结构[典型代表:UNIX操作系统]
这种模式,内核提供所有操作系统最核心,最关键的部分,如线程调度、处理机调度、处理机分配等做成一个内核,这些部分通常采用层次结构并构成了基本操作系统 。而其他所有的部分则以外挂的方式加载进去。
【对应微内核,有强内核结构,如Windows】
4).模块式(面向对象)结构
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。