从用户模式进入内核模式的不同方法是什么?NETLINK Socket是其中之一吗?怎么样?

时间:2012-05-18 18:56:00

标签: sockets operating-system linux-kernel netlink

IS NETLINK 套接字用于从用户模式进入内核模式。我们如何使用NETLINK套接字实现系统调用功能,因为它们都从用户模式跳转到内核模式?恕我直言一点都有可能吗? RGDS, 软质皮

1 个答案:

答案 0 :(得分:2)

用户应用程序有两种方式进入[Unix]内核(意思是代表用户模式进程直接执行内核代码):

  • 进行系统调用,即明确请求内核服务
  • 陷阱进入内核的原因是:
    • 错误(分段违规,无效指令等) - 这是致命的,
    • 或页面错误 - 访问映射但不是常驻内存页面。
另一方面,

netlink(7)是一种特定于Linux的通知和配置机制,您可以通过socket(2)sendmsg(2)等常规系统调用访问它。它允许您从内核接收信息并向内核发送信息。

严格地说,不,netlink(7)不允许你进入内核模式。