=== Завершение разработки API дескрипторов процессов Контакт: Konstantin Belousov FreeBSD давно предлагает средство «дескрипторов процессов» (Process Descriptors). Основное его использование — в песочницах Capsicum, где для работы с объектом требуется дескриптор, и дескриптор процесса предоставляет такой дескриптор. Другие операционные системы предоставляют аналогичное средство под тем же именем. Предлагаемый API был неполным, основным недостающим элементом был системный вызов man:pdwait[2], аналог семейства man:wait[2], который работает с дескриптором процесса вместо идентификатора процесса. Описываемый проект добавил вызов man:pdwait[2]. Другим важным дополнением стал вызов man:pdrfork[2], который обеспечивает такую же детальную поддержку создания копий процессов, как и man:rfork[2], но также возвращает дескриптор процесса в качестве дескриптора, подобно man:pdfork[2]. После добавления pdwait и pdrfork стали возможны естественные расширения для средств man:posix_spawn[3]. Теперь атрибут man:posix_spawnattr_setprocdescp_np[3] требует, чтобы man:posix_spawn[3] возвращал дескриптор процесса. Другим естественным дополнением стал man:posix_spawnattr_setexecfd_np[3], который указывает исполняемый образ через дескриптор файла вместо имени. В совокупности новые добавленные функции делают дескриптор процесса полным и позволяют использовать posix_spawn в песочницах. Спонсор: Фонд FreeBSD // // The FreeBSD Russian Documentation Project // // Original EN revision (18.04.2026): e267cce5a5b5c2f7f56c558e9ac1e757aa605521 //