gpt4 book ai didi

operating-system - 计算机如何防止程序相互干扰?

转载 作者:行者123 更新时间:2023-12-04 22:34:01 25 4
gpt4 key购买 nike

例如,我在类里面听说全局变量只是放在内存中的特定位置。什么是防止两个程序意外将相同的内存位置用于不同的变量?

另外,这两个程序的参数和局部变量是否使用相同的堆栈?如果是这样,什么是防止变量相互交错并弄乱索引?

只是好奇。

最佳答案

这是现代操作系统通过在单独的虚拟地址空间中加载每个进程来实现的。多个进程可能引用同一个 virtual address ,但操作系统在现代硬件的帮助下,会将每个进程映射到一个单独的物理地址,并确保一个进程无法访问分配给另一个进程的物理内存1。

1 调试器是一个明显的异常(exception):操作系统通常为调试器提供特殊的机制来附加到其他进程并检查它们的内存空间。

关于operating-system - 计算机如何防止程序相互干扰?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12220885/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com