我真的很困惑。软件故障隔离是否等同于沙箱操作?或者它们是不同的?我到处读到沙箱意味着我们可以运行不受信任的代码,而不会影响其他程序或主机。好的,但是怎么做呢?它们是否通过内存隔离来做到这一点?我的意思是,当一个程序只能访问它自己的内存,而不能访问其他内存时,我们称之为沙箱?
发布于 2021-04-22 21:55:31
正如您所说,沙箱允许您运行不受信任的代码。有不同级别的沙箱。内存隔离-因此操作系统正在做的事情可以被视为一种沙箱。但是,程序仍然可以共享相同的库和文件。所以有了Docker,它可以隔离这些。但是在不同的docker容器上运行的两个进程仍然在同一物理机器上运行。因此,虚拟化可以被视为更高级别的沙箱。
沙箱用于将沙箱中运行的东西与主机系统或主机系统上运行的其他应用程序隔离。
然而,软件故障隔离意味着发现(隔离)故障或检测故障。在调试软件时,通常会提供尽可能小的重现问题的代码。因此,将致力于修复问题工程师可以快速找到根本原因,因为当他或她看到问题“孤立”时,可能性较小。
沙箱可用于隔离问题,特别是在处理危险的病毒代码或系统时,这些代码或系统可能会破坏您正在执行故障隔离的主机系统的稳定性。
https://stackoverflow.com/questions/67213234
复制相似问题