操作系统笔记(王道)(持续更新中)

本文介绍了操作系统的概念、特征和发展历程,强调了并发和共享作为基本特征,并详细阐述了中断和异常机制,以及系统调用在操作系统中的作用。操作系统通过中断处理外部和内部事件,而系统调用则为用户程序提供了访问内核服务的接口,确保系统安全和稳定性。
摘要由CSDN通过智能技术生成

操作系统(Operating System,OS

一.认识操作系统

1.1_1:操作系统的概念,功能和目标

  • 概念:控制和管理整个计算机系统的硬件和软件资源,并合理地组织调度计算机的工作和资源的分配,以提供给用户和其他软件方便的接口和环境,它是计算机系统中最基本的系统软件。
  • 补充:进程(processing):一个程序的执行过程。执行前需要将该程序放到内存中,才能被cpu处理。

图片

1.1_2:操作系统的特征

  • 四个特征:并发,共享,虚拟,异步;其中并发,共享是最基本的特征,二者互为存在条件
  1. 并发:指两个或多个事件在同一时间间隔内发生。这些事件宏观上是同时发生的,但微观上是交替发生的。

注意:并行:指两个或多个事件在同一时刻同时发生

  • 操作系统的并发性:计算机系统中同时存在多个运行着的程序。

一个单核处理器(cpu)同一时刻只能执行一个程序,因此操作系统会负责协调多个程序交替执行(这些程序微观上是交替执行的,但宏观上看起来就像在同时执行)

  1. 共享:即资源共享,指系统中的资源可供内存中多个并发执行的程序共同使用。
  • 两种资源共享的方式:互斥共享方式同时共享方式

(1):互斥共享方式:系统中的某些资源,虽然可以提供给多个进程使用,但一个时间段内只允许一个进程访问该资源
例如:视频聊天,qq和微信。

(2):同时共享方式:系统中的某些资源,允许一个时间段内由多个进程**“同时”**对它们进行访问
例如:同时给qq和微信发文件

注意:“同时”:往往是宏观的,微观上,这些进程可能是交替对该资源进行访问(即分时共享)

  1. 虚拟:指把一个物理上的实体变为若干的逻辑上的对应物。物理实体是实际存在的,而逻辑上对应物是用户感受到的。
  • 两种虚拟技术:空分复用技术(虚拟存储器技术)和时分复用技术(虚拟处理器)
  1. 异步:在多道程序环境下,允许多个程序并发执行,但由于资源有限,进程的执行不是一贯到底的。而是走走停停,以不可预知的速度向前推进,这就是进程的异步性。
  • 小结:图片

1.1_3 操作系统的分类与发展

  1. 手工操作阶段
  2. 批处理阶段:单道批处理,多道批处理(系统资源并行利用)。
  3. 分时操作系统:计算机以时间片为单位轮流为各个用户/作业服务,各个用户可以通过终端与计算机进行交互。优点:用户请求可以被即时响应,解决人机交互问题
  4. 实时操作系统:能优先响应一些紧急任务。分为硬实时系统软实时系统
  5. 其他操作系统。
  • 小结:图片

1.1_4 操作系统的运行机制体系结构与

  • 指令:处理器cpu能识别,执行的最基本的命令。如加法指令。

两种指令:特权指令;非特权指令

  • 两种处理器状态 :(用程序状态字寄存器(PSW)中都某标志为来标识当前处理器状态)

用户态(目态):此时cpu只能执行非特权指令
核心态(管态):特权指令,非特权指令都可以执行

  • 两种程序:

内核程序:操作系统的内核程序是系统的管理者,既可以执行特权指令也可以执行非特权指令,运行在核心态
应用程序:为保证系统能安全运行,普通应用程序只能执行非特权指令,运行在用户态

  • 操作系统的内核:是计算机上配置的底层软件,是操作系统最基本,最核心的部分。实现操作系统内核功能的那些程序就是内核程序。

操作系统内核图:图片


  • 计算机系统的层次结构:图片

  • 操作系统层次结构:

时钟管理:实现计时功能;
原语:一种特殊的程序。最接近硬件的部分,这种程序的运行具有原子性。
图片


  • 操作系统的体系结构:图片

大内核与微内核的区别:
注意:变态(cpu状态的转换)的过程是有成本的,要消耗不少时间,频繁地变态会降低系统性能

图片


  • 小结:图片

1.1_5: 中断和异常

  • 中断机制的诞生:为解决串行程序执行的问题,引入中断机制,实现了多道程序并发执行。

  • 本质发生中断就意味着需要操作系统介入,开展管理工作 。由于操作系统的管理工作(比如进程切换、分配I/O设备等)需要特权指令,因此cpu要从用户态转为核心态。中断可以使cpu从用户态切换为核心态,使操作系统获得计算机等控制权。有了中断,才能实现多道程序并发执行。

    注意:
    用户态到核心态的切换是通过中断实现的,且中断是唯一的途径
    核心态到用户态到切换是通过执行一个特权指令,将PSW到标识设置为用户态。

  • 中断的概念和作用

    1. 当中断发生时cpu会立即进入核心态
    2. 当中断发生后,当前运行的进程暂停运行,并由操作系统内核对中断进行处理
    3. 对于不同的中断信号,会进行不同的处理
  • 中断的分类:内中断和外中断(本质区别:信号源)

    内中断:也称异常、例外、陷入;信号来源于cpu内部,与当前执行的指令有关。

    陷阱、陷入(trap):有意而为之的异常,如系统调用
    故障(fault):由于错误条件引起的,可能被故障处理程序修复,如缺页
    终止(abort):不可恢复的致命错误造成的结果,终止处理程序不再将控制返回给引发终止的应用程序,如除以0.

    外中断:中断;信号来源于cpu外部,与当前执行的指令无关。

    I/O中断请求:
    人工干预:

    外中断的处理过程:
    图片
    Step1:执行完每个指令之后,cpu都要检查当前是否有外部中断信号
    Step2:如果检测到外部中断信号,则需要保护被中断进程的cpu环境(如程序状态字PSW、程序计数器PC、各种通用寄存器)
    Step3: 根据中断信号类型转入相应的中断处理程序
    Step4:恢复原进程的cpu环境并退出中断,返回原进程继续往下执行

小结:图片


1.1_6:系统调用

  1. 系统调用:操作系统给应用程序(程序员/编程人员)使用的接口,可以理解为一种可供应用程序调用的特殊函数,应用程序可以通过系统调用来请求获取操作系统内核的服务
  2. 应用程序通过系统调用请求操作系统的服务。而系统中的共享资源都由操作系统内核统一掌管,因此凡是与共享资源有关的操作(如存储分配、I/O操作、文件管理等),都必须通过系统调用的方式向操作系统内核提出服务请求,由操作系统内核代为完成。这样可以保证系统的稳定性和安全性,防止用户进行非法操作。
  3. 系统调用的过程:传递系统调用参数->执行陷入指令(用户态)->执行相应内请求程序处理系统调用(核心态)->返回应用程序。
    • 注意:
    1. 陷入指令(trap指令)是在用户态执行对,执行陷入指令之后立即引发一个内中断,使cpu进入核心态
    2. 发出系统调用请求是在用户态,而对系统调用对相应处理核心态下进行*。
  4. 小结:图片

第二章:进程管理

2.1.1:进程的概念、组成、特征

  • 程序:是静态的,就是个存放在磁盘里的可执行文件,就是一系列的指令集合。
  1. 进程(Process)的概念:是动态的,是程序的一次执行过程。同一程序多次执行会对应多个进程
  • 进程是进程实体的运行过程,是系统进行资源分配调度的一个独立单位。
  • 进程是动态的,进程实体是静态的;进程实体反应了进程某一时刻的状态就像视频中的一帧。
  • 进程’‘用进程实体(进程映像)更准确’‘:由PCB程序段(代码:指令序列),数据段(运行过程中产生当各种数据)。其中PCB是给操作系统用的,程序段和数据段是给进程自己用的。
    • 操作系统对进程进行管理工作所需的信息都存在PCB中
    • PCB是进程存在的唯一标志,当进程被创建时,操作系统为其创建PCB,当进程结束时,会回收其PCB。
    • 进程控制块(PCB):包括进程描述信息(PID,UID),进程控制和管理信息(CPU、磁盘、网络流量;进程当前状态:就绪态阻塞态/运行态),资源分配清单(正在使用哪些文件,I/O,内存),处理机相关信息(PSW各种寄存器用于实现进程切换)
      • PID:当进程被创建时,操作系统会为该进程分配一个唯一的、不重复的“身份证号”。
      • ID(UID):基本的进程描述信息,可以让操作系统区分各个进程

程序的运行
图片

小小结:图片

  1. 组成:
  2. 特征:
  • 10
    点赞
  • 93
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

it小白666

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值