第一章:操作系统引论

	教材:
《计算机操作系统》,汤子瀛等,西安电子科技大学出版社(第4版)
	参考书:
	《操作系统教程》(第3版),孙钟秀 ,高等教育出版社 ,200311月
	《Operating System Concepts》(第七版)(英文影印版) Silberschatz A ,Galvin P B, Gagne G著,高等教育出版社 ,200712月。
	《现代操作系统》 (英文第2版),(荷)Andrew S. Tanenbaum著 ,陈向群等译,机械工业出版社, 20056月 
	《操作系统:设计与实现》(上下册) ,Andrew S.Tanenbaum ,电子工业出版社 ,1998年 
	《Linux内核完全剖析--基于0.12内核 》,赵炯 ,机械工业出版社 ,20091月。
	《UNIX结构分析(核心代码的结构与算法) 》胡希明 ,浙江大学出版社 ,20028月。
	《嵌入式实时操作系统uC/OS-II 》 (2)()Jean J. Labrosse著 ,邵贝贝译, 北京航空航天大学出版社 , 20079月 
	《Unix系统内幕》,Uresh Vahalia ,人民邮电出版社 ,2003

操作系统是系统软件
系统软件是与硬件相关的软件。
在这里插入图片描述

在这里插入图片描述


§1.1 操作系统的目标和作用

硬件之上,其他软件之下。

  • 目标: 方便性,有效性,可扩充性,开放性.
  • 作用: 用户与计算机的接口,系统资的管理者,扩充机器。

在这里插入图片描述
推动OS发展的主要动力

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

§1.2 操作系统的发展过程

无OS:

人工操作系统:
  • 1946-50年代中:电子管时代,计算机速度慢,无操作系统,集中计算,计算机资源昂贵;
  • 用户:既是程序员又是操作员;用户是计算机专业人员;
  • 编程语言:机器语言;
  • 输入输出:纸带或卡片;
脱机I/O方式:在这里插入图片描述

OS分类:

OS所在的角度
  • 多任务,单CPU, CPU具有与外设并行操作的能力。
  • 程序均由CPU执行
  • CPU只能执行机器语言程序
  • CPU执行的程序均在内存中

在这里插入图片描述

######## 批处理系统

  • 单道程序工作示例:
    在这里插入图片描述
  • 多道程序工作示例:
    在这里插入图片描述
    在这里插入图片描述
分时系统

目标:

  • 对用户的请求及时响应;尽量提高系统资源的利用率

原理:

  • 一台计算机连接多个终端,用户通过各自的终端把作业送入计算机;计算机又通过终端向各个用户报告其作业的运行情况。
  • 计算机能分时轮流地为各终端用户服务,并能及时地对用户服务请求予以响应。

基本特性

  • 多路性,独立性,及时性,交互性。
实时系统

目的

  • 提高系统的响应时间,对随机发生的外部事件作出及时响应并对其进行处理。

分类
在这里插入图片描述
基本特性
在这里插入图片描述

三种系统比较

在这里插入图片描述


§1.3 操作系统的基本特性

并发

并发:一段时间
  • 指两个或多个事件在同一时间间隔内发生。
并行:一个时间
  • 指两个或多个事件在同一时刻发生。

共享

  • 指系统中的资源供内存中的多道程序所共同使用。

  • 同时访问方式,互斥共享方式。

虚拟

  • 指通过某种技术把一个物理实体变成若干个逻辑上的对应物。(虚拟机)

异步性

  • 系统中并发执行的多道程序“走走停停”,以不可预知的速度向前推进

§1.4 操作系统的主要功能

OS定义

  • OS是直接控制和管理计算机硬件、软件资源,合理地对各类作业进行调度,以方便用户使用的程序集合
    — 处理机管理功能
    — 存储器管理功能
    — 设备管理功能
    — 文件管理功能
    — 用户接口

主要任务

  • 为多道程序的运行提供良好的运行环境,以保证多道程序能有条不紊、高效地运行,并能最大程度地提高系统中各种资源的利用率和方便用户的使用。

§1.5 OS结构设计

  • 传统的操作系统结构
  1. 无结构操作系统
    OS是由众多的过程直接构成,各过程之间可相互调用,但OS内部不存在任何结构,所以这种OS是无结构的,又称为整体系统结构。

    缺点:
    既庞大又杂乱,缺乏清晰的程序结构;程序错误多,调试难、阅读难、理解难、维护难。

  2. 模块化OS结构
    OS是采用“模块化程序设计”技术,按其功能划分为若干个独立的模块,管理相应的功能,同时规定好各模块之间的接口,以实现其交互,对较大模块又可按子功能进一步细分下去。

    优点
    提高了OS设计的正确性、可理解性和可维护性
    增强了OS的可适用性
    加速了OS的开发过程

    缺点
    模块及接口划分较困难
    从功能上划分模块,未区别共享资源和独占资源
    由于管理的差异,使OS结构变得不够清晰

  3. 分层式OS结构
    分层式OS结构是对模块化结构的一种改进,它按分层式结构设计的基本原则,将OS 划分为若干个层次,每一层都只能使用其底层所提供的功能和服务,从硬件开始,在其上面一层一层地自底向上增添相应功能的软件,这种OS结构称为分层式OS结构。

    优点:
    每一步设计都建立在可靠的基础上,结构更清晰
    调试和验证更容易,正确性更高

    缺点:
    系统效率降低。只能是单向依赖,每执行一个功能,自底向上需要穿越很多个层次。

  • 现代操作系统结构: 微内核的OS结构
  1. ** 微内核技术的主要思想**
    在OS内核中只留下一些最基本的功能,而将其他服务分离出去,由工作在用户态下的进程来实现,形成所谓“客户/服务器”模式。客户进程可通过内核向服务器进程发送请求,以取OS的服务。

  2. 微内核
    精心设计的,能实现现代OS核心功能的小型内核,它小而精炼,运行在核心态下,开机后常驻内存,不会因内存紧张而换出,它为构建通用OS提供了一个重要基础。

  3. 微内核的基本功能

    • 进程管理
    • 存储器管理
    • 进程通信管理
    • I/O设备管理
  4. 特点

    • 小而精练
    • 系统的灵活性和可扩充性好
    • 系统的可靠性高
    • 适用于分布式系统

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述


§1.6 常见的OS

OS:

  1. MS DOS
  2. MS Windows
  3. UNIX
  4. Linux
  5. 手持系统(handheld system)
    嵌入式操作系统 (Embedded OS)
  • MS DOS的结构

  1. DOS BIOS(Basic Input/Output System):由一组与硬件相关的设备驱动程序组成,实现基本的I/O功能;
  2. DOS核心:提供一套独立于硬件的系统功能:内存管理、文件管理、字符设备和输入/输出、实时时钟等;
  3. 命令处理程序:对用户命令进行分析和执行;
    在这里插入图片描述

通用开放软件环境(COSE)

  • 一些主要的UNIX系统厂商在1993年成立了通用开放软件环境联盟。这些厂家当时包括HP,IBM,Sun,SCO,Novell及UNIX系统实验室。

自由软件基金会(FSF)

  • 目标是创建一个与UNIX类似的系统,名为HURD。
  • 他们的这项工程称为GNU(全称为GNU’s Not UNIX)。
  • 在编写HURD的过程中,他们编写了许多非常有用的、可移植性很强的流行实用程序。
  • 例如GNU C 编译器gcc。用户既可以得到这些工具的源代码而自行进行编译,也可以得到能立即运行的可执行文件。

Linux的体系结构

  • 用户应用:文字处理工具、浏览器等用户应用程序;
  • 系统服务:它是操作系统的一部分,但不是内核。包括窗口系- 统、命令解释程序、应用开发工具(编译器、系统库等)
  • Linux内核:操作系统内核,完成资源管理功能。
  • 硬件控制 :系统中的所有物理设备控制 。
    在这里插入图片描述

在这里插入图片描述

手持系统(handheld system) && 嵌入式操作系统 (Embedded OS)

  • 个人数字助理(Personal Digital Assistants, PDAs)
  • 蜂窝电话(Cellular telephones)
  • 存在的问题
    • 内存有限(32M – 64M)
    • 低速处理器(只有个人计算机处理器速度的几分之一)
    • 屏幕小(5英寸×3英寸)
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章