管态和目态

简介: 管态和目态

是什么

1 . 管态又叫特权态,系统态或核心态。CPU在管态下可以执行指令系统的全集。通常,操作系统在管态下运行。 
2.  目态又叫常态或用户态。机器处于目态时,程序只能执行非特权指令。

特点

1. 用户态 不能直接使用系统资源,也不能改变CPU的工作状态,并且只能访问这个用户程序自己的存储空间
2. 管态   则该程序就可以访问计算机的任何资源,即它的资源访问权限不受限制。

目的

 区分内核态和用户态两种操作方式的目的是为了保护操作系统程序
 通常CPU执行两种不同性质的程序:一种是操作系统内核程序;另一种是用户自编程序或系统
 外层的应用程序。对操作系统而言,这两种程序的作用不同,前者是后者的管理者,因此“管理
 程序”要执行一些特权指令,而“被管理程序”出于安全考虑不能执行这些指令。所谓特权指令,
 是指计算机中不允许用户直接使用的指令,如I/O指令、 置中断指令,存取用于内存保护的寄存
 器、送程序状态字到程序状态字寄存器等指令。

用户态切换到内核态

1. 系统调用。这是用户态进程主动要求切换到内核态的一种方式,用户态进程通   过系统调用
申请使用操作系统提供的的服务程序完成 工作。系统调用机制的核心还是使用了操作系统为用
户特别开放的一个中断来实现。申请使用操作系统提供的的服务程序完成 工作。系统调用机制
的核心还是使用了操作系统为用户特别开放的一个中断来实现。
2. 异常。当CPU在执行用户态程序时,发生了某些事先不可知的异常,这时会触发由当前运行
进程切换到处理此异常的内核相关程序中,也就转到了内核态,例如缺页异常。进程切换到处
理此异常的内核相关程序中,也就转到了内核态,例如缺页异常。
3. I/O设备的中断。当I/O设备完成用户请求操作后,会向CPU发出相应的中断信号,这时CPU
 会暂停执行下一条即将要执行的指令,转 而去执行与中断信号对应的的处理程序,如果先前执
 行的指令是用户态下的程序,那么这个转换的过程自然也就发生了由用户态到内核态 的切换。
 例如硬盘读写操作完成,系统会切换到硬盘读写的中断处理程序中执行后续的操作。会暂停执
 行下 一条即将要执行的指令,转 而去执行与中断信号对应的的处理程序,如果先前执行的指令
 是用户态下的程序,那么这个转换的过程自然也就发生了由用户态到内核态 的切换。例如硬盘
 读写操作完成,系统会切换到硬盘读写的中断处理程序中执行后续的操作。
 其中系统调用可以认为是用户进程主动发起的,异常和外部设备中断则是被动的。

相关文章
|
6月前
|
机器学习/深度学习 固态存储 安全
表情识别-情感分析-人脸识别(代码+教程)
表情识别-情感分析-人脸识别(代码+教程)
|
6月前
|
Shell Linux 程序员
【Linux】Shell 命令以及运行原理
【Linux】Shell 命令以及运行原理
|
编解码 定位技术
谷歌地图分辨率表
版权声明:欢迎评论和转载,转载请注明来源。 https://blog.csdn.net/zy332719794/article/details/73949818 ...
2106 0
|
3月前
|
JavaScript 前端开发
vue3通过render函数实现一个菜单下拉框
【8月更文挑战第18天】vue3通过render函数实现一个菜单下拉框
161 0
|
15天前
|
人工智能 Serverless 数据处理
极速启动,函数计算弹性降本能力再升级
在数字化转型的大潮中,云计算成为推动创新和优化业务流程的关键力量。作为阿里巴巴集团的核心产品之一,函数计算(Function Compute)引领着 Serverless 计算的新时代。本文将深入探讨函数计算如何通过技术革新实现提效降本,以及其在 AI 业务、数据处理和 Web 应用等多个领域的广泛应用。
|
2月前
|
Java 微服务
SpringBoot整合SMS短信服务
本文介绍了如何在SpringBoot项目中整合阿里云SMS短信服务,包括添加依赖、配置文件、配置类、服务层接口和实现类,以及控制器层的实现,用于发送短信验证码。
SpringBoot整合SMS短信服务
|
6月前
|
机器学习/深度学习 数据采集 算法
【Python 机器学习专栏】机器学习在医疗诊断中的前沿应用
【4月更文挑战第30天】本文探讨了机器学习在医疗诊断中的应用,强调其在处理复杂疾病和大量数据时的重要性。神经网络、决策树和支持向量机等方法用于医学影像诊断、疾病预测和基因数据分析。Python作为常用工具,简化了模型构建和数据分析。然而,数据质量、模型解释性和伦理法律问题构成挑战,需通过数据验证、可解释性研究及建立规范来应对。未来,机器学习将更深入地影响医疗诊断,带来智能和精准的诊断工具,同时也需跨学科合作推动其健康发展。
411 0
|
6月前
|
JavaScript Go 项目管理
云效常见问题之使用gitlab仓库将代码合并评审环节集成到云效如何解决
云效(CloudEfficiency)是阿里云提供的一套软件研发效能平台,旨在通过工程效能、项目管理、质量保障等工具与服务,帮助企业提高软件研发的效率和质量。本合集是云效使用中可能遇到的一些常见问题及其答案的汇总。
198 1
|
6月前
|
测试技术
【软件工程】高效需求分析在软件工程中的精要
【软件工程】高效需求分析在软件工程中的精要
194 0