| Title: | DIGITAL UNIX (FORMERLY KNOWN AS DEC OSF/1) |
| Notice: | Welcome to the Digital UNIX Conference |
| Moderator: | SMURF::DENHAM |
| Created: | Thu Mar 16 1995 |
| Last Modified: | Fri Jun 06 1997 |
| Last Successful Update: | Fri Jun 06 1997 |
| Number of topics: | 10068 |
| Total number of notes: | 35879 |
I'm reading a book titled
"POSIX.4: Programming for the Real World"
by B Gallmeister, pub. OReilly&Assoc
The book implies that there should be a constant named AIO_LISTIO_MAX
in <limits.h>, which is the maximum number of operations you can supply
in one call to lio_listio.
On my D/UNIX v4.0 system, a grep for AIO_LISTIO_MAX in /usr/include/*.h
shows _SC_LISTIO_AIO_MAX in <unistd.h>.
The difference is generic: the book implies there should also be other
constants like MQ_OPEN_MAX and _POSIX_MQ_OPEN_MAX, but all I can find
on Digital UNIX is _SC_MQ_OPEN_MAX.
I guess there's 3 possibilities:
1) I've mis-read the book (-maybe these constants are optional)
2) the book's wrong
3) digital UNIX is deficient
Any thoughts as tp which one it is?
Thanks,
John
| T.R | Title | User | Personal Name | Date | Lines |
|---|---|---|---|---|---|
| 8894.1 | SMURF::DENHAM | Digital UNIX Kernel | Wed Feb 19 1997 13:15 | 22 | |
You've taken the book to literally. When you include <limits.h>
in your application, those values you cite should be made available
(with the correct setting of _POSIX_C_SOURCE or _POSIX_4SOURCE, BTW).
But the standard doesn't say that you must personally find the
values in <limits.h>. That header file is free to include other
headers that may in fact contain the required definitions. This
happens all over the place.
In your case, the values you seek are in <sys/rt_limits.h>, which is
indeed included by <limits.h>. What search method have you used to
locate the missing symbols?
You'll note that even <limits.h> doesn't "really" exist as a file.
It's simply a symbolic link to the real file <sys/limits.h>.
Little is as it appears in header file land.
Another note -- the Gallmeister book is based on a draft of POSIX
1003.1b (which he calls by its old name 1003.4). It doesn't precisely
or completely reflect the contents of the official standard. But
it's close enough for most purposes.
| |||||