我正在为一个项目学习更多关于unix和linux的知识。我注意到Unix是Mac的父系统,也是linux的父系统。
这两者在基于C的编程范围内是否相似?它们与linux有多密切的关系?
发布于 2015-10-14 15:22:16
Unix不是一个OS,而是一个OS家族。Mac就是操作系统。Linux不是操作系统,而是内核。
如果您想学习C编程,那么使用哪个操作系统并不重要,因为所有这些都是编译器。不同的编译器会给出稍微不同的二进制,但为了学习目的,它们几乎是一样的。
我推荐学习C语言的新手用户使用嘎吱声或gcc
(我个人的观点是:clang是由专家推荐的,因为它比gcc更快,而且它的错误报告比gcc更好。差异介于clang和gcc之间)
发布于 2015-10-14 15:58:50
Mac和Linux实现了用户程序和操作系统内核之间的接口。这个接口从Unix开始,在所谓的POSIX*标准中标准化。如果您想了解这个接口,那么Unix环境中的高级编程是一本很好的读物。不过,Unix不仅仅是实现。这是一种软件开发的哲学,它的总结可以在http://www.faqs.org/docs/artu/ch01s06.html上找到(它是整本书的一部分)。
(*标准的故事实际上涉及得更多一些。这些书提供了更多的细节)。
https://unix.stackexchange.com/questions/236114
复制相似问题