On 06/28/11 09:38, santosh bhushan wrote: > In a multiple core m/c with lots of CPUs where does scheduler or dispatcher > run ? > How to debug them ? Do they have too process id like any other application ?
The dispatcher is run on all CPUs; its basically a distributed algorithm. There is no process ID associated with it; it's code executed by all threads going on and off CPU. There is some tick processing that's done periodically, but that's a thread. You can examine that with mdb. Live debugging of the dispatcher is best done with DTrace, since most debugging paradigms are focused on entities (processes, threads) rather than code sections. Dispatchers are difficult to write if scalability is a constraint; algorithms or data examined cannot be order #CPUs. There are some sets of threads that run as a process in the kernel; zfs has per zpool processes, and nfs does as well, although the mechanism is different there. - Bart -- Bart Smaalders Solaris Kernel Performance bart.smaald...@oracle.com http://blogs.sun.com/barts "You will contribute more with Mercurial than with Thunderbird." "Civilization advances by extending the number of important operations which we can perform without thinking about them." _______________________________________________ opensolaris-help mailing list opensolaris-help@opensolaris.org