我希望有人可以帮助我解决以下问题:
我对 java 堆栈自省的理解(这里可能有点过于简单化了)是一个进程生成一个堆栈帧,然后将其添加到堆栈中。现在,当进程需要进行系统调用时,堆栈自省算法检查是否允许主体(即尝试访问资源的进程)使用特定资源,然后相应地注释帧(授予或禁止访问)。
我的问题是:
- 以上是正确的还是我错过了什么?
- JVM 如何决定是授予还是限制访问?用户是否参与了这个决定?
- 在这项研究中,有一个示例(图 2),其中一个框架继承/被告知前一个框架的“信念集”!在这个例子中,是什么阻止了恶意代码的执行(即访问不应访问的资源)?