当前位置: 首页 > news >正文

网站建设需要具备什么条件建立网站赚钱

网站建设需要具备什么条件,建立网站赚钱,微信管理系统软件,用jsp做的汽车网站内存管理单元(MMU)负责虚拟地址到物理地址的转换。MMU通过翻译表将程序使用的虚拟地址映射到实际的物理内存位置#xff0c;实现对内存的动态管理和隔离。这不仅允许更灵活的内存分配#xff0c;还提高了系统的安全性和稳定性。了解MMU的工作原理对于开发底层代码、BootLoade…内存管理单元(MMU)负责虚拟地址到物理地址的转换。MMU通过翻译表将程序使用的虚拟地址映射到实际的物理内存位置实现对内存的动态管理和隔离。这不仅允许更灵活的内存分配还提高了系统的安全性和稳定性。了解MMU的工作原理对于开发底层代码、BootLoader和驱动程序都很重要。 文章目录 1 虚拟地址和物理地址2 MMU2.1 表的条目2.2 表的查找2.3 多级页表 3 例:ARMv8-A的地址空间4 总结 1 虚拟地址和物理地址 关于虚拟地址的概念可以参考我的这篇文章物理地址、链接地址、加载地址、虚拟/逻辑地址的区别 虚拟地址允许操作系统控制呈现给应用程序的内存视图如操作系统可以控制内存的可见性和访问权限。这使得操作系统能够对应用程序进行沙盒化并提供对底层硬件的抽象。它的好处如下 操作系统可以将多个分散的物理内存区域呈现为一个连续的虚拟地址空间供应用程序使用。 软件开发人员无需关心物理内存地址转换是由操作系统和硬件共同完成的。 在实际应用中每个应用程序可以使用自己的一组虚拟地址将其映射到物理系统中的不同位置。当操作系统将控制权从一个应用程序转移到另一个应用程序时它会更新内部的映射表以确保当前运行的应用程序的虚拟地址正确地映射到物理内存中的相应位置。这样即使不同应用程序使用相同的虚拟地址它们实际上指向不同的物理内存位置从而实现了应用程序之间的隔离和独立性。 虚拟地址和物理地址之间通过翻译页表进行映射 翻译页表存储在内存中通常由操作系统进行管理。页表的映射可以通过软件配置从而改变虚拟地址和物理地址之间的映射关系。 2 MMU MMU执行地址转换操作它包含以下组成部分 表遍历单元包含从内存读取翻译页表的逻辑翻译后备缓冲区(TLBs,Translation Lookaside Buffers)用于缓存最近使用的页表翻译转换结果这可以加快内存的访问速度 由软件发出的内存地址都是虚拟的虚拟地址传递给MMUMMU检查TLBs缓存若缓存未命中则表遍历单元将从主存中读取数据并缓存如下所示 在访问内存之前虚拟地址必须被翻译为物理地址。另外在Armv6及更高版本的处理器上数据缓存使用物理地址(物理标记的地址)存储数据。所以在进行缓存查找时需要提前将虚拟地址翻译为物理地址。 2.1 表的条目 翻译页表通过将虚拟地址空间分成相等大小的块并为每个块在表中提供一个条目来实现。 翻译表的每个条目对应着虚拟地址空间中的一个块而这些块会被映射到物理地址空间的相应块。表中的第0个条目对应着虚拟地址空间中的块0第1个条目对应着块1以此类推。表中条目包含相应物理内存块的地址以及访问该物理地址时要使用的属性(如读/写/缓存策略等)。 2.2 表的查找 表查找发生在虚拟地址转化为物理地址的时候。此时由软件发出的虚拟地址被分为两部分 上图为单层查找的例子。其中 Which entry应该查找哪个块条目并将其用作对表的索引该块条目包含虚拟地址对应的物理地址Offset in block块内的偏移翻译过程中不会改变 2.3 多级页表 在2.1中的图为单级查找虚拟地址空间被分割成相等的大小。但在实际的页表实现中是使用多级页表实现的。 一级表将虚拟地址空间分割成大块该表中的每个条目可以指向相等大小的物理内存块或者它可以指向另一个表该表将块细分为更小的块。下图是三级多级页表的示例 在Armv8-A架构中多级表的最大级别为四级(0到3)。虚拟地址空间被划分为不同级别的表第一级表负责将虚拟地址空间分成大块而每个表项可以指向相等大小的物理内存块或者指向另一个表该表将块细分为更小的块。这种多级结构的设计使得系统可以同时处理大范围的内存块和较小的内存块从而在灵活性和效率之间找到平衡。 大块相对于小块需要更少的读取级别来进行转换大块在TLB中缓存更高效小块使软件能够对内存分配进行精细控制但小块在TLB中的缓存效率较低因为小块需要通过多个级别进行多次读取以进行转换为了平衡使用大映射的效率与使用小映射的灵活性以获得最佳性能操作系统必须管理这种权衡 3 例:ARMv8-A的地址空间 不同的异常等级(Exception Level,EL)通常对应于不同的特权级别和内存空间。每个EL都有其自己的地址空间和访问权限。这种设计提供了对系统资源的分隔和管理同时允许在不同特权级别上运行不同的软件实体如用户空间应用程序、操作系统内核、虚拟化管理器等。 这里以ARMv8-A为例在ARMv8-A架构中有以下4种EL EL0(用户空间) 通常用于运行普通应用程序代码访问受限制的用户空间内存。EL1(内核空间) 用于运行操作系统内核代码具有更高的特权级别和对系统资源的更广泛访问权限。EL2(hypervisor级别) 通常用于虚拟化支持允许运行多个虚拟机实例。它有自己的地址空间和控制权可以管理虚拟机的运行。EL3(监管者级别) 可能用于处理一些与系统安全性相关的任务例如启动过程中的安全任务。它也有自己的地址空间和特权级别。 图中EL前面的NS表示Non-Secure图表中未显示Secure EL0、Secure EL1和Secure EL2的虚拟地址空间实际上EL0-EL3也是有安全空间的。 由于存在多个虚拟地址空间指定一个地址属于哪个地址空间变得很重要 例如NS.EL2:0x8000指的是在非安全hypervisor级别(NS.EL2)的虚拟地址空间中的0x8000。在其它的EL中也可以有自己的0x8000. 虚拟化 从上图还可知Non-secure EL0和Non-secure EL1的虚拟地址经过两组表。这些表支持虚拟化并允许hypervisor(即虚拟机监控程序位于NS.EL2)虚拟化虚拟机所看到的物理内存视图。 虚拟化分为两个阶段 (1)第一阶段表由操作系统控制它将虚拟地址翻译为中间物理地址(intermediate physical addresses,IPA)。在第一阶段中操作系统认为这些IPAs是物理地址空间。 (2)第二阶段虚拟机监控程序(hypervisor)控制第二组翻译它将IPAs翻译为物理地址 尽管表格格式存在细微的差异但通常阶段1和2的地址翻译过程是相同的。 4 总结 本文大概地介绍了一下ARM中MMU的概念主要是了解一下在Cortex-A核中有这样一个内存管理单元它可以将虚拟地址转化为物理地址。对于具体地内存是如何映射的TLB表格是如何缓存的等知识都与操作系统的实现有关后续我们学到Linux再介绍。
http://www.zqtcl.cn/news/281286/

相关文章:

  • 繁昌网站建设如何用易语言做网站
  • 电子商务网站建设财务分析建立网站方法
  • 大专学网站开发wordpress显示数据库请求
  • 诸暨网站制作设计公众号文章怎么导入到wordpress
  • 网站死链怎么办青岛网站制作企业
  • 已经有域名 怎么修改网站网站推广找客户
  • 网站的制作建站人增加网站流量
  • 向国旗致敬做时代新人网站广州网站建设公司排名
  • 阿里云域名怎么做网站对网站进行seo优化
  • 响应式网站建设合同11月将现新冠感染高峰
  • 做网站客户一般会问什么问题百度云网盘资源分享网站
  • 网站设计中超链接怎么做艺术设计
  • 卡盟网站建设wordpress优化代码
  • 做网站需要什么技术员商城型网站开发网站建设
  • discuz做地方门户网站网站大全免费完整版
  • 莆田人做的网站一天赚2000加微信
  • 阿里云网站访问不了怎么办做网站二维码
  • 手机商城网站建设可采用的基本方式有
  • 网站备案管理做广告公司网站建设价格
  • 绵阳专业网站建设公司上海外贸公司排名榜
  • 如何做英文系统下载网站快速排名工具免费
  • 苏州建网站必去苏州聚尚网络网页视频提取在线工具
  • 网站建设服务市场分析百度集团
  • 网站怎么企业备案信息做网站业务员如何跟客户沟通
  • 如何网站推广知名的集团门户网站建设费用
  • 网站入口设计规范专门做喷涂设备的网站
  • 最简单网站开发软件有哪些企业管理培训课程培训机构
  • 桂城网站制作公司wordpress 导航网站
  • 一个公司做网站需要注意什么条件网站备案 登陆
  • 百度网站介绍显示图片装修公司一般多少钱一平方