• 操作系统基础


    三种离散分配方式:

    1.分页式存储管理方式,将进程的逻辑地址空间分成若干个页,并为各页加以编号。在分页系统中,允许将进程的各个页离散地存储在内存的任意物理块中,为保证进程仍然能够正确地运行,即能在内存中找到每个页面所对应的物理块,系统又为每个进程建立了一张页面映像表,简称页表。页表的作用是实现从页号到物理块号的地址映射。

    优点:体现在内存空间的管理上。以页面作为内存分配的基本单位,能有效地提高内存利用率。

    缺点:容易产生“页内碎片”,页面大小不能过大也不能过小。

    2.分段存储管理方式,提供了二维的逻辑地址,即每个段既包含了一部分地址空间,又表示了逻辑关系。逻辑地址由段号(段名)和段内地址(段内偏移量)组成。

    优点:体现在地址空间的管理上。(1)以段作为内存分配的基本单位,它能够更好地满足用户多方面的需要。(方便编程,信息共享,信息保护,动态增长,动态链接);

    (2)不会产生内部碎片.

    3.段页式存储管理方式,是分页和分段原理的结合,即先将用户程序分成若干个段,再把每个段分成若干个页,并为每个段赋予一个段名。在段页式系统中,为了实现从逻辑地址到物理地址的变换,系统中需要同时配置段表和页表。

    逻辑地址向物理地址转化:若给定逻辑地址A,页面大小L,页号P,页内地址d。p = int(A/L)  d = A mod L    物理地址 = 块的大小(L)× 块号 + 页内地址d

    优点:既有分段系统的便于实现,分段可共享、易于保护、可动态链接等一系列优点,又能像分页系统那样,很好地解决内存的外部碎片问题。

     

  • 相关阅读:
    从killchain的角度检测APT攻击
    挖洞实战之信息泄露与前端加密
    浅析MySQL恶意服务器读取文件原理
    MySQL决胜秋招Section
    MySQL窗口函数
    MySQL集合运算
    Chrome 插件神仙网站推荐 !直接就能下,2022年最新!
    Clickhouse分桶聚合后填充零值问题
    深入理解C#笔记
    JavaCV音视频开发宝典:视频转码和转封装有什么区别?使用rtsp拉流转推到rtmp案例来讲一下转码和转封装实现的区别
  • 原文地址:https://www.cnblogs.com/yjw9520/p/5040065.html
Copyright © 2020-2023  润新知