20145314郑凯杰《信息安全系统设计基础》第7周学习总结 part B
20145314郑凯杰《信息安全系统设计基础》第7周学习总结 part B
上篇博客反思与深入
首先根据本周第一篇博客,娄老师给我的评论,我开始进行局部性的深入研究:
分为两个步骤,一是知识点深入,二是用实践深入:
①知识点
1、局部性有两种形式:时间局部性(temporal locality)和空间局部性(spatial locality)。在一个具有良好时间局部性的程序中,被引用过一次的存储器位置很可能在不远的将来再被多次引用;在一个具有良好空间局部性的程序中,如果一个存储器位置被引用了一次,那么程序很可能在不远的将来引用附近的一个存储器位置。
2、重复引用同一个变量的程序有良好的时间局部性。对于具有步长为k的引用模式的程序,步长越小,空间局部性越好;在存储器中以大步长跳来跳去的程序空间局部性会很差。
②实践操作
图1:

分析:
- 由于sum会被多次引用,因此具有时间局部性。
- 由于数组v的被顺序访问,因此具有空间局部性。
- 这里是连续访问v的元素,称这种访问方式为具有步长为1的引用模式。
图2:

分析:
- 由于sum会被多次引用,因此具有时间局部性。
- 由于数组a的被顺序访问,因此具有空间局部性。这两点均同上,而且空间局部性更加突出。
- 也是连续访问a中的元素,步长不变。
图3:

分析:
变化很大:
- 由于sum会被多次引用,因此具有时间局部性。此点不变。
- 空间局部性上,并不是顺序访问,所以影响很差。
- 是跳跃访问,步长急速增大,随着步长增大,局部性下降。
图4:

分析:
我的排名是:
从好到坏:
clear1>clear2>clear3;
理由是:clear1程序里,执行的程序是先大循环,再小循环1,完毕后再小循环2。每个循环相对独立,顺序访问。
clear2程序里,执行的程序是大循环,小循环1+小循环2,有一定空间跳跃。
clear3程序里,执行的就是直接数组间跳跃,跳跃性更大,所以空间局限性更差。
存储器层次结构
熟记这张图:

知识重点突破 磁盘
磁盘操作
磁盘以扇区大小的块来读写数据。
访问时间的分类:
(1)寻道时间
——移动传动臂所用的时间。
依赖于读/写头以前的位置和传动臂在盘面上移动的速度。
通常为3-9ms,最大可达20ms。
(2)旋转时间
——驱动器等待目标扇区的第一个位旋转到读/写头下
依赖于盘面位置和旋转速度。
最大旋转延迟=1/RPM X 60secs/1min (s)
平均旋转时间是最大值的一半。
(3)传送时间
依赖于旋转速度和每条磁道的扇区数目
平均传送时间= 1/RPM x 1/(平均扇区数/磁道) x 60s/1min
访问一个磁盘扇区内容的平均时间为平均寻道时间,平均旋转延迟和平均传送时间之和。
根据课本393页的示例可以得出结论:
1.主要时间是寻道时间和旋转延迟。
2.将寻道时间x2是估计磁盘访问时间的简单而合理的方法。
也就是说:本部分主要需要记住的就是一个主要公式:
Taccess=Tavg seek + Tavg rotation + Tavg transfer
练习题6.3:
Tmax rotation = 60/15000 *1000 =4 ms
Tavg rotation = 1/2 Tmax rotation
Taccess = Tavg seek + Tavg rotation + Tavg transfer= 10.008ms
代码托管截图及链接
托管链接(逐个托管含注释)
http://git.oschina.net/qiaokeli26/linux
托管过程:
图5:

图6:

学习进度条
| 代码行数(新增/累积) | 博客量(新增/累积) | 学习时间(新增/累积) | 重要成长 | |
|---|---|---|---|---|
| 目标 | 5000行 | 30篇 | 400小时 | |
| 第四周 | 0/600 | 1/2 | 38/38 | |
| 第五周 | 435/1100 | 2/4 | 60/60 | |
| 第六周 | 540/1350 | 6/7 | 90/90 | |
| 第七周 | 664/1500 | 9/9 | 120/120 |
20145314郑凯杰《信息安全系统设计基础》第7周学习总结 part B的更多相关文章
- 20165223《信息安全系统设计基础》第九周学习总结 & 第八周课上测试
目录 [第九周学习总结] 教材内容总结 [第八周课上测试] (一)求命令行传入整数参数的和 (二)练习Y86-64模拟器汇编 (三)基于socket实现daytime(13)服务器和客户端 参考资料 ...
- 20145314郑凯杰《信息安全系统设计基础》GDB调试32位汇编堆栈分析
20145314郑凯杰<信息安全系统设计基础>GDB调试32位汇编堆栈分析 本篇博客将对第五周博客中的GDB调试32位汇编堆栈进行分析 首先放上以前环境配置的图: 图1: 测试代码: #i ...
- 20145314郑凯杰《信息安全系统设计基础》第9周学习总结 PART B
20145314郑凯杰<信息安全系统设计基础>第9周学习总结 PART B 明确教材学习目标 注意每个系统调用的参数.返回值,会查帮助文档 阅读教材,完成课后练习(书中有参考答案),考核: ...
- 20145314郑凯杰《信息安全系统设计基础》第八周复习总结 Part A
20145314郑凯杰<信息安全系统设计基础>第八周复习总结 Part A 学习知识点内容总结 复习线索:http://group.cnblogs.com/topic/73069.html ...
- 20145314郑凯杰《信息安全系统设计基础》第5周学习总结 part B
20145314郑凯杰<信息安全系统设计基础>第5周学习总结 part B 在前四天的学习中,我主要对课本知识进行了总结,在本周后三天的学习过程中,我进行实践并截图. http://www ...
- 20145314郑凯杰《网络对抗技术》PE文件病毒捆绑(插入捆绑)的实现
20145314郑凯杰<网络对抗技术>PE文件病毒捆绑(插入捆绑)的实现 一.本节摘要 简介:每个应用程序内部都有一定的空间(因为文件对齐余留的00字段)可以被利用,这样就可以保证被插入的 ...
- 20145314郑凯杰《网络对抗技术》实验9 web安全基础实践
20145314郑凯杰<网络对抗技术>实验9 web安全基础实践 一.实验准备 1.0 实验目标和内容 Web前端HTML.能正常安装.启停Apache.理解HTML,理解表单,理解GET ...
- 20145314郑凯杰《网络对抗技术》实验5 MSF基础应用
20145314郑凯杰<网络对抗技术>实验5 MSF基础应用 1.0 MS08_067安全漏洞 1.1 实验目标 了解掌握metasploit平台的一些基本操作,能学会利用已知信息完成简单 ...
- 20145314郑凯杰 《Java程序设计》第10周学习总结
20145314郑凯杰 <Java程序设计>第10周学习总结 代码托管: 学习内容总结 网络编程 会打手机吗? 第一个问题:会打手机吗?很多人可能说肯定会啊,不就是按按电话号码,拨打电话嘛 ...
随机推荐
- ios 将p12文件转换为pem
cd 到 文件所在目录 执行以下命令,生成ck.pem文件. openssl pkcs12 -in ck.p12 -out ck.pem -nodes
- eclipse 设置 @author @version等注释模板
eclipse->window->preference->java->code styple->code template->Code->New Java f ...
- js 高程 22.1.4 函数绑定 bind() 封装分析
js 高程 书中原话(斜体表示): 22.1.4 函数绑定 另一个日益流行的高级技巧叫做函数绑定.函数绑定要创建一个函数,可以在特定的this 环境中 以指定参数调用另一个函数.该技巧常常和回调函数与 ...
- 一百本英文原著之旅 ( 15 finished )
记得去年毕业的时候,突然想看英文原著(小说.文学.技术 etc.)来提高自己的英文水平.并且那时候愣愣的有了个宏伟的目标 --> 一百本. 不过也就去年下半年断断续续的看了些页数在200左右的 ...
- Storm-源码分析-Stats (backtype.storm.stats)
会发现, 现在storm里面有两套metrics系统, metrics framework和stats framework 并且在所有地方都是同时注册两套, 貌似准备用metrics来替代stats, ...
- postman 断言
//断言 pm.test("message等于'操作成功'", function () { var jsonData = pm.response.json(); console.l ...
- Spring-BeanFactory容器
Spring的BeanFactory容器 这是Spring中最简单地容器,它主要的功能是为依赖注入(DI)提供支持.这个容器接口在org.springframework.beans.factory.B ...
- Jmeter(四)测试webservice脚本
1.有些非标准的wsdl文件导入到loadrunner时候会报错,这时候我们就能利用jmeter进行性能测试2.在soapui中新建已经soap项目,File---->new soapUI Pr ...
- JSON-RPC(jsonrpc4j)使用demo
服务端开发,在很多情况下,需要使用到RPC框架,今天发现一款很轻量的RPC框架--JSON-RPC.json rpc 是一种以json为消息格式的远程调用服务,它是一套允许运行在不同操作系统.不同环境 ...
- python全栈开发从入门到放弃之socket并发编程之IO模型
一 IO模型介绍 同步(synchronous) IO和异步(asynchronous) IO,阻塞(blocking) IO和非阻塞(non-blocking)IO分别是什么,到底有什么区别?这个问 ...