从程序员的angular度来看Linux内核和UNIX内核(如FreeBSD)之间的区别

从程序员的angular度来看Linux内核和UNIX内核(如FreeBSD)之间的区别。 我搜查了几篇关于这个的文章。 他们也从公司经理的angular度比较了用户的观点和pipe理者的观点。 任何人都可以从程序员的angular度来看文章或说些什么吗?

我的意思是程序员,无论是用户程序员还是内核级程序员?

任何暗示或启示真的很感激。

希望这不是一个老生常谈的问题。 :P

Solutions Collecting From Web of "从程序员的angular度来看Linux内核和UNIX内核(如FreeBSD)之间的区别"

对于一个用户级的程序员来说, 没有什么区别。 用户级编程将编码为像C这样的语言VM,并由C库例程将其转换为较低级别的系统调用。

那些使用其他工具(如Perl,Python,Java等)的人甚至会从内核中删除更多 ,所以它们也不会直接影响到他们。

就内核程序员而言,由于内核本身的不同,差异可能是显着的。 虽然我在Linux中做了一些相当的工作,但是我还没有看到FreeBSD的内部工作,所以我不能很好地评论低级别的差异,但是(最后一点是通知的意见,而不是福音),因为他们运行独立的开发流程,拥有完全一致的观点的机会很小。

从标准的角度来看,确实没有什么区别。 Linux是一个“POSIX”兼容的操作系统,FreeBSD,Mac OS X和Solaris也都是“POSIX”兼容的。 至少在理论上。

一旦你移过标准,就会有很多不同之处。 Linux作为inotify,udev和其他一些独特的系统。 FreeBSD有kqueue。 它们的确切实现有像ptrace这样的不同之处。 例如Mac OS X的ptrace几乎没有在其他Unix系统中可以找到的功能。

除了自定义库之外,开发工具也有所不同。 Solaris和FreeBSD有dtrace。 Linux有valgrind。 Mac OSX有乐器。

你看什么水平会影响你看到或看不到的差异。