summaryrefslogtreecommitdiffstats
path: root/share
diff options
context:
space:
mode:
authordufault <dufault@FreeBSD.org>1998-03-28 11:51:01 +0000
committerdufault <dufault@FreeBSD.org>1998-03-28 11:51:01 +0000
commit8ed0defc6e5c9d291026302e0d45357454484c5d (patch)
tree805e852c0dbabdcdb6254773c9023caa32928e3a /share
parentcd450d67141a2e84500ff624dc9d39c255a7de77 (diff)
downloadFreeBSD-src-8ed0defc6e5c9d291026302e0d45357454484c5d.zip
FreeBSD-src-8ed0defc6e5c9d291026302e0d45357454484c5d.tar.gz
Finish _POSIX_PRIORITY_SCHEDULING. Needs P1003_1B and
_KPOSIX_PRIORITY_SCHEDULING options to work. Changes: Change all "posix4" to "p1003_1b". Misnamed files are left as "posix4" until I'm told if I can simply delete them and add new ones; Add _POSIX_PRIORITY_SCHEDULING system calls for FreeBSD and Linux; Add man pages for _POSIX_PRIORITY_SCHEDULING system calls; Add options to LINT; Minor fixes to P1003_1B code during testing.
Diffstat (limited to 'share')
-rw-r--r--share/man/man9/Makefile3
-rw-r--r--share/man/man9/posix4.986
2 files changed, 43 insertions, 46 deletions
diff --git a/share/man/man9/Makefile b/share/man/man9/Makefile
index 5f42ff6..6e474f7 100644
--- a/share/man/man9/Makefile
+++ b/share/man/man9/Makefile
@@ -1,4 +1,4 @@
-# $Id: Makefile,v 1.34 1998/01/16 18:49:42 bde Exp $
+# $Id: Makefile,v 1.35 1998/03/04 10:23:48 dufault Exp $
MAN9= MD5.9 \
VFS.9 VFS_FHTOVP.9 VFS_INIT.9 VFS_MOUNT.9 VFS_QUOTACTL.9 \
@@ -43,6 +43,7 @@ MLINKS+=ifnet.9 if_data.9 ifnet.9 ifaddr.9 ifnet.9 ifqueue.9
MLINKS+=kernacc.9 useracc.9
MLINKS+=malloc.9 FREE.9 malloc.9 MALLOC.9 malloc.9 free.9
MLINKS+=mi_switch.9 cpu_switch.9
+MLINKS+=posix4.9 p1003_1b.9
MLINKS+=psignal.9 gsignal.9 psignal.9 pgsignal.9
MLINKS+=rtalloc.9 rtalloc1.9 rtalloc.9 rtalloc_ign.9
MLINKS+=sleep.9 tsleep.9 sleep.9 wakeup.9 sleep.9 wakeup_one.9
diff --git a/share/man/man9/posix4.9 b/share/man/man9/posix4.9
index ed07afa..de1769c 100644
--- a/share/man/man9/posix4.9
+++ b/share/man/man9/posix4.9
@@ -22,42 +22,34 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $Id: posix4.9,v 1.1 1998/03/04 10:23:50 dufault Exp $
+.\" $Id: posix1b.9,v 1.2 1998/03/08 17:25:01 dufault Exp $
.Dd March 1, 1998
-.Dt POSIX.4 9
+.Dt POSIX.1B 9
.Os FreeBSD 3.0
.Sh NAME
-.Nm posix4
-.Nd "POSIX.4 extensions"
+.Nm posix1b
+.Nd "Posix P1003-1B extensions"
.Sh DESCRIPTION
-POSIX.4 adds real time extensions and some commonly used
+POSIX.1B adds real time extensions and some commonly used
Berkeley extensions to POSIX.1
This section contains preliminary information about avoiding conflicts
and adding support for the required ability to specify the interface
version.
.Sh STATUS
-March 7, 1998: adding header file changes to 3.0. There should be no
-visible differences as long as _POSIX_VERSION is left undefined.
-Defining _POSIX_VERSION, even to the current value of 199009L, will
-change the behavior of the system per the POSIX spec: if you define
-_POSIX_VERSION to be 199009L then any extensions
-already added to the system (for example,
-John Dyson's aio work) may no longer be visible - this is happening
-slowly.
-.Pp
-In spite of what I said at first, don't set _POSIX_VERSION into the
-future until I say it is working.
-.Pp
-Since this only brings in the headers I'm only explaining the feature
-test options.
+March 28, 1998: _POSIX_PRIORITY_SCHEDULING works with these kernel
+options in your configuration:
+.Bd -literal -offset 0i
+options "P1003_1B"
+options "_KPOSIX_PRIORITY_SCHEDULING"
+.Ed
.Sh SPECIFYING THE VERSION
There are three manifest constants that set the version and programming interface
-for POSIX.4.
+for POSIX.1B.
.Bd -literal -offset 0i
_POSIX_VERSION
.Ed
specifies the system for which the system is built. The default
-is POSIX.1 and is 199009L. POSIX.4 is 199309L. This defines
+is POSIX.1 and is 199009L. POSIX.1B is 199309L. This defines
the base features of the operating system.
.Bd -literal -offset 0i
_POSIX_SOURCE
@@ -68,23 +60,24 @@ in the name space.
.Bd -literal -offset 0i
_POSIX_C_SOURCE
.Ed
-is a macro from POSIX.4 that can be defined to specify that only
+is a macro from POSIX.1B that can be defined to specify that only
POSIX and ANSI functionality from a specific POSIX version should occur
-in the name space, i.e., if _POSIX_VERSION is 199309L (POSIX.4) but
+in the name space, i.e., if _POSIX_VERSION is 199309L (POSIX.1B) but
_POSIX_C_SOURCE is 199009L (POSIX.1) then only POSIX.1 features should
appear.
.Sh PROPERLY HIDING EXTENSIONS
The following test macros are set up in <sys/_posix.h>. They should
used by system header files to avoid the kind of tests you see in
<sys/_posix.h>. Source programs should not use these FreeBSD specific
-implementation details and should test _POSIX_VERSION.
-These should not be used in the kernel either - the kernel should be
-immune to the user land setting of _POSIX_VERSION. The POSIX4 option can
+implementation details and should test _POSIX_VERSION, _POSIX_SOURCE
+and _POSIX_C_SOURCE.
+These should not be used in the kernel though - the kernel should be
+immune to the user land setting of _POSIX_VERSION. The P1003_1B option can
be used in the kernel to limit inclusion of new code, but make sure
-things work properly when a POSIX.4 program is run on a kernel without
-the POSIX4 option.
+things work properly when a POSIX.1B program is run on a kernel without
+the P1003_1B option.
.Bd -literal -offset 0i
-_POSIX4_VISIBLE
+_P1003_1B_VISIBLE
.Ed
is a test macro that sorts out when extensions should be
visible. It is defined in <sys/_posix.h>.
@@ -92,41 +85,44 @@ visible. It is defined in <sys/_posix.h>.
In normal C program development
only _POSIX_VERSION is set, permitting BSD extensions to
appear to the programs. However, when adding new functionality mandated
-by POSIX.4, it
+by POSIX.1B, it
is important to satisfy the requirements added by the
-new _POSIX_C_SOURCE macro. _POSIX4_VISIBLE (not a standard feature test macro)
+new _POSIX_C_SOURCE macro. _P1003_1B_VISIBLE (not a standard feature test macro)
is defined in sys/unistd.h when the combination of _POSIX_VERSION,
_POSIX_SOURCE, and _POSIX_C_SOURCE indicate that the extensions are in scope.
.Bd -literal -offset 0i
-_POSIX4_VISIBLE_HISTORICALLY
-is present to conditionalize POSIX.4 extensions that were historically
+_P1003_1B_VISIBLE_HISTORICALLY
+is present to conditionalize POSIX.1B extensions that were historically
in the system. These are visible when _POSIX_SOURCE and _POSIX_C_SOURCE
-are not set at all or when _POSIX_C_SOURCE enables POSIX.4 features.
+are not set at all or when _POSIX_C_SOURCE enables POSIX.1B features.
+The intent of this feature test is to permit hiding the new extensions
+while still letting BSD extensions show up to avoid breaking existing
+programs without trying to use the "big hammer" of _POSIX_C_SOURCE.
.Pp
-Some of these are new enough that they should be changed to
-be dependent on _POSIX4_VISIBLE instead.
+Some recent additions to header files
+are new enough that they should be changed to
+be dependent on _P1003_1B_VISIBLE instead of _HISTORICALLY.
.Pp
-Traditional BSD headers (e.g., mmap.h) that are now specified
-in POSIX.4 should include <sys/_posix.h> and conditionalize
-BSD extensions on _POSIX4_VISIBLE_HISTORICALLY.
+Traditional BSD headers (e.g., mmap.h) now specified
+in POSIX.1B can include <sys/_posix.h> and conditionalize
+BSD extensions on _P1003_1B_VISIBLE_HISTORICALLY.
.Sh NON STANDARD TEST MACROS
.Bd -literal -offset 0i
-_POSIX4_INCLUDE_MAYBES
+_P1003_1B_INCLUDE_MAYBES
.Ed
when set before the inclusion of any other header file
-requests that all header files that the POSIX.4 spec says a standard
+requests that all header files that the POSIX.1B spec says a standard
header may include should be included. Normally no non-required
headers are included. Setting this pre-processor definition should
make any compliant program compile without issues of header file
inclusion.
.Bd -literal -offset 0i
-POSIX4
+P1003_1B
.Ed
-is a config option and (currently) a request to build POSIX.4 by
-setting the _POSIX_VERSION to 199309L in sys/unistd.h.
+is a config option to build in POSIX.1B support in the kernel.
.Sh SEE ALSO
.Sh HISTORY
The
-.Nm posix4
+.Nm posix1b
section manual page appeared in
.Fx 3.0 .
OpenPOWER on IntegriCloud