CPU usage accounting

Vimal j.vimal at gmail.com
Wed Sep 14 10:04:41 EDT 2011


Hi,

In the following cases, how does the CPU work done by the kernel on
behalf of the application get accounted for?

1. When an application writes to a TCP/UDP socket, the networking
stack does transmit side processing.
2. When an application receives data on a TCP/UDP socket, the
networking stack does receive side processing.

>From what I understand: In case (1), the kernel code executes in the
context of the application, so the CPU cycles are accounted directly
to process that called write() (or send/sendto).  But in case (2),
unless some processing is done, it is impossible to know which
application is going to receive this packet.  Whom do these cycles get
charged to?

Thanks,
-- 
Vimal



More information about the Kernelnewbies mailing list