2017-2018-1 20155231 《信息安全系统设计基础》第11周学习总结
2017-12-03 23:24
225 查看
2017-2018-1 20155231 《信息安全系统设计基础》第11周学习总结
教材学习内容总结
理解虚拟存储器的概念和作用虚拟存储器是硬件异常、硬件地址翻译、主存、磁盘文件和内核软件的完美交互。
虚拟存储器作为虚拟的工具:
唯一的虚拟抵制是作为到数组的索引的。
磁盘上数据的内容被缓存在主存中。
VM系统通过将虚拟存储器分割为称为虚拟页(VP)。
每个虚拟页的大小为P=2^P字节。
物理存储器被分割为物理页(PP,也称为页帧),大小为P字节。
在任何时刻,虚拟页面的三个子集:
未分配的:VM系统还未分配的页
缓存的:当前缓存在物理存储器中的已分配页
未缓存的:没有缓存在物理存储器中的已分配页
理解地址翻译的概念
地址翻译是一个N元素的虚拟地址空间(VAS)中的元素和一个M元素的物理空间地址(PAS)中元素之间的映射,MAP:VAS→PAS∪Ø
利用TLB加速地址翻译
理解存储器映射
Linux通过将一个虚拟存储器与一个磁盘上的对象关联起来,以初始化这个虚拟存储器区域的内容,这个过程称为存储器映射。
虚拟存储器区域可以映射到两种类型的对象中的一种:
Unix文件系统中的普通文件
匿名文件
一旦一个虚拟页面被初始化,它就在一个由内核维护的专门的交换文件之间换来换去。
交换文件也叫做交换空间或者交换区域。
一个对象可以被映射到虚拟存储器的一个区域,要么作为共享对象,要么作为私有对象。
一个映射共享对象的虚拟存储器区域叫做共享区域。类似的,还存在私有区域。
私有对象使用写时拷贝技术被映射到虚拟存储器中。
掌握动态存储器分配的方法
动态存储器分配器维护着一个进程的虚拟存储器区域,称为堆(heap)。
对于每个进程,内核维护着一个变量brk,它指向堆的顶部。
分配器将堆视为一组不同大小的块的集合来维护。
每个块就是一个连续的虚拟存储器片,要么是已分配的,要么是空闲的。
分配器有两种基本风格:
显式分配器:要求应用显式地释放任何已分配的块。
隐式分配器:要求分配器检测一个已分配块何时不再被程序所使用,那么就释放这块。
隐式分配器页叫做垃圾收集器,而自动释放未使用的已分配的块的过程叫做垃圾收集。
理解垃圾收集的概念
垃圾收集器:动态存储分配器
垃圾:程序不再需要的已分配块
垃圾收集:自动回收堆存储的过程
了解C语言中与存储器有关的错误
间接引用坏指针
读为初始化的存储器
允许栈缓冲区溢出
假设指针和它们所指向的对象是相同大小的
造成错位错误
引用指针,而不是它所指向的对象
误解指针运算
引用不存在的变量
引用空闲堆块中的数据
引起存储器泄漏
教材学习中的问题和解决过程
问题1:mallock和free函数问题1解决方案:程序通过调用malloc函数来从堆中分配块。
malloc函数返回一个指针,指向大小为至少size字节的存储器块,这个块会为可能包含在这块内的任何数据对象类型做对齐。
free函数来释放已分配的堆块
代码调试中的问题和解决过程
问题1:实验4问题1解决方案:
代码托管
上周考试错题总结
博客结对及互评
点评模板:
博客中值得学习的或问题:xxx
xxx
...
代码中值得学习的或问题:
xxx
xxx
...
其他
本周结对学习情况
- [结对同学学号1](博客链接) - 结对照片 - 结对学习内容 - XXXX - XXXX - ...
其他(感悟、思考等,可选)
xxxxxx
学习进度条
代码行数(新增/累积) | 博客量(新增/累积) | 学习时间(新增/累积) | 重要成长 | |
---|---|---|---|---|
目标 | 5000行 | 30篇 | 400小时 | |
第11周 | 200/2200 | 2/2 | 11/20 |
耗时估计的公式
:Y=X+X/N ,Y=X-X/N,训练次数多了,X、Y就接近了。
参考:软件工程软件的估计为什么这么难,软件工程 估计方法
计划学习时间:11小时
实际学习时间:20小时
改进情况:
(有空多看看现代软件工程 课件
软件工程师能力自我评价表)
参考资料
《深入理解计算机系统V3》学习指导...
相关文章推荐
- 2017-2018-1 20155211 《信息安全系统设计基础》第11周学习总结
- # 2017-2018-1 20155231 《信息安全系统设计基础》第4周学习总结
- 2017-2018-1 20155315 《信息安全系统设计基础》第11周学习总结
- 2017-2018-1 20155231 《信息安全系统设计基础》第6周学习总结
- 2017-2018-1 20145237 《信息安全系统设计基础》第11周学习总结
- 2017-2018-1 20155326 《信息安全系统设计基础》第11周学习总结
- 2017-2018-1 20155231 《信息安全系统设计基础》第13周学习总结
- 2017-2018-1 20155231 《信息安全系统设计基础》第5周学习总结
- 2017-2018-1 20155316 《信息安全系统设计基础》第11周学习总结
- 2017-2018-1 20155231 《信息安全系统设计基础》第9周学习总结
- 2017-2018-1 20155231 《信息安全系统设计基础》第1周学习总结
- 2017-2018-1 20155231 《信息安全系统设计基础》第7周学习总结
- 2017-2018-1 20155226 《信息安全系统设计基础》第11周学习总结
- 2017-2018-1 20155329 《信息安全系统设计基础》第11周学习总结
- 20155331 2017-2018 1 《信息安全系统设计基础》第11周学习总结
- 2017-2018-1 20155222 《信息安全系统设计基础》第11周学习总结
- 2017-2018-1 学号20155311 《信息安全系统设计基础》第11周学习总结
- 2017-2018-1 20155202 《信息安全系统设计基础》第11周学习总结