3 The Level of the Implementation

 3.1 Future Extensions

So far, not all of the POSIX 1003.1 routines have been provided with a PSX equivalent. Indeed this may never be achieved. The purpose of the PSX routines is to enable the programmer to use functionality of POSIX, so only those routines that are actually thought to be needed will be provided. If you have a need for a routine that has not been provided, please mail the author, who will do his best to provide the routine. Each routine is fairly simple to write; it is only the sheer number of routines that prevents a complete set being provided to date.

The POSIX 1003.1 standard refers to the ANSI C standard for the description of some of the routines. These are listed in the POSIX standard under ‘language specific services for the C programming language’. There are no corresponding routines in the draft FORTRAN binding. Nevertheless, some of these routines are so useful that a PSX implementation of them has been provided. Examples are allocating virtual memory (using malloc) and getting the current date and time.

Descriptions of the routines that are currently available in the PSX library are given in appendix E. Those routines that have been considered for inclusion in the library and have been rejected are listed in appendix F.

3.1 Future Extensions

While the PSX routines are clearly very useful as they stand, they do not always present the information in the manner that you may want. An example of this is the subroutine PSX_CTIME, which returns the data and time in a particularly perverse format. The temptation to ‘improve’ some routines has been resisted to ensure that there is consistency between the PSX routines and the corresponding true POSIX or C run-time library routines. However, there is clearly a need for routines that pull together some of the PSX routines in a more user friendly way and to provide information in a different manner. These routines will be provided in a separate package.