当前的计算机基于什么架构?

计算科学 建筑学
2021-12-10 20:00:51

当前的计算机基于什么架构?

普林斯顿建筑还是哈佛建筑我在网上找到的一些笔记说明了普林斯顿的架构,但这造成了普林斯顿的瓶颈。哈佛的架构被认为可以缓解这种情况。所有系统都转向更“哈佛”的方法了吗?

1个回答

大多数现代系统都是普林斯顿的,因为相同的内存系统用于数据和指令,尽管内存管理系统通常将指令和数据保存在不同的页面中,并且出于安全原因,用户代码可能无法写入包含可执行指令的内存.

在不同的级别上,指令和数据通常有单独的缓存。这种指令和数据缓存的分离有助于克服普林斯顿的瓶颈。此外,大多数现代系统不能确保数据缓存和指令缓存之间的缓存一致性。这意味着如果您将新指令写入内存,它们可能不会立即影响执行,因为指令缓存可能依赖于先前缓存的指令。通常,操作系统软件必须在将新的或修改过的程序加载到内存后清除指令缓存。