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>
