操作系统内存管理机制和Python垃圾回收机制 学习笔记

什么是分页机制

逻辑地址和物理地址分离的内存分配管理方案

  1. 程序的逻辑地址划分固定大小的页
  2. 物理地址划分为同样大小的帧
  3. 通过页表和对应逻辑地址和物理地址

什么是分段机制

分段是为了满足代码的一些逻辑需求

  1. 数据共享、数据保护、动态链接
  2. 通过短标来对应逻辑地址和物理地址
  3. 每个段内部是连续的内存分配,段和段之间是离散分配的

分段和分页的区别

  1. 页是出于内存利用率的角度提出的离散分配机制
  2. 段是出于用户的角度,用于数据保护,数据隔离等用途的管理机制
  3. 页的大小是固定的,操作系统决定;段大小不确定,用户程序确定

什么是虚拟内存

通过把一部分暂时不用的内存信息放到硬盘上

  1. 局部性原理,程序运行时只有部分必要的信息装入内存
  2. 内存中暂时不需要的内容放到硬盘上
  3. 系统似乎提供了比实际内存大得多的容量,称之为虚拟内存

什么是内存抖动

本质上是频繁的页调度行为

  1. 频繁的页调度,进程不断产生缺页中断
  2. 置换了一个页,又不断再次需要这个页
  3. 运行的程序太多;页面替换策略不好,终止进程或增加物理内存

Python垃圾回收机制原理

python无需我们手动回收内存

  1. 引用计数为主(缺点:循环引用无法解决)
  2. 引用标记清除和分带回收解决引用计数的问题
  3. 引用计数为主+引用标记清除和分带回收为辅
    算法原理
发布了15 篇原创文章 · 获赞 4 · 访问量 1030

猜你喜欢

转载自blog.csdn.net/qq_37316153/article/details/104300496