Утверждён стандарт POSIX 1003.1-2024

in #ru23 days ago

После семи лет разработки профессиональное общество института инженеров электротехники и электроники (IEEE Computer Society) и консорциум Open Group утвердили новую версию стандарта POSIX 1003.1-2024, нацеленного на обеспечение переносимости программ между UNIX-подобными системами. Стандарт определяет программные интерфейсы между операционными системами и прикладными программами и охватывает набор библиотечных функций, возможностей командного интерпретатора и утилит.

Текст стандарта пока доступен только в формате PDF для платных клиентов, образовательных учреждений и пользователей, имеющих учётную запись на сайте IEEE. В ближайшее время текст стандарта будет опубликован публично на сайте Open Group (пока публично доступна только прошлая редакция POSIX 1003.1-2017, вышедшая в 2017 году).

Из изменений в POSIX 1003.1-2024, помимо исправления ошибок, можно отметить реализацию в shell сток $'...', добавление утилит readlink и realpath, появление в утилите find опций "-print0" и "-iname", добавление в xargs опции "-0" (использование нулевого символа в качестве разделителя, например, формируемого через find -print0), в read - опции "-d" (разделитель), в sed опции "-E" (расширенные регулярные выражения), в set - опции "-o pipefail".

Для программ на языке Си добавлена поддержка константы SIGWINCH, средств для создания разделяемых объектов, функций tcgetwinsize (определение размера окна терминала), gettext (организация многоязычных интерфейсов), asprintf (форматирует строку и выделяет буфер с учётом размера вывода), strlcpy и strlcat (аналоги strncpy и strncat, содержащие защиту от переполнения буфера и выставляющие замыкающий строку нулевой байт). В утилите make появилась поддержка вложенных макросов, разрешено указание нескольких файлов в директиве include, добавлены новые цели .NOTPARALLEL, .PHONY и .WAIT, добавлен макрос CURDIR, указывающий на текущий каталог, добавлены операторы назначения макросов и переменных "::=", ":::=", "+=", "?=" и "!=".

Источник: https://www.opennet.ru/opennews/art.shtml?num=61372

Coin Marketplace

STEEM 0.18
TRX 0.13
JST 0.028
BTC 56758.93
ETH 3033.46
USDT 1.00
SBD 2.30