Блин.. ну как вам объяснить что сокет может быть унаследован только чилдом после форка :)
ну еще и между тредами. может вы таки почитаете книги по программированию в unix системах?в остальном сокет как и файловый дискритор - ЛОКАЛЬНЫЙ ОБЪЕКТ ДЛЯ КАЖДОГО ПРОЦЕССА.
для обхода этого ограничения был сделан inetd style, но он никогда не рекомендовался для тяжело нагруженных приложений так как накладные расходы на создание 1 сокета (1 файлового дискритора) и 3х (1 сокет + stdin/stdout для приложения) - это совсем разные вещи :)
Для 20 последовальных соединений это фигня, а вот для 20к уже нет или для 100к. (если мой склероз не изменяет - структура описывающая файловый дискритор занимает в памяти 500 байт - теперь оцените расходы в 50мб ядерной памяти, или 150мб - при том что в 32bit режиме весь объем ядерной памяти ограничен 300мб, остальное это highmem, vmalloc area и тп)
Поэтому не один из сервисов которые расчитаны на работу с такими потоками - не делают как inetd style.
Возмем для примера прокси сервера (squid/oops), web, балансировщики нагрузки и тп.
Так что upstart это клева - может быть, но не применимо там где высокая нагрузка :)