system calls
Arne "W?rner" <[email protected]> Thu, 11 Nov 2004 10:14:46 -0800 (PST)
| Newsgroups | gmane.os.freebsd.devel.realtime |
|---|---|
| Message-ID | <[email protected]> |
Hiho! I just read in the BUGS section of the man page of rtprio(1), that system calls are never preemted. Does that mean, that a "read(fd,buffer,10000000)" blocks all other processes, until 10^7 bytes are read even if fd points to a file on a very slow and huge floppy disc? Does that mean, that no process can run, after the kernel ordered a hard disc to move its heads until the data is transfer from disc to memory (sometimes it feels like :) )? Unfortunately I am quite sure, that I would not find out the truth by experimentation or by looking at source code. Sorry... If at least one answer is "yes", then I think, that it would be much better for the performance, if processes could run, while the kernel manages lengthy io-ops (I still remember, that there was a picture about 4 process states: running, waiting, dead, blocked; and while the blocked processes are blocking, the waiting processes are competiting for the CPU/-s). Thanks. Bye Arne __________________________________ Do you Yahoo!? Check out the new Yahoo! Front Page. www.yahoo.com _______________________________________________ [email protected] mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-realtime To unsubscribe, send any mail to "[email protected]"