操作系统原理1

粗体内容# 第一讲:操作系统概述
操作系统是什么
操作系统是计算机系统的一个系统软件,是一些程序模块的集合
它们能以尽量有效、合理的方式组织和管理计算机软硬件资源
合理地组织计算机的工作流程,控制程序的执行并向用户提供各种服务功能
使得用户能够灵活、方便地使用计算机,使整个计算机系统高效率运行

操作系统的三个作用

资源的管理者
通过命令接口、编程接口等为用户提供各种功能服务
对硬件机器的扩展

资源的管理者

跟踪记录资源的使用状况
确定资源分配策略——算法
实施资源的分配和回收
提高资源利用率
保护资源的使用
协调多个进程对资源请求的冲突
从资源管理的角度——五大基本功能
进程/线程管理( CPU管理)
进程线程状态、控制、同步互斥、通信、调度、 ……
 存储管理
分配/回收、地址转换、存储保护、内存扩充、 ……
 文件管理
文件目录、文件操作、磁盘空间、文件存取控制、 ……
 设备管理
设备驱动、分配回收、缓冲技术、 ……
 用户接口
系统命令、编程接口

向用户提供各种服务

  • 在操作系统之上,从用户角度来看:
    操作系统为用户提供了一组功能强大、 方便易用的命令或系统调用
  • 典型的服务
    进程的创建、执行;文件和目录的操作; I/O设备的使用;各类统计信息; ……

对硬件机器的扩展

  • 操作系统在应用程序与硬件之间建立了一个等价的扩展机器(虚拟机)
  • 对硬件抽象,提高可移植性;比底层硬件更容易编程

操作系统的主要特征

并发
共享
虚拟
随机

并发: 指处理多个同时性活动的能力

由于并发将会引发很多的问题:活动切换、保护、相互依赖的活动间的同步
在计算机系统中同时存在多个程序运行,单CPU上
*宏观上: 这些程序同时在执行
*微观上: 任何时刻只有一个程序真正在执行,即这些程序在CPU上是轮流执行的
并行(parallel): 与并发相似,但多指不同程序同时在多个硬件部件上执行

共享(sharing):操作系统与多个用户的程序共同使用计算机系统中的资源(共享有限的系统资源)

操作系统要对系统资源进行合理分配和使用,资源在一个时间段内交替被多个进程所用
 互斥共享(如打印机)
 同时共享(如可重入代码、磁盘文件)

虚拟(Virtual):

 一个物理实体映射为若干个对应的逻辑实体--分时或分空间
 虚拟是操作系统管理系统资源的重要手段,可提高资源利用率

  • CPU--每个进程的"虚处理机"
  • 存储器--每个进程都有独立的虚拟地址空间( 代码+数据+堆栈)
  • 显示设备--多窗口或虚拟终端

随机:操作系统必须随时对以不可预测的次序发生的事件进行响应并处理

 进程的运行速度不可预知:多个进程并发执行,“走走停停” ,无法预知每个进程的运行
推进的快慢
 难以重现系统在某个时刻的状态(包括重现运行中的错误)

典型的操作系统框架

WINDOWS 操作系统的体系结构

物理硬件:硬件
内核态:
系统服务分发器
内核态可调用接口
执行体
内核 设备驱动程序 硬件抽象层 图形与窗口
用户态:
系统进程 服务进程 用户进程 环境子系统 动态链接库

操作系统分类

操作系统发展是随着计算机硬件技术、应用需求的发展、软件新技术的出现而发展的
目标: 充分利用硬件
提供更好的服务

传统操作系统的分类

  • 批处理操作系统
  • 分时系统
  • 实时操作系统
  • 个人计算机操作系统
  • 网络操作系统
  • 分布式操作系统
  • 嵌入式操作系统
批处理操作系统

工作方式

  1. 用户将作业交给系统操作员
  2. 系统操作员将许多用户的作业组成一批作业,输入到计算机系统中,在系统中形成一个自动转接的连续的作业流
  3. 启动操作系统
  4. 系统自动、依次执行每个作业
  5. 由操作员将作业结果交给用户
    追求目标
    提高资源利用率,增加作业处理吞吐量
    批处理系统中的作业包括:
     用户程序
     数据
     作业说明书(用作业控制语言编写)
    成批:
    通常由若干个作业组成,用户提交作业后只能等待处理结果,不能干预自己作业的执行
    批作业处理:
    对一批作业中的每个作业进行相同的处理:从磁带读入用户作业和编译链接程序,编译链接用户作业以生成可执行程序;启动执行;执行并输出结果
    问题:
    慢速的输入输出处理直接由主机来完成,输入输出时,CPU处于等待状态
    解决方案:
    卫星机:完成面向用户的输入输出(纸带或卡片),中间结果暂存在磁带或磁盘上
SPOOLING系统
  • 批处理系统的实现通常采用的技术
  • 1961年,英国曼彻斯特大学,Atalas机
  • Simultaneous Peripheral Operation On-Line(同时的外围设备联机操作,又称假脱发技术)
  • 思想:利用磁盘作缓冲,将输入、计算、输出分别组织成独立的任务流,使I/O和计算真正并行
  • 工作原理
     1、用户作业加载到磁盘上的输入井
     2、按某种调度策略选择几个搭配得当的作业,调入内存
     3、 作业运行的结果输出到磁盘上的输出井
     4、 运行结果从磁盘上的输出井送到打印机
分时操作系统

时间片(time slice)
操作系统将CPU的时间划分成若干个片段,称为时间片

操作系统以时间片为单位。轮流为每个终端用户服务,每次服务一个时间片
其特点是利用人的错觉,使用户感觉不到计算机在服务他人
追求目标:及时响应
响应时间:从终端发出命令到系统给予回答所经历的时间

通用操作系统

分时系统与批处理系统结合
原则:分时优先,批处理在后
“前台”:需要频繁交互的作业
“后台”:实践性要求不强的作业

实时操作系统

是指使计算机能及时响应外部事件的请求,在规定的严格时间内完成对该事件的处理,并控制所有实时设备和实时任务协调一致地工作
追求目标:
 对外部请求在严格时间范围内作出响应
 高可靠性

个人计算机操作系统

计算机在某一时间内为单用户服务
追求目标:
界面友好,使用方便
丰富的应用软件

网络操作系统

基于计算机网络,在各种计算机操作系统上,按网络体系结构协议标准开发的软件
功能:网络管理、通信、安全、资源共享和各种网络应用
追求目标:相互通信,资源共享

分布式操作系统
  • 分布式系统:或以计算机网络为基础,或以多处理机为基础, 基本特征是处理分布在不同计算机上
  • 分布式操作系统:是一个统一的操作系统,允许若干个计算机可相互协作共同完成一项任务。操作系统可将各种系统任务在分布式系统中任何处理机上运行,自动实现全系统范围内的任务分配、自动调度、均衡
    各处理机的工作负载
  • 处理能力增强、速度更快、可靠性增强、具有透明性
嵌入式操作系统

嵌入式系统
*  在各种设备、装置或系统中,完成特定功能的软硬件系统。汽车、手机、电视机、 MP3播放器
×  它们是一个大设备、装置或系统中的一部分,这个大设备、装置或系统可以不是“计算机”
× 通常工作在反应式或对处理时间有较严格要求环境中
嵌入式操作系统( Embedded Operating System)
运行在嵌入式系统环境中,对整个嵌入式系统以及它所操作、控制的各种部件装置等等资源进行统一协调、调度、指挥和控制的系统软件

操作系统的另一种分类(TANENBAUM)

 大型机操作系统
 服务器操作系统
 多处理机操作系统
 个人计算机操作系统
 掌上计算机操作系统
 嵌入式操作系统
 传感器节点操作系统
 实时操作系统
 智能卡操作系统

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值