• 博客园logo
  • 会员
  • 周边
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
20145207李祉昂
博客园    首页    新随笔    联系   管理    订阅  订阅

20145207 《信息安全系统设计基础》第7周学习总结

上一篇链接:http://www.cnblogs.com/20145207lza/p/5999103.html#3542846

讲在前面:这周一定出去

练习题

习题6.2

计算这样一个磁盘的容量。它有2个盘片,10 000个柱面,每条磁道平均有400个扇区,每个扇区平均有512个字节。

磁盘容量 = (512/400)4001000022= 8 192 000 000 字节 = 8.192GB

 

习题6.3

估计访问下面的一个磁盘上的一个扇区需要的时间(以ms为单位)。旋转速率:15000RPM;Taveseek = 8ms;每条磁道的平均扇区数:500

访问时间 = Taveseek+Taverotation+Tavetransfer = 8ms +0.51/15000RPM60secs.min1000ms/s+1/15000RPM1/50060secs/min1000ms/s=8ms+2ms+0.008ms=10.008ms

 

习题6.4

假设1MB的文件由512字节的逻辑块组成,存储在有如下特性的磁盘驱动器上(旋转速率:10 000RPM,Taveseek=5ms,平均扇区/磁道 = 1000)。 (1)最好的情况:给定逻辑块到磁盘扇区的最好的可能的映射(即,顺序的),估计读这个文件需要的最优时间 (2)随机的情况:如果块是随机地映射到磁盘扇区的,估计读这个文件需要的时间

(1)T=Taveseek+Taverotation+2Tmaxrotation=5ms+3ms+26ms=20ms

(2)在这种情况下,块被随机的映射到扇区上,读2000块的每一块都需要Taveseek+Tavgrotation=8ms。所以读这个文件的总时间为T = 8ms*2000=16000ms=16s

 

习题6.8

改变原函数中循环的顺序,使得它以步长为1的引用模式扫描三位数组a。

int sumarray3d(int a[N] [N] [N])
{
int i,j,k,sum=0;
for(k=0;k<N;k++){
for(i=0;i<N;i++){
for(j=0;j<N;j++){
sum += a[k] [i] [j];
}
}
}
return sum;
}

 

习题6.9

判断图中三个函数的空间局部性。

函数clear1以步长为1的引用模式访问数组,因此明显的具有最好的空间局部性;函数clear2依次扫描N个结构中的每一个,这也可以,但是在每个结构中,它以步长不为1的模式跳到下列相对于结构起始位置的偏移处,所以clear2的空间局部性比clear1的差;函数clear3不仅在每个结构中跳来跳去,而且还从结构跳到结构,所以clear3的空间局部性最差。

 

习题6.11

在前面dotprod的例子中,在我们对数组x做了填充之后,所有对x和y的引用的命中率是多少?

在对dotprod例子中对数组x定义为float x[12]后,填充消除了冲突不命中,也就是不会发生y[0] ~ y[3]的块被拷贝到组0,覆盖前一次引用拷贝进来的X的值的情况,因此有四分之三的引用是命中的。

 

习题6.13

有两个低位是块偏移(CO),然后是三位的组索引(CI),剩下的位作为标记(CT)。

代码托管情况:

 

posted @ 2016-10-30 20:13  20145207李祉昂  阅读(326)  评论(1)    收藏  举报
刷新页面返回顶部
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3