关注
硬盘与内存之间交换数据的单位是页,通过页面置换算法(FIFO、LRU、OPT)确定页,通过页表来判断对应的页在不在内存,不在的引发缺页中断,去硬盘将该页置换到内存中。虚拟内存和物理内存之间通过页表来映射;虚拟地址分为:页号和页内偏移。
高速缓cache存和内存间交换数据的单位就是缓存行,当线程要访问的变量在CPU的缓存里没有找到时,就会去访问主内存,然后根据程序运行的局部性原理,此时就会把主内存中该变量所在的大小为缓存行的内存放入缓存中。准确的说,主存的一块数据放到cache的一行中,每个数据块和cache的行的大小完全一样, 而且每个块或行都是由若干个连续的字组成的。其中的地址映射,一般有直接映射方式(一些约定的主存块只能复制到cache中的一个特定行中)、全相连映射(主存中任意一个块可以映射到cache中的任意一行中。需要在cache中的一行增加标记部分,存放该行内容的主存块的块号)、组相联映射(组间直接映射,组内全相联映射)。一般来说,全相连映射更适合小容量的cache,直接映射方式适合大容量的cache。而容量不大不小的cache更适用用组相联映射方式。替换策略有:LFU(最不经常使用)、LRU(近期最少使用)、FIFO、随机替换算法。
CPU与cache之间的数据交换是以字为单位,而cache与主存之间的数据交换是以块为单位。一个块由若干字组成,是定长的。
查看原帖
点赞 评论
相关推荐
点赞 评论 收藏
分享
牛客热帖
更多
正在热议
更多
# 从顶到拉给所有面过的公司评分 #
17011次浏览 155人参与
# 机械人春招想让哪家公司来捞你? #
357095次浏览 3108人参与
# 为了求职,我做过的疯狂伪装 #
11644次浏览 206人参与
# 晒晒你的中秋福利 #
14922次浏览 96人参与
# 职场破冰,你们都聊什么? #
6578次浏览 66人参与
# bilibili求职进展汇总 #
87212次浏览 793人参与
# 工作压力大怎么缓解 #
104940次浏览 1050人参与
# 大家实习每天都在干啥 #
88839次浏览 518人参与
# 广联达求职进展汇总 #
10829次浏览 50人参与
# 机械人怎么评价今年的华为 #
208731次浏览 1524人参与
# 秋招OC许愿 #
346037次浏览 2525人参与
# 你的公司给实习生发中秋礼物吗 #
1455次浏览 26人参与
# 你面试被问到过哪些不会的问题? #
20408次浏览 783人参与
# 聊聊这家公司值得去吗 #
555967次浏览 3693人参与
# 电网笔面经互助 #
46545次浏览 431人参与
# 宣讲会你有哪些意向不到的收获 #
1081次浏览 20人参与
# 秋招的嫡长offer #
28257次浏览 266人参与
# 你觉得早上几点上班合适? #
82395次浏览 330人参与
# 秋招报数:你投了多少家公司? #
28029次浏览 290人参与
# 实习要如何选择和准备? #
114641次浏览 1436人参与