考研论坛

 
查看: 4892|回复: 10
打印 上一主题 下一主题

采用二级页表时的页面平均访问时间,为什么这样算?

[复制链接]

31

主题

262

帖子

962

积分

中级战友

Rank: 3Rank: 3

精华
0
威望
60
K币
902 元
注册时间
2010-4-17
跳转到指定楼层
楼主
发表于 2011-1-1 12:54 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
复旦复习全书393页例四第三小问
快表命中率98%,访问时间是10ns
内存访问时间是100ns
为什么平均访问时间=98%*10+(1-98%)*(98%*10+(1-98%)*100)?
大家帮我看看,谢谢!



    回复

    使用道具 举报

    0

    主题

    628

    帖子

    3861

    积分

    高级战友

    女神的圣斗士

    Rank: 4

    精华
    0
    威望
    500
    K币
    3361 元
    注册时间
    2009-8-3
    沙发
    发表于 2011-1-1 13:07 | 只看该作者
    快表未命中,然后访页表…所以是要加上一个先访快表的时间的。这种是属于先访快表的。还有一种题是快表页表并行访问的,这时候快命中了就终止页的访问,未命中的时候由于并行,所以时候不需要加快表的。一般题目不说的话貌似要按照先访快表那么算哦
    得之我幸,不得我命,淡定淡定
    回复

    使用道具 举报

    31

    主题

    262

    帖子

    962

    积分

    中级战友

    Rank: 3Rank: 3

    精华
    0
    威望
    60
    K币
    902 元
    注册时间
    2010-4-17
    板凳
     楼主| 发表于 2011-1-1 13:27 | 只看该作者
    本帖最后由 专心考山大 于 2011-1-1 14:34 编辑

    回复 阑珊一笑 的帖子

    括号里面的98%*10+(1-98%)*100是什么?愿闻其详
    怎么才算访问TLB成功?
    回复

    使用道具 举报

    0

    主题

    628

    帖子

    3861

    积分

    高级战友

    女神的圣斗士

    Rank: 4

    精华
    0
    威望
    500
    K币
    3361 元
    注册时间
    2009-8-3
    地板
    发表于 2011-1-1 15:18 | 只看该作者
    我没用过复旦的书,没看过原题
    刚才一直是手机上的,没注意你说的是二级页表
    我觉得题目说的不严密或者是错了
    他说的:快表访问时间是10ns
    如果说的是快表命中时候访问页面的时间的话,这么写98%*10是没问题的
    但是单纯说快表的访问时间是10ns的话,快表命中时候的页面访问时间应该是98%*(10+100)
    也或者我的理解有问题,但是如果访问页面的话命中不命中快表,从页表项映射到内存地址都是要访存的,如果缺页还要算中断时间和访外存。

    所以我觉得一级页表情况下是:0.98*(10+100)+0.02*(10+100+100)
    二级页表是:0.98*(10+100)+0.02*(10+100+100+100)
    即使不算我说的访存时间的话,也不该有括号里那2个百分数,个人看法
    后面括号里如果还带百分数的话,题目里肯定是说要有缺页情况处理的了……但是有的话感觉他写的还是不对

    我没看过原题不知道题目,都是自己的看法,不一定对的。

    得之我幸,不得我命,淡定淡定
    回复

    使用道具 举报

    0

    主题

    628

    帖子

    3861

    积分

    高级战友

    女神的圣斗士

    Rank: 4

    精华
    0
    威望
    500
    K币
    3361 元
    注册时间
    2009-8-3
    5
    发表于 2011-1-1 15:24 | 只看该作者
    本帖最后由 阑珊一笑 于 2011-1-1 15:55 编辑

    TLB是访寄存器,速度快,页表是访内存,速度慢写。TLB是存的是少量的常用的页表项,就像你用输入法一样,先出现的都是根据统计你常用词……页表是在内存里的,访问页面的时候是这样的,在先访问TLB的情况下就是在TLB中查找比较,如果有,就按照映射直接访问内存页面,如果没有就需要先读内存的页表,再访内存页表映射的到的物理地址。2次访存,如果是多级页表的话,我觉得你可以把他理解成间址寻址,需要多次访存.那个地址逻辑上是写一起的,但是物理上是需要先找外层页表,然后从外层找内层,最后是内层的页内地址,中间那个寄存器时间不说就应该不去考虑的吧
    得之我幸,不得我命,淡定淡定
    回复

    使用道具 举报

    0

    主题

    628

    帖子

    3861

    积分

    高级战友

    女神的圣斗士

    Rank: 4

    精华
    0
    威望
    500
    K币
    3361 元
    注册时间
    2009-8-3
    6
    发表于 2011-1-1 15:29 | 只看该作者
    第一个解答是我错了,我还以为你不理解为什么还要加个快表时间或者是你做过并行访问的题和这个不一样呢,没仔细看题,sorry
    得之我幸,不得我命,淡定淡定
    回复

    使用道具 举报

    7

    主题

    58

    帖子

    220

    积分

    一般战友

    Rank: 2

    精华
    0
    威望
    10
    K币
    210 元
    注册时间
    2009-4-4
    7
    发表于 2011-1-1 15:53 | 只看该作者
    LS的解答跟我的思路是一样的,一直都没理解括号里面那为什么要乘那几个百分数。只是这种做法貌似还不能说是错的。我已经看多过好几道不同出处的题都是这种作法,对于这个问题我现在也不知道正确答案是什么,只能按照自己的思路来 就是LS那样
    回复

    使用道具 举报

    13

    主题

    1191

    帖子

    8906

    积分

    开国大老

    钢之炼金术师

    Rank: 5Rank: 5

    精华
    1
    威望
    1980
    K币
    6926 元
    注册时间
    2009-9-6
    8
    发表于 2011-1-1 17:28 | 只看该作者
    很简单 因为他是二级页表。别的就不说了
    PKU软微group:161117539
    回复

    使用道具 举报

    31

    主题

    262

    帖子

    962

    积分

    中级战友

    Rank: 3Rank: 3

    精华
    0
    威望
    60
    K币
    902 元
    注册时间
    2010-4-17
    9
     楼主| 发表于 2011-1-1 19:34 | 只看该作者
    本帖最后由 专心考山大 于 2011-1-1 19:36 编辑

    回复 阑珊一笑 的帖子

    感谢你这么认真的解答!百度知道上那个应该是你吧?

    TLB访问成功的含义,是在快表里找到要找的页号(包括外层页号和内层页号))的外层页号,访问不成功的含义则是在快表里找不到要找的页号的外层页号,我这样理解没问题吧?

    我觉得二级页表的TLB访问不成功访问时间应该是:10+100+100
    10ns是首先访问TLB的时间,但没找到要找页号的外层页号;
    那么在内存里找到外层页表,并读取其映射的内层页表的地址信息,这个过程是100ns;
    然后根据找到的内层页表的地址信息找到内层页表,并在内层页表中读出物理块号,这个过程又是100ns

    你的答案是10+100+100+100,不知是不是因为我遗漏了一次访存?
    麻烦你了


    回复

    使用道具 举报

    0

    主题

    628

    帖子

    3861

    积分

    高级战友

    女神的圣斗士

    Rank: 4

    精华
    0
    威望
    500
    K币
    3361 元
    注册时间
    2009-8-3
    10
    发表于 2011-1-1 20:10 | 只看该作者
    本帖最后由 阑珊一笑 于 2011-1-1 20:12 编辑

    一级的时候,TLB10,调入页表100,读页100,二级的时候就是在一级的基础上,TLB之后先调一个外部页表100,其实这个过程是访存前是要先访cache……但是题目不提应该就不需要考虑了。你看看清华大学2008年的OS题,和你说的这个差不多……7楼说见过很多次这样的写法,我做题比较少不太知道,不然也不用天天这么纠结了,各种杯具。可能是我没理解上去……建议你问问高人或者找个权威的答案。。。俺是小白。。。我的百度ID和这个一样的。。。应该不是我

    突然想到的。还有快表的问题,这个我不确定好像是多级页表的情况下,快表里有映射就该是一次直接取出,快表命中后应该不需要考虑再多次访存了,书上题里我都没见过……比较笨
    得之我幸,不得我命,淡定淡定
    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 注册 人人连接登陆

    本版积分规则   

    关闭

    您还剩5次免费下载资料的机会哦~

    扫描二维码下载资料

    使用手机端考研帮,进入扫一扫
    在“我”中打开扫一扫,
    扫描二维码下载资料

    关于我们|商务合作|小黑屋|手机版|联系我们|服务条款|隐私保护|帮学堂| 网站地图|院校地图|漏洞提交|考研帮

    GMT+8, 2026-4-1 13:09 , Processed in 0.079756 second(s), Total 9, Slave 8(Usage:7M, Links:[2]1,1_1) queries , Redis On.

    Powered by Discuz!

    © 2001-2017 考研 Inc.

    快速回复 返回顶部 返回列表
    × 关闭