博客
关于我
【操作系统】段式存储中 逻辑地址转物理地址详细分析
阅读量:783 次
发布时间:2019-03-25

本文共 1092 字,大约阅读时间需要 3 分钟。

段式存储是一种计算机操作系统中的内存管理方式,它通过将物理内存划分为多个段来存储不同类型的数据或程序。每个段都有唯一的标识符(段号)和一系列属性,如段长、访问权限等。段式存储的核心优势在于其灵活性和保护机制,但也存在一些缺点,如内存碎片化和管理复杂性。

段式存储的关键概念

段是存储管理的基本单位,每个段可以存储程序或数据,具有独特的标识符和长度。段描述符记录了段的详细信息,如起始地址、长度、访问权限等。段选择子由段号和偏移量组成,用于标识要访问的段。

段式存储的优缺点

优点:

  • 更灵活的内存管理:支持不同大小和类型的段,适合多种应用需求。
  • 存储保护:通过段访问权限控制,增强系统安全性。
  • 共享与分离:不同程序或模块可以拥有独立的段,便于共享或分离。
  • 缺点:

  • 内存碎片化:不同大小的段可能导致内存浪费。
  • 管理复杂性:段描述符和段表增加了操作系统内核的复杂性。
  • 段式存储的地址转换流程

    段式存储中的逻辑地址转换涉及以下步骤:

  • 程序通过段选择子(段号+偏移量)访问内存。
  • 操作系统查找段表,获取相应段的段描述符。
  • 通过段描述符获取段起始地址和长度。
  • 计算物理地址:逻辑地址偏移量与段起始地址之和。
  • 注意事项:

  • 访问权限检查:确保操作在合法范围内。
  • 段不存在异常:处理无效段选择子。
  • 页故障处理:在分段分页式系统中,可能需要进一步转换为物理地址。
  • 分页式存储的地址转换流程

    分页式存储的逻辑地址转换步骤:

  • 通过页号查找页表,获取物理页框号。
  • 将逻辑页内偏移量与物理页框号组合,得到物理地址。
  • 注意事项:

  • 页表管理:维护逻辑页号到物理页框的映射。
  • 页故障处理:加载不在内存中的页面。
  • 页大小选择:权衡内存利用率与页表项数量。
  • 分段式与分页式的对比

    两种内存管理方案在地址转换上有明显差异。分段式适合需要灵活段划分的场景,而分页式则更适合统一内存管理。两者的结合(分段分页式)在提升性能和安全性方面具有优势。

    示例分析

    根据段表:

    • 段号0:基地址1100,长度800
    • 段号1:基地址3310,长度50
    • 段号2:基地址5000,长度200
    • 段号3:基地址4100,长度580
    • 段号4:基地址2000,长度100

    以下逻辑地址无法转换为物理地址:

    • (0, 790):790 < 800,有效
    • (2, 88):88 < 200,有效
    • (1, 30):30 < 50,有效
    • (3, 290):290 < 580,有效
    • (2, 88):88 < 200,有效
    • (4, 98):98 < 100,有效
    • (0, 810):810 > 800,越界,无法转换

    因此,答案:D. (0,810)和(4,120)

    转载地址:http://sybuk.baihongyu.com/

    你可能感兴趣的文章
    nginx看这一篇文章就够了
    查看>>
    Nginx知识详解(理论+实战更易懂)
    查看>>
    Nginx简单介绍
    查看>>
    Nginx系列6之-rewirte功能使用案例总结
    查看>>
    nginx线程模型理解
    查看>>
    nginx自动摘除和恢复后端服务,进行自动检测
    查看>>
    Nginx虚拟主机配置
    查看>>
    Nginx访问控制_登陆权限的控制(http_auth_basic_module)
    查看>>
    nginx访问控制配置
    查看>>
    Nginx负载均衡
    查看>>
    Nginx负载均衡和F5的区别---系统运维工作笔记001
    查看>>
    nginx负载均衡和反相代理的配置
    查看>>
    nginx负载均衡器处理session共享的几种方法(转)
    查看>>
    nginx负载均衡的5种策略
    查看>>
    nginx负载均衡的5种策略(转载)
    查看>>
    nginx负载均衡的五种算法
    查看>>
    Nginx负载均衡(upstream)
    查看>>
    nginx转发端口时与导致websocket不生效
    查看>>
    Nginx运维与实战(二)-Https配置
    查看>>
    Nginx部署_mysql代理_redis代理_phoenix代理_xxljob代理_websocket代理_Nacos代理_内网穿透代理_多系统转发---记录021_大数据工作笔记0181
    查看>>