我刚刚接过电话面试,我被问到这个问题.我知道存储在寄存器或堆或堆栈中的方法,但是具体缓存?
解决方法
不是C语言.在GCC作为编译器 – 寻找
__builtin_prefetch
.
您可能有兴趣阅读What every programmer should know about memory.
编辑:
只是为了清除一些混乱 – 高速缓存是硬件上物理上分离的内存,而不是机器的软件抽象.高速缓存中的字总是与主存储器中的地址相关联.这与cpu寄存器不同,这些寄存器与RAM分开命名/寻址.