2018-2019-1 20165201 《信息安全系统设计基础》第9周学习总结

2018-2019-1 20165201 《信息安全系统设计基础》第9周学习总结


学习内容总结

第9章 虚拟存储器

理解虚拟存储器的概念和作用

  为解决内存小而作业大、作业多的矛盾,以及执行过程中只是把当前运行需要的那部分程序和数据装入内存。所以,操作系统把各级存储器统一管理起来。就是说,应该把一个程序当前正在使用的部分放在内存,而其余部分放在磁盘上,就启动执行它。操作系统根据程序执行时的要求和内存的实际使用情况,随机地对每个程序进行换入/换出。

  这样,就给用户提供一个比正式的内存空间大的多的地址空间,这就是虚拟存储器。所谓虚拟存储器是用户能作为可编址内存对待的存储空间,在这种计算机系统中虚地址被映射成实地址。简单地说,虚拟存储器:是由操作系统提供的一个假想的特大存储器。就是说,虚拟存储器并不是实际的内存,它的大小比内存空间大的多;用户感觉所能使用的“内存”非常大,但这是操作系统对物理内存的扩充。

理解地址翻译的概念
  使用虚拟寻址时,CPU通过生成一个虚拟地址(VA)来访问主存,这个虚拟地址在被送到存储器之前先转换成适当的物理地址。将一个虚拟地址转换为物理地址的任务叫做地址翻译。

理解存储器映射
存储器映射:Linux通过将一个虚拟存储器区域与一个磁盘上的对象(object)关联起来,以初始化这个虚拟内存区域的内容的过程。

虚拟存储器中的块分为:未分配的,缓存的,未缓存的
未分配的:这一块的虚拟存储器不映射于任何块
缓存的:这一块的虚拟存储器映射于已经存在于DRAM中的物理页
未缓存的:这一块的虚拟存储器映射于存在于磁盘中的虚拟页

掌握动态存储器分配的方法
  当运行时需要额外虚拟存储器时,使用动态内存分配器维护一个进程的虚拟存储器区域。
  分配器有两种基本风格。两种风格都要求应用显式地分配块。不同在于由哪个实体来负责释放已分配地块:
  显示分配器:要求应用显式地释放任何已经分配的块。
  隐式分配器:要求分配器检测一个已分配块何时不再被程序所使用,就释放这个块。也叫做垃圾收集器。

理解垃圾收集的概念
  动态内存分配器,自动释放程序不再需要的已分配块。
  垃圾收集器将内存视为一张有向可达图,从根节点出发,不可达的堆节点视为垃圾。两个节点的指向关系是其中一个节点包含另一个的位置信息。

学习进度条

代码行数(新增/累积) 博客量(新增/累积) 学习时间(新增/累积) 重要成长
目标 2000行 20篇 200小时
第一周 83/83 1/1 8/8
第六周 75/158 2/3 10/18
第八周 75/158 3/6 10/28
第九周 75/158 2/8 13/41

参考资料

posted @ 2018-12-02 23:57  磁暴魔王特斯拉  阅读(170)  评论(0编辑  收藏  举报