Date: Mon, 6 Feb 1995 18:44:11 +0100 (MET) From: j@uriah.sax.de (J Wunsch) To: freebsd-hackers@FreeBSD.org (FreeBSD hackers) Subject: Re: longjump in kernel Message-ID: <199502061744.SAA17073@bonnie.tcd-dresden.de> In-Reply-To: <199502041119.GAA26711@hda.com> from "Peter Dufault" at Feb 4, 95 06:19:41 am
next in thread | previous in thread | raw e-mail | index | archive | help
As Peter Dufault wrote: | | To set an alarm: | -Use "sleep" to wait for the interrupt while in the user process context; | -Use "wakeup" from the vertical sync interrupt to continue the blocked context; | -Use "timeout" to set a timeout function that will wakeup the context with | an error indication set in the event of loss of interrupt. Return | an error code to the user process; | -Use "untimeout" to cancel the timeout if the interrupt comes in | on time. Better yet, use tsleep() which does 1), 3) and 4) of the above, and allows for a short descriptive string indicating the sleep reason when looking at the `ps' output. If the timeout hit, the tsleep() returns EWOULDBLOCK. | This must be covered in the "The Design of the 4.3 OS" book by | Leffler, Mckusick, and Karels. (Addison Wesley? We should add a | bibliography section to the FAQ) Or time for another manual section covering kernel internal functions. (Btw., Data General's DG/UX used to have a subsection of section 3 covering the kernel functions in recent releases.) -- cheers, J"org work: --- no longer --- private: joerg_wunsch@uriah.sax.de Never trust an operating system you don't have sources for. ;-)
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199502061744.SAA17073>