Update of the POSIX standard 1003.1-2024 with new tools and features

After seven years of development, the IEEE Computer Society and the Open Group Consortium have adopted a new version of the POSIX 1003.1-2024 standard, which is intended to ensure portability between UNIX-like operating systems. The POSIX standard (Portable Operating System Interface) defines software interfaces between operating systems and application programs.

Advertisement


POSIX is divided into four parts. The basic definitions are a list of the conventions, definitions and concepts used in the standard. The system interface describes the C system calls with the associated header files. The third part contains a definition of the command line interpreters and auxiliary programs, i.e. shell functions and utilities. Finally, one part provides explanations about the standard. In the heyday of the mutually incompatible commercial Unix variants, POSIX conformity was an important criterion when choosing an operating system for a desired software. Since the current Linux and BSD variants are largely POSIX-compatible, the standard now published follows many of the additions already implemented in these and standardizes them.

The committees expanded the area of ​​shell processing to include the two tools readlink to display the contents of symbolic links and realpath to resolve the path name of a file. Also new for the tool are find the options -print0 to output the path name with a terminating zero byte and –iname for case-insensitive search. xargs is the limitation of the arguments by zero bytes via the option -0 now also included. read can be done via -d define the limiter, sed uses via -E extended regular expressions and set knows the option -o pipefail.

For C programs there is now the constant SIGWINCH and tools for creating shared objects. Some new features have also been added:

  • tcgetwinsize (Determining the size of the terminal window)
  • gettext (Organization of multilingual interfaces)
  • asprintf (Formatting a string and allocating a buffer taking into account the size of the output)
  • strlcpy and strlcat (analogous strncpy and strncatwhich append a zero byte at the end to protect against buffer overflows)

The definition for make now contains nested macros, allowed in the include-Directive specifying multiple files, knows among other things new targets .NOTPARALLEL, .PHONY and .WAIT. The macro CURDIR points to the current directory and with "::=", "::=", "+=", "?=" and "!=" There are new assignment operators for macros and variables.

The text of the standard is currently available as PDF on the IEEE website only for paying customers, educational institutions and registered users with an account. The text of the standard is to be published on the Open Group website “in the near future”. So far, only the previous edition of POSIX 1003.1-2017 is publicly available here.


(avr)

To home page

source site