操作系统学习(二)内存管理

来源:互联网 发布:显卡升级软件 编辑:程序博客网 时间:2024/06/05 05:20
  1. 内存管理四个方面描述
    1) 内存的分配与回收
    2) 地址映射(逻辑地址到物理地址)
    3) 内存的保护与拓展。
  2. 页式存储管理
    1) 页式存储管理的内存分配与回收
    内存分配:查看对应的页表里面有没满足空闲部分,有的话分配,没有拒绝。
    内存回收:回收在内存里面对应的页表以及页表所对应的内存。
    2) 地址映射
    程序中根据分页给出的逻辑地址可以计算出页号以及页内位移,根据页表查找出块号,再根据所知的块号以及块内位移得出物理地址。(假如页面大小为4k,逻辑地址为10372,则10372/4k的商为页号,10372%4k为页内位移,查表得块号为4则实际地址4*4k+2180)
    3)内存的保护
    主要是查看有没越界对应页表长度,设置读写权限。
    4)内存的拓展
    虚拟存储技术。
  3. 虚拟存储技术
    利用外存模拟内存的技术,就是内存装载某些页,外存存另外的页,需要时则进行页面置换
    抖动:刚刚置换的页面又被置换上。
    页面置换算法:FIFO,LRU,LFU
  4. 页式存储管理优缺点
    采用动态地址变化的页式存储管理解决了碎片的问题,但依然有小部分碎片。
  5. Linux分配算法
    伙伴分配:以2的k次方分配内存块,效率高,但很多时候容易产生内存碎片。会在链表中找对应内存块,如果不够则找下一个链表并将其一份为二合并之前的,直到找到为止。
    SLAB分配器:对于小块内存的分配与回收效率很高,避免碎片
原创粉丝点击