home *** CD-ROM | disk | FTP | other *** search
- README.P2 ECU 3.10 Patch 2 Tue Aug 13 16:29:11 EDT 1991
-
- This describes patch 2 to ECU 3.10, bringing the program to
- version 3.12.
-
- The majority of this patch deals with the way SCO and ISC misimplement
- the nap() system call. A lingering problem with the interactive
- command history handler is also fixed (pressing erroneous function keys
- caused the display to become garbaged).
-
- ISC and SCO UNIX nap() misbehave. This kludge doesn't return the
- proper value (the actual time slept), but at least it does not make
- a mockery of the manual page. It says:
-
- NAP(S) UNIX System V NAP(S)
-
- Name
- nap - suspends execution for a short interval
-
- Syntax
- long nap(period)
- long period;
-
- Description
- The current process is suspended from execution for at least
- the number of milliseconds specified by period, or until a
- signal is received.
-
- Return Value
- On successful completion, a long integer indicating the
- number of milliseconds actually slept is returned. If the
- process received a signal while napping, the return value
- will be -1, and errno will be set to EINTR.
-
- See Also
- sleep(S)
-
- Notes
- This function is driven by the system clock, which in most
- cases has a granularity of tens of milliseconds. This
- function must be linked with the linker option -lx.
-
- It appears nap() under UNIX 3.2.x has departed virtually entirely from
- the manual page. I'm beginning to look rather silly in several
- milleus since I keep telling people SCO UNIX is a viable upgrade from
- XENIX. But process control people need some kind of timing capability
- less than one second and we can't do it with nap or select.
-
- nap(msec) is supposed to nap *at least* msec milliseconds. However,
- if msec is specified less than 1000/HZ + 1, it will not nap at all.
- This was true for 3.2.0 and 3.2.1.
-
- It is supposed to return the number of milliseconds it actually
- slept. Instead, it appears to "save up" the values and return them in
- lots of 1000. This behavior is true for 3.2.2.
-
- As it is nap() is nearly useless. I believe select() suffers
- from the same deficiency (< 1000 msec timeout becomes 1000 msec) but
- I haven't "proven" it yet.
-