В чем разница между сокетами POSIX и сокетами BSD?

Может ли кто-нибудь объяснить различия между сокетами POSIX и сокетами BSD?

Ответы

Ответ 1

Как указано в http://www.openss7.org/papers/strsock/sockimp.pdf:

Сокеты Berkeley. Сокеты используют интерфейс BSD, который был разработан BBN для набора протоколов TCP/IP по договору DARPA по 4.1aBSD и выпущен в 4.2BSD. Разъемы BSD предоставляет набор первичных API функции, которые обычно реализованы как системные вызовы. BSD Интерфейс сокетов нестандартен, управляемый из POSIX интерфейс тонким образом, и теперь устарел в пользу POSIX/SUS стандартный интерфейс Sockets.

POSIX Sockets. Розетки были стандартизованы X/Open, позже OpenGroup и IEEE в POSIX стандартизации. Они появились в XNS 5.2 [XNS99], SUSv1 [SUS95], SUSv2 [SUS98] и SUSv3 [SUS03]. POSIX/SUS Sockets теперь является общим среда приложения для доступа сети, обесценивая XTI для Сетевые приложения TCP/IP.

Ответ 2

bsd сокеты - это имя для интерфейса сокетов, который был сначала выпущен с операционной системой bsd в '83.

позже это было свернуто в спецификацию posix с более подробными эксплуатационными спецификациями.

Нет никакой разницы, кроме того, что термин сокеты bsd включает api, выпущенный с операционной системой bsd, тогда как стандарт posix применяется к любым os, которые хотят быть совместимыми с posix.