02操作系统的运行机制和体系

操作系统的运行机制和体系

预备知识

1. 什么是指令?

答: “指令” 就是处理器能识别、执行的最基本命令

​ 例: C语言 -> 机器语言指令 , 一个高级语言代码翻译可能会对应多条指令

指令分为: 特权指令(内存清零) 、非特权指令(普通运算指令)

2.CPU 如何判断当前是否可执行特权指令?

答: CPU两种状态:用户态 (目态), 核心态 (管态)

​ 当CPU为用户态,只能执行非特权指令 , CPU核心态执行 特权指令、非特权指令。CPU状态由程序状态寄存器(PSW)中某标志位识别当前CPU状态。例 1 为核心态 , 0 为 用户态。

在这里插入图片描述

操作系统的内核

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

在这里插入图片描述

部分操作系统未将 (对系统资源管理)分为系统内核
在这里插入图片描述

操作系统的体系结构优点缺点
大内核高性能内核功能少,结构清晰,方便维护
微内核结构混乱 ,难以维护需要频繁的在核心态和用户态之间切换。性能低

小节:

  1. 特权指令只能在核心态下执行
  2. 内核程序只能在核心态下执行
  3. 核心态、用户态之间的切换(后续)
中断和异常

中断机制的诞生:为了实现多道程序并发执行而引入的一种技术。

本质:发生中断就意味着需要操作系统介入,开展管理工作

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

问题 1 用户态、核心态之间的切换是怎么实现的?

答: “用户态”->“核心态” 通过中断实现,且中断是唯一途径 ,

​ “核心态” -> “用户态” 通过执行一个特权指令,将程序状态字(PSW)的标志位设置为“用户态”。

中断的分类

在这里插入图片描述

系统调用

问题1 : 什么是系统调用,有什么作用?

答: “系统调用” 是操作系统提供应用程序(程序员)使用的接口,可理解为可供应用程序调用的特殊函数,应用程序可以发出系统调用请求来获得操作系统的服务。

应用程序通过系统调用请求操作系统的服务,系统的各种共享资源由操作系统统一掌管,因此在用户程序中,凡是与资源有关的操作(存储分配、I/O操作、文件管理等),都必须通过系统调用的方式想操作系统提出服务请求,由操作系统代为完成,这样保证系统的稳定性和安全性,防止用户进行非法操作。

问题2 : 系统调用和库函数的区别?

在这里插入图片描述

普通应用程序可直接进行系统调用,也可使用库函数。有的库函数涉及系统调用,有的不涉及
编程语言向上提供库函数。有时会将系统调用封装成库函数,以隐藏系统调用的一些细节,使上层经行系统调用更加方便
操作系统向上提供系统调用
裸机

|

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值