【操作系统】操作系统内核

news2024/11/17 11:41:15

图灵机
在这里插入图片描述
当系统中有一个CPU的时候 ,MR就是它的状态
当系统中有n个CPU的时候,MR1,MR2…MRn 是它的状态

IRQ和NMI是低电平有效信号
NMI不可屏蔽中断

在这里插入图片描述
在这里插入图片描述
6502的CPU一共40个引脚

在这里插入图片描述
eflags寄存器里的 IF 表示 interrupt enable
1表示可以响应中断,0表示关中断

如果IF=0,程序又处于死循环,
那么这个处理器就相当于从操作系统离线了。

中断处理程序所做的事情,只有跳转

在这里插入图片描述

处理器如何处理中断:允许软件把代码放到中断处理位置,处理器接收中断信号的时候会把PC跳转到中断处理位置。

RISC-V的中断处理

在这里插入图片描述
中断保存
32个寄存器,PC计数器
CPU状态(是一个寄存器)
指令的计数(每个周期+1)
时钟计数
中断相关寄存器
中断地址中断原因

在这里插入图片描述
cte_init 定义在中断发生的时候,执行什么函数
iset 设置开关中断(IF)
程序在保护状态执行的时候无法关中断,会被操作系统直接中断,产生异常

在这里插入图片描述
中断时:额外开辟一块内存,把寄存器存到内存里

在这里插入图片描述
64位所有通用寄存器,cr3寄存器,都存到内存里了

在这里插入图片描述
x86所有通用寄存器,cr3寄存器,都存到内存里了

特殊寄存器

rip 【指向代码】:rip寄存器是一个64位的寄存器,用来存储下一条要执行的指令的地址。它是在64位模式下才有的,相当于32位模式下的eip寄存器。rip寄存器可以实现一种新的寻址模式,叫做rip相对寻址,就是用rip加上一个偏移量来计算有效地址。

rsp【指向堆栈】:rsp寄存器是一个64位的寄存器,用来存储当前函数调用的栈栈顶的地址。它是在64位模式下才有的,相当于32位模式下的esp寄存器。rsp寄存器可以用来保存函数的局部变量、参数、返回地址等信息,方便函数的调用和返回。

rbx【指向内存地址】:rbx寄存器是一个64位的基址寄存器,一般用于访问内存的基址。它是被调用者保存的寄存器,也就是说在函数调用时,如果要使用它,必须先保存它的原始值,然后在函数返回时恢复它。

rbp【指向内存地址】rbp寄存器是一个64位的栈帧指针,用于标识当前栈帧的起始位置。栈帧是函数调用时在栈上分配的一块内存空间,用来保存函数的局部变量、参数、返回地址等信息。rbp寄存器可以通过偏移量来访问栈帧中的数据。它也是被调用者保存的寄存器。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/486216.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

破解马赛克有多「容易」?

刷短视频时,估计大家都看过下面这类视频,各家营销号争相曝光「一分钟解码苹果笔刷背后内容」的秘密。换汤不换药,自媒体们戏称其为「破解马赛克」,殊不知让多少不明真相的用户建立起了错误的认知,也让苹果笔刷第 10086…

【网络编程】demo版UDP网络服务器实现

文章目录 一、引入二、服务端实现2.1 创建套接字socket2.2 绑定bind2.3 启动服务器2.4 IP的绑定2.5 读取数据recvfrom 三、用户端实现3.1 绑定问题3.2 发送数据sendto 四、源码 一、引入 在上一章【网络编程】socket套接字中我们讲述了TCP/UDP协议,这一篇就是简单实…

保护移动设备免受恶意软件侵害优秀方法

几天前,移动恶意软件攻击增加了500%显然,我们大多数人都不知道不能很好地保护我们的手机下面小编揭秘有效保护移动设备免受恶意软件侵害的最佳方法。 1、使用移动反恶意软件 恶意软件很容易感染智能手机和平板电脑,因此在设备上安装可靠的…

douyin 之xgorgon0404参数

如果我们想要看抖音的数据,在抓包的时候,会发现有一个xgorgon参数,在请求接口的时候,只需要在请求头携带xgorgon参数,就能获得响应后的数据。 目前抖音的xgorgon0404算法已经还原了, 下面是一个请求的demo。代码如下:…

计算机网络可靠传输的三种基本实现机制

可靠传输的means 在数据链路层会给上层网络层提供可靠传输或者不可靠传输,不可靠传输是指检测到传输差错的时候只是丢弃该分组而不进行任何处理,而可靠传输会给发送者一个信号进行重发该分组。 以下给出的三种基本实现机制是提出一些问题,慢…

截图的背景色如何去除?这里介绍一个小工具

屏幕截图,是方便常用的功能。例如从网页或者视频中截图。但是有时候想去除截图中的背景颜色,怎么办?下面这个案例介绍如何去掉截图中的蓝色背景色。 这个小工具就能帮你方便实现。Web端的便捷小工具链接: http://www.artvily.com/renderCase…

深度学习框架发展趋势

深度学习方法的发展是推动深度学习框架进步的最大动力,因此深度学习框架的功能和设计应顺应 算法和模型的发展趋势: 第一,易用性。深度学习领域仍处于快速发展期,参与者和学习者不断增加,新模型大量提出。因 此&#…

深入篇【C++】类与对象:拷贝构造函数详解

深入篇【C】类与对象:拷贝构造函数详解 ①.拷贝构造函数Ⅰ.概念Ⅱ.特征1.重载形式之一2.参数唯一3.形参必须传引用4.编译器的拷贝函数5.典型调用场景 ②.总结: ①.拷贝构造函数 Ⅰ.概念 在创建对象时,能否创建一个与已存在对象一模一样的新…

[架构之路-186]-《软考-系统分析师》-5-数据库系统 - 关系型数据库、操作型数据库、数据集市、数据仓库的区别?

目录 总体架构: 一、数据库 二、关系型数据库 三、SQL与数据库 四、 分布式数据库 五、数据仓库 1. 概述 2. 架构 3、数据仓库的主要特征 3、1 面向主题性 3、2 集成性 3、3 非易失性 3、4 时变性 总体架构: 一、数据库 数据库是“按照数据…

【链表OJ题 1】反转链表

目录 题目来源: 代码实现 1、方法一 1.1分析 2、方法二 2.1 分析 题目来源: 力扣 题目描述: 代码实现 1、方法一 struct ListNode* reverseList(struct ListNode* head) {struct ListNode* prev NULL, * cur head;while (cur){st…

基础IO+文件

基础IO 回顾文件回顾文件操作库函数调用接口写文件-w读文件-r 系统调用打开文件-open写文件-write 文件操作本质文件描述符fd文件描述符的分配规则重定向 FILE缓冲区模拟实现缓冲区总结 理解文件系统磁盘物理结构存储结构逻辑结构 文件系统软硬链接 动静态库动态库和静态库生成…

Kafka上的优化经验

1. 平滑扩容 Motivation kafka扩容⼀台新机器的流程 假如集群有 3 个 broker ,⼀共有 4 个 TP ,每个 3 副本,均匀分布。现在要扩容⼀台机器, 新 broker 加⼊集群后需要通过⼯具进⾏ TP 的迁移。⼀共迁移 3 个 TP 的副…

JavaScript高级程序设计(第2版)——读书笔记

文章目录 第1章 JavaScript简介第2章 在HTML中使用JavaScript第3章 基本概念第4章 变量、作用域、内存问题第5章 引用类型第6章 面向对象的程序设计第7章 匿名函数第8章 BOM第9章 客户端检测第10章 DOM第11章 DOM2和DOM3第12章 事件第13章 表单脚本第14章 错误处理与调试第15章…

java 的参数传递

一、疑惑引入 首先&#xff0c;我们从一个例子来引出这个问题&#xff1a; public static void main(String[] args) throws IOException {List<String> mockList Lists.newArrayList("a", "b");System.out.println("1: " mockList);L…

【GAMES101】04 Viewing Transformation

1.View/Camera Transformation&#xff08;视图变换&#xff09; 1、将准备拍摄的对象移动到场景中指定位置。&#xff08;模型变换&#xff0c;Model Transform&#xff09; - 模型导入场景中从模型坐标系转换成世界坐标系 2、将相机移动到准备拍摄的位置&#xff0c;将它对准…

【网络】-- TCP协议

其中TCP就属于传输层&#xff0c;并且端口号也是在传输层起作用。 目录 TCP协议报头 可靠性 32位序号 16位窗口大小 六个标记位 三次握手四次挥手 RST PSH URG 16位紧急指针 FIN socksetopt 可靠性机制 确认应答(ACK)机制 超时重传机制 连接管理机制 三大机…

03-角色维护 尚筹网

一、分页操作 目标 将角色数据进行分页显示 思路 点击后台主页面的权限管理->角色维护&#xff0c;通过view-controller进入角色分页显示的页面&#xff0c;浏览器加载页面的数据并初始化一些数据&#xff08;页码、页大小、关键词等&#xff09;&#xff0c;调用分页函…

基于Open3D的点云处理3-可视化

可视化接口 API open3d.visualization.draw_geometries(*args, **kwargs)重载函数1 draw_geometries(geometry_list, window_name’Open3D’, width1920, height1080, left50, top50, point_show_normalFalse, mesh_show_wireframeFalse, mesh_show_back_faceFalse)geometry…

B树

文章目录 B树的定义和性质为什么需要B树B树的定义 B树的模拟实现节点的数据结构B树的插入B树的删除 B树的模拟实现 B树的定义和性质 我们之前已经对 平衡搜索二叉树有了一定的了解&#xff0c;学习了两种树——AVL树 和 红黑树&#xff0c;下面介绍一下B树 为什么需要B树 数…

Nacos 服务网格⽣态

博主介绍&#xff1a;✌全网粉丝4W&#xff0c;全栈开发工程师&#xff0c;从事多年软件开发&#xff0c;在大厂呆过。持有软件中级、六级等证书。可提供微服务项目搭建与毕业项目实战、定制、远程&#xff0c;博主也曾写过优秀论文&#xff0c;查重率极低&#xff0c;在这方面…