Reference 参考监视器与系统调用包装器

Reference 参考监视器与系统调用包装器,reference,system,call,wrapper,monitor,Reference,System,Call,Wrapper,Monitor,我试图根据它们的性质和用途来清楚地区分这两个术语/技术。 我最感兴趣的是它们之间的区别 我知道它们通过插入系统调用以同样的方式工作。或者我可能错了 然而,我仍然对系统包装器所属的层和模式(用户、内核)以及引用监视器所属的层和模式感到困惑 尽量少说话。 请告诉我你对这两种插入技术了解多少 非常感谢。以下是我对这两个词的理解: 系统调用包装器 系统调用包装器是用户模式下包装系统调用的代码。也就是说,它在系统调用之前和/或之后执行,以验证某些属性。一个简单的例子是在execve周围添加一层代码来检查权

我试图根据它们的性质和用途来清楚地区分这两个术语/技术。 我最感兴趣的是它们之间的区别

我知道它们通过插入系统调用以同样的方式工作。或者我可能错了

然而,我仍然对系统包装器所属的层和模式(用户、内核)以及引用监视器所属的层和模式感到困惑

尽量少说话。 请告诉我你对这两种插入技术了解多少


非常感谢。

以下是我对这两个词的理解:

系统调用包装器 系统调用包装器是用户模式下包装系统调用的代码。也就是说,它在系统调用之前和/或之后执行,以验证某些属性。一个简单的例子是在execve周围添加一层代码来检查权限或记录此操作。现在,libc和其他库已经包装了系统调用。您通常不直接使用execve、clone、open、read或write,而是使用execv、fork、fopen、fread和fread等版本来简化程序员的工作

参考监视器 另一方面,我认为参考监视器的功能有所不同。它试图调解对资源的访问,这可以在用户和内核中完成,并且可以在系统调用时进行干预,甚至更低

我认为区分这两者的最好方法是,一个(系统调用包装器)是一个实现,而另一个(引用监视器)是您想要实施的想法或策略。也就是说,您可以将系统调用封装在程序中,以确保访问控制和适当的资源分配,但其思想和实现并不相同

注意:我不太熟悉参考监视器。我使用和作为部分来源