计算机系统概述

os 基本概念

操作系统:计算机系统最基本的系统软件,硬件外的第一层软件,是对硬件的首次扩充,其他系统软件均依赖于os。

灵魂
核心
计算机系统
软件
操作系统

| 计算机系统 |
计算机系统的组成

应用程序:包括系统软件(如编译器(一段程序指令))和应用软件(如qq)。
操作系统:控制和管理软件和硬件资源;作为用户与硬件之间的接口;计算机开机时会被加载到RAM。
硬件:如CPU,主存等。

os基本特征

1.并发:多个程序宏观上同时进行,微观上交替进行,通过分时实现。
并行:同时发生(硬件支撑,如多处理机有多个cpu)

2.共享:分为互斥共享和同时共享。
互斥:一段时间内只允许一个进程访问。大多数资源是不可抢占的。
同时:允许交替访问资源。

  • 互斥和同时的共同点
    都不可同时访问资源

  • 互斥和同时的区别
    同步好比:任务 A 应在任务 B 之前执行
    互斥好比:任务 A 和任务 B 不能同时执行
    互斥是两个任务不可以同时运行,必须等待一个进程运行完后,另一个才能运行;而同步也是不能同时运行,但是必须要按照某种次序来运行,是一种更复杂的互斥。
    互斥并不限制任务的运行顺序,任务是无序的;而同步的任务之间则有顺序关系。

临界资源:一段时间内只允许一个进程访问的资源

  • 并发和共享的关系
    • 如果不能共享,则多个进程无法同时访问共享资源,也就没法实现并发。
    • 如果不能并发,则系统中只有一个程序运行,那么共享没有意义。
    • 并发和共享是最基本的特征,两者互为存在条件。

3.虚拟:多道提供,用户感觉上。

虚拟技术:时分复用技术,空分复用技术。

  • 虚拟处理器(时分复用技术)
  • 虚拟外设(时分复用技术)
  • 虚拟内存(空分复用技术:以时间换空间)

4.异步:因为进程并发执行,所以执行时走走停停,可能发生错误

os功能

1.管理计算机系统资源
处理机管理(进程管理)、存储器管理、文件管理(由文件系统管理)、设备管理

2.作为用户与硬件间的接口

  • 命令接口(用户):有shell命令解析器、命令解释器等
    • 联机(交互式):输入一条命令->解释程序->执行
    • 脱机(批处理):输入一堆命令->逐条解释执行
  • 程序接口(编程人员):又叫系统调用,广义指令
    • 为程序使用内核功能提供的接口,只能通过用户程序间接使用,效率较低

3.扩充机器
无软件->裸机
覆盖软件->虚拟机/扩充机器

os发展历程

1.手工操作阶段(机器等人、cpu利用不充分)

2.批处理阶段(主要缺点是缺少交互性,不是耗费内存)

  • 单道批处理系统(内存中只有一道作业)缺点:运行时等待I/O
  • 多道批处理系统
    • 内存中有多道作业;
    • 通过中断技术可实现I/O可与CPU并行工作;
    • CPU利用率、I/O利用率、内存吞吐量都上升
    • 操作系统开始出现

3.分时操作系统(无法满足紧急任务)
优先级+非抢占;
响应时间=用户数×时间片;
改善响应时间;
要求快速响应用户是分时系统出现的重要原因;
交互性好;

4.实时操作系统
优先级+抢占式;
实时操作系统在规定时间内完成来自外部的事件,资源利用率低,交互性差;
分为硬实时系统和软实时系统(及时、可靠);

5.网络操作系统(通信)

6.分布式操作系统(并行,资源共享,协同完成同一工作)

7.个人计算机操作系统

-多道程序设计技术提高资源利用率,制约、间断、共享是其基本特征;
-批处理,提高利用率,必须提供pcb;
-多道批处理要切换进程,开销大
-IBM-PC是微型计算机操作系统;
-cpu利用率=Tcpu/T总

现代操作系统都是多任务的,有并发(CPU与CPU)、并行(I/O与CPU)的特点

  • 多任务os:单处理机,多个任务,有并发与并行特点
  • 多处理机os:多重处理(并行);多任务处理(并发)

处理器运行模式

指令:
特权指令:这类指令权限高,不允许用户程序使用。
非特性指令:权限低,对其他用户没有影响。

处理器状态:
用户态:CPU只能执行非特权指令。
核心态:特权指令和非特权指令都可以执行。

两种程序:
内核程序:即可以执行特权指令又可以执行非特权指令,运行在核心态。
应用程序:只能执行非特权指令,运行在用户态。

中断
非特权指令
特权指令与非特权指令
执行一个特权指令
用户态
核心态
应用程序
内核程序
时钟管理
中断机制
原语
管理系统资源
时间片
进程管理
存储器管理
设备管理
截止时间等

特权指令:
1.置时钟指令,
2.有关I/O的指令,
3.访问程序状态的指令,
4.存取特殊寄存器的指令等

中断的分类:

  • 外部中断(来自cpu外部):
    • 输入输出操作发出请求信号
    • 用户强行终止一个进程
  • 内部中断(或异常,来自cpu内部):
    • Fault:缺页;
    • Trap:系统调用时使用的访管指令;
    • Abort:整除0;非法使用特权指令;

中断的处理过程:
发现–进程切换–>中断处理(os完成):

  • 返回,继续执行;
  • 终止,不能恢复。

进入中断处理的是os程序,需保存通用寄存器的内容,提供中断服务,保存中断屏蔽字,初始化中断向量表

·系统调用(函数调用不切换处理器状态)
系统调用发生在用户态,对系统调用的处理发生在核心态
·访管指令仅在用户态执行,执行后,转变为核心态
·用户态使用特权指令,属于访管中断
·进程调度是用算法决定cpu使用权,不需硬件的支持
·os不同,系统调用接口不同
·广义指令,即系统调用,在核心态下执行,存在于核心态,在用户态调用、发生
·输入输出必须在核心态下执行,关中断指令不可在用户态进行
·在核心态可执行除访管外的全部指令
·进程切换是系统调用执行中的事,发生在核心态
·子程序调用需保存pc,即下条指令的地址
·中断需保存pc和psw(程序状态字寄存器),并改为核心态。(中断隐指令自动保存,由硬件自动完成)
·从核心态到用户态是由操作系统程序执行后完成;从用户态到核心态由硬件自动完成
·命令解释程序在用户态执行

os结构

1.分层化
在这里插入图片描述

单向依赖,只能调用紧邻的低层,结构清晰,易于调试、扩充,不灵活、效率差

2.模块化
按功能划分

独立性
高内聚
低耦合
内部紧密程度高
模块间关联小

缺点:接口需求多

3.宏内核
各模块作为整体运行在核心态,如windows,Linux

4.微内核(结构比单一内核稳定,因为服务越少越稳定)
内核(小,只有基本硬件功能,只能通过微内核的‘消息传递机制’通信)
用户(多个服务器,利于分布式)

  • 应用‘机制’与‘策略’分离原理
    添加系统服务时,不必修改内核
  • 采用面向对象技术
  • 性能低(频繁切换开销大)
    使系统更高效
  • 基于客户服务器模式

5.外核
对机器分区,给虚拟机分配资源
优点:1.减少映射层 2.保持多个虚拟机不冲突

os引导

1.激活cpu,读boot程序(位于ROM),构建向量表,相应服务以实现
2.硬件自检 (通电post)
3.加载硬盘
4.加载MBR,找有os的主分区(活动与非活动)
5.识别含有os的活动分区
6.加载PBR,激活启动管理器
7.加载os(只将os内核存入内存,不是全部)

引导程序:
1.boot位于ROM,用于启动设备
2.启动管理器(os的引导程序)位于硬盘

虚拟机

将一台物理机器虚拟为多台物理机器,由管理程序模拟,真实硬件不执行,可安装多个os,每个虚拟机器都可独立运行一个操作系统,不同的虚拟机可运行不同的os

  • 25
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值