Zavedení spawn by bylo problematické, neboť jediná možnost, jak na Unixu modifikovat parametry nově spuětěného procesu, je provést to mezi fork(případně vfork) a exec v dětském podprocesu. Takový spawn by potřeboval 100+1 parametrů na nastavení handlů nového procesu, nastavení jeho environmentu, nastavení (e)uid, priority, process-group a všeho možného.
Z "politických" důvodů je naopak výhodné zavádět featury nekompatibilní s ostatními systémy, neboť se pak bude psát víc Linux-only programů. Kdoví, zda kqueue nebo /dev/poll nebyly zavrženy právě proto, že jsou s něčím kompatibilní, a místo toho nebyl udělán nekompatibilní epoll... Naštěstí tahle "politika" nedosahuje takové úrovně, že by byly úmyslně přidávány zbytečné syscally s cílem rozbít kompatibilitu.
To myslim slovo do pranice; Zalezi na tom jak hluboko to jde, kdybys mel pravdu do dusledku, tak by ve finale mohli programatori zjistit, ze nejde prenest ani grep z Unixware do AIXu (Uw a AIX volim proto, ze se jedna o kodem v tuto chvili asi nejkompatibilnejsi unixy vubec, castecny merge kodu probehl nedlouho pred temi nesmyslnymi zalobami) a to by byl konec GNU, protoze *BSD by od sebe byly taky mnohem dal, linuxu by taky bylo vic, protoze redhat by mel vlastni verzi /proc a suse by zase nemel kompatibilni swap oblast...
Mozna jsem to zahnal do extremu :)