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

山东省住房和城乡建设厅网站山西seo排名

山东省住房和城乡建设厅网站,山西seo排名,为什么建设部网站进不去,建设博物馆网站X86分页机制 x86的分页单元支持两种分页模式:常规分页与扩展分页。 常规分页采用两级结构,固定页大小为4KB。线性地址被划分为三个字段: 页目录索引(最高10位)页表索引(中间10位)页内偏移&am…

X86分页机制

x86的分页单元支持两种分页模式:常规分页与扩展分页。

常规分页采用两级结构,固定页大小为4KB。线性地址被划分为三个字段:

  • 页目录索引(最高10位)
  • 页表索引(中间10位)
  • 页内偏移(最低12位)

扩展分页启用时采用单级结构,页大小为4MB。线性地址被划分为两个字段:

  • 页目录索引(最高10位)
  • 页内偏移(最低22位)

页表结构

常规分页与扩展分页可混合使用。页目录条目中有一个标志位用于指定当前使用哪种分页模式。专用寄存器CR3指向页目录的基地址,页目录条目则指向页表的基地址。

页目录和页表均包含1024个条目,每个条目占4字节。
所有页表均存储于物理内存中,页表地址均为物理地址。

页表条目字段

  • 存在位(Present/Absent)
  • 页框号(PFN):物理地址的最高20位
  • 访问位(Accessed,硬件不自动更新,供操作系统维护使用)
  • 脏位(Dirty,硬件不自动更新,供操作系统维护使用)
  • 访问权限(读/写)
  • 特权级(用户/管理员)
  • 页大小标志(仅页目录条目有效,置位时启用扩展分页)
  • 缓存控制位(PCD-禁用页缓存,PWT-直写模式)

Linux分页实现

Linux采用四级分页模型以支持64位架构。下图展示了如何通过虚拟地址的各字段索引页表并计算物理地址:

Linux提供统一的API用于创建和遍历页表。内核与进程地址空间的创建及修改均通过通用代码实现,这些代码依赖宏和函数将通用操作适配到不同架构。

虚拟地址转物理地址示例(使用Linux页表API)

struct page *page; 
pgd_t pgd; 
pmd_t pmd; 
pud_t pud; 
pte_t pte; 
void *laddr, *paddr; pgd = pgd_offset(mm, vaddr);      // 获取页全局目录项 
pud = pud_offset(pgd, vaddr);     // 获取页上级目录项 
pmd = pmd_offset(pud, vaddr);     // 获取页中间目录项 
pte = pte_offset(pmd, vaddr);     // 获取页表项 
page = pte_page(pte);             // 获取对应物理页结构 
laddr = page_address(page);       // 获取逻辑地址 
paddr = virt_to_phys(laddr);      // 转换为物理地址 为兼容分页层级少于4级的架构(如x86 32位),部分宏/函数会被定义为空操作:static inline pud_t *pud_offset(pgd_t *pgd, unsigned long address) { return (pud_t *)pgd;  // 直接返回页全局目录项地址 } static inline pmd_t *pmd_offset(pud_t *pud, unsigned long address) { return (pmd_t *)pud;  // 直接返回页上级目录项地址 } 

转译后备缓冲器(快表,TLB)

使用虚拟内存时,由于页表的多级结构,地址转换可能需要额外1次(x86扩展分页)、2次(x86常规分页)或3次(x86 64位)内存访问。

快表(TLB)作为专用缓存用于加速虚拟地址到物理地址的转换,其特性如下:

  • 缓存分页信息(页框号、权限、特权级)
  • 基于内容可寻址存储器(CAM)实现
  • 容量极小(64-128条目)
  • 速度极快(并行搜索实现单周期访问)
  • CPU通常包含独立指令TLB(i-TLB)与数据TLB(d-TLB)
  • TLB未命中惩罚:可达数百时钟周期

与其他缓存类似,需注意TLB的一致性问题。例如:

  • 修改页表条目使其指向新的物理地址时,必须使旧TLB条目失效,否则MMU仍会使用旧的物理地址转换。

x86平台支持两种TLB失效操作:

  1. 单地址失效
mov $addr, %eax 
invlpg (%eax)  ; 强制刷新指定虚拟地址的TLB条目 
  1. 全局失效
mov %cr3, %eax 
mov %eax, %cr3  ; 通过重载CR3寄存器刷新全部TLB 

http://www.dtcms.com/wzjs/805.html

相关文章:

  • 寻找郑州网站建设济南seo网络优化公司
  • 建企业网站要多少钱引流推广软件
  • 电子政务门户网站建设最近三天的新闻大事简短
  • dede 网站地图模版如何申请百度竞价排名
  • 淄博专业网站建设价格网站收录查询网
  • 公司网站开发的国内外研究现状站长统计幸福宝下载
  • 长沙网站推广公司今日新闻简报
  • 做网站的人怎么上传内容的个人网页制作完整教程
  • 阿里云最低服务器可以做几个网站产品网络推广
  • 如何破解WordPress网站b站视频怎么快速推广
  • 海口网站制作网站免费建网站
  • 做钢材的网站正规营销培训
  • 网站这么推广百度seo算法
  • 部门网站建设工作总结seo短视频入口
  • 做品牌设计网站我想做网络推广找谁
  • 互联网大赛建设网站策划书网络竞价推广开户
  • 温岭 网站建设seo百度seo排名优化软件
  • 外币信用卡怎么做网站上用企业seo顾问服务
  • 徐州市住房和城乡建设局网站首页网站的seo方案
  • 上海怎么做网站十大接单推广app平台
  • 广州建设网站的公司简介搜索引擎营销的优缺点
  • 哪个网站做签约插画师好百度词条官网入口
  • 网络推广软件排行网站推广seo教程
  • 要做未来科技的网站怎么做seo查询软件
  • 怎么在网站后台做图片新闻全网优化哪家好
  • 网站制作的语言网络软文范例
  • 网站建设平台招商重庆森林百度云
  • 为什么很多公司没自己的网站知乎关键词排名优化
  • 济南seo网站排名优化工具国内十大软件培训机构
  • 深圳前海自贸区注册公司政策北京搜索引擎优化seo专员