首页 > 其他分享 >[操作系统]访问一个逻辑地址发生了什么

[操作系统]访问一个逻辑地址发生了什么

时间:2024-08-24 19:14:58浏览次数:8  
标签:操作系统 访问 cache 物理地址 地址 内存 页表

当CPU想要访问一个逻辑地址的时候,我们需要做两个步骤,地址转换和内存访问

地址转换

逻辑地址是程序内部使用的地址,并非真正的物理地址。

从逻辑地址到物理地址的映射,由页表来完成,页表的内容包括,逻辑页号,物理页号,有效位,有效位表示这一页是否在内存中。

页表存放在内存中,如果需要频繁访问页表,需要花上一些时间,所以我们为页表做了缓存,也就是快表,TLB
TLB中存放最近使用的页表项,TLB的速度比页表要快,当我们需要查页表的时候,同时去查询快表和慢表,快表中查询到可以取消慢表中的查询。

如果快表慢表中都没有命中,那么发生缺页中断,交给操作系统去加载这一页到内存中,并修改慢表,然后重新去查询页表这次就会命中了。

这样我们得到了程序的物理页号。

image

访问内存

得到物理页号之后,加上页内偏移,就可以得到物理地址。
那我们去直接访问这个物理地址吗?并不是

我们设置了cache缓存来加快访问物理地址的过程,
也就是说,cache中存放了最近访问过的物理块中的信息,如果发现cache中有我们想要的信息就直接从cache中去取,否则再去内存中取,这样就加快了访存的速度

image

标签:操作系统,访问,cache,物理地址,地址,内存,页表
From: https://www.cnblogs.com/DCFV/p/18378122

相关文章

  • [操作系统]死锁
    死锁死锁是指在并发系统中,两个或多个进程因为互相等待对方释放资源而无法继续执行的状态。死锁发生的条件通常包括以下四个条件:互斥条件(MutualExclusion):至少有一个资源被标记为只能被一个进程占用,即一次只能有一个进程使用该资源。请求与保持条件(HoldandWait):一个进程在持......
  • 【读书笔记-《30天自制操作系统》-8】Day9
    本篇的主题围绕着内存管理进行展开。首先编写了内存容量获取的程序,接下来详细讲解了内存管理的具体内容,以及两种实现内存管理的方式。1.内存容量获取前面已经实现了访问内存的扩展,能够使用的内存大大增加了。但是不同的应用程序在运行时,对内存的使用会有不同的要求,这就需......
  • 【访问者模式】设计模式系列:解锁复杂对象结构的秘密武器
    文章目录访问者模式详解:理论与实践1.引言1.1访问者模式的历史背景1.2模式的动机与应用场景1.3为什么选择访问者模式2.访问者模式概述2.1定义2.2问题场景2.3模式结构3.模式优缺点分析3.1优点3.2缺点4.访问者模式实现步骤4.1创建抽象元素接口4.2实现具体......
  • IP地址的五大分类及回环地址
    你好,我是沐爸,欢迎点赞、收藏和关注。个人知乎IP地址根据网络号的不同可以分为五大类,即A类、B类、C类、D类和E类。以下是这五大类IP地址的详细介绍:1.A类地址地址范围:1.0.0.1~126.255.255.254特点:第1个字节为网络地址,其他3个字节为主机地址。网络地址的最高位始终是0......
  • 通过Bat脚本获取Git某个账户下所有仓库的URL地址
    一、需求来源我个人之所以有这个需求,是因为我想定期备份我Git上的所有私人项目二、前期必备获取私人访问令牌要获取GitLab账号的私有访问令牌,可以按照以下步骤进行操作:1.打开GitLab网站并登录到你的账号。2.点击右上角的用户头像,然后选择"Settings"(设置)。3.在侧边栏中......
  • 常用Linux操作系统分类
    Linux操作系统由于其开源的特点,受到世界各国计算机软件企业和Linux操作系统爱好者的青睐。因此,各种发行版本的Linux操作系统出现在计算机操作系统市场和开源社区。为了能让大家对各种Linux操作系统进行区分认识,就让我对其进行梳理分类。一、按发展体系分类第一类是基于Debia......
  • 用FinalShell远程登录VMware的Linux操作系统登陆不上,反复弹出要求输入密码的界面
    问题描述:用FinalShell远程登录VMware的Linux操作系统,其中IP地址输入正确,虚拟机和自己的电脑可以互相ping通,但是就是连接不上,反复弹出要求输入密码的界面:那么可能就是Linux登录账户的用户名和home目录下的用户名不一致导致的,解决办法如下:解决办法:1.去Linux操作系统中的终端......
  • 【Linux】IP地址和MAC地址
    一、MAC地址MAC地址是用来识别数据链路层中相连的节点。它的长度为48位比特位,也就是6字节。MAC地址是具有唯一性的,它的唯一性是在网卡硬件生产时就已经制定,所以一个网卡一个MAC地址。这就意味着,一台主机如果有多个网卡,那么就有多个MAC地址。二、IP地址IP协议有两个版本......
  • 阿里云服务器很久未用,服务访问异常
    很久(大概一两个月)都没在使用自己的个人阿里云服务器,当自己再次访问时,竟然报错无法访问,这让自己很是意外!! 然后自己开始排查问题。登录服务器查看docker服务,发现全部正常。 可是当自己打算重新启动时发现问题,竟然无法重启,这就很奇怪了,服务不都好好的嘛,怎么就不能重启呢。......
  • 哈工大-操作系统L26
    I/O与显示器一.设备的功工作cpu向外设的寄存器发送命令,cpu去执行其它命令,当外设完成之后向cpu发出中断,cpu处理中断,读取数据到内存二.文件视图直接向设备控制器的寄存器写,需要做活动操作,很麻烦open("/dev/xxx")打开不同设备对应的设备文件根据设备属性数据分......