I'm trying to understand how a network kernel device driver work.
For example when an application using libc call the function : recvfrom(int s, void *buf, int len, unsigned int flags struct sockaddr *from, socklen_t *fromlen)
Then the application make a systemcall with sysenter or int 0x80 + number of syscall.
In the kernel space, the appopriate function call is call.
This function read on the socket buffer and return the data.
Is it right?
When the driver is call? When the function implemanted by the driver is call?
Thank You All.