C 在linux中,在哪里编写中断处理程序以及如何向内核注册?

C 在linux中,在哪里编写中断处理程序以及如何向内核注册?,c,linux,linux-kernel,operating-system,interrupt,C,Linux,Linux Kernel,Operating System,Interrupt,场景:客户端发送数据,服务器通过以太网层(udp)从客户端接收数据。当服务器从ip层(内核)上的客户端接收数据时。它中断内核和内核,以便客户端执行数据,因此我想创建一个中断服务函数来捕获来自网络服务卡的中断 我无法编写内核模块(内核未打开),QNX的用户空间中有实时功能。 但是,我可以在内核空间和内核模块中使用RTLinux(实时linux)编写代码 在linux中,在何处编写中断处理程序以及如何在内核中注册???最简单的方法不是注册中断处理程序,而是使用名为linux netfilter ho

场景:客户端发送数据,服务器通过以太网层(udp)从客户端接收数据。当服务器从ip层(内核)上的客户端接收数据时。它中断内核和内核,以便客户端执行数据,因此我想创建一个中断服务函数来捕获来自网络服务卡的中断

我无法编写内核模块(内核未打开),QNX的用户空间中有实时功能。 但是,我可以在内核空间和内核模块中使用RTLinux(实时linux)编写代码


在linux中,在何处编写中断处理程序以及如何在内核中注册???

最简单的方法不是注册中断处理程序,而是使用名为linux netfilter hooks的现有机制。您可以定义一个回调函数,该函数将在数据包到达netfilter链中的一个时执行


一些文档:

如果您想在某个数据包从客户端到达时得到中断,您可以使用pcap库轻松完成。我是做这种冒险的新手。因此,请您进一步解释一下,我在内核中的pcap库在哪里?基本上,pcap是一个用户空间,是一个非常强大的库,用于处理网卡接收的各种流量。在使用pcap时,您不需要进入内核。在哪里可以找到pcap库??如果我没有工作,那么我将在pcap中添加中断处理程序-是否正确??适用于Linux和windows。是的,您可以在使用pcap时添加处理程序功能。