Presented without context, for amusement purposes only, a page from my notes:
FreeBSD | NetBSD | Linux | |
---|---|---|---|
Per-process default route |
Poorly documented, possibly incomplete |
Probably not |
Poorly
documented, buggy |
Can compile PhantomJS | Probably | Probably | Yes |
Jails | Yes | No | Not really |
Xen paravirtual guest | Incomplete | Yes | Yes |
System call tracing | truss | None? | strace |
pipe2 | Yes | Yes | Yes |
closefrom | Yes | Yes | No |
sysctl | Yes | Yes | No |
getauxval | No | No | Yes |
signalfd | No | No | Yes |
execvpe | No | Yes | Yes |
Reference documentation | Acceptable (YMMV1) | Acceptable (YMMV) | Major gaps |
Tutorial documentation | Terrible | Terrible | Terrible |
Package management | Broken as designed | Broken as designed | Good |
System maintenance automation | I can’t find any | I can’t find any | Acceptable |
QA reputation | Excellent | Good | Good |
Security reputation | Good | Good | Debatable |
Development community | Unknown to me | Unknown to me | Full of assholes |
1 It makes sense to me, but then, I taught myself Unix system programming and administration by reading the SunOS 4 manpages.