通常,我们通常所说的操作系统是涉及内核的软件的组合,该内核的工作是管理计算机的资源以及运行在内核之上的某些应用程序,称为用户区(包括浏览器,编译器, pdf阅读器,不是内核,驱动程序或vm虚拟机管理程序的任何东西)。
没有一定的历史背景,就不能回答这个问题的其余部分。理查德·斯托曼(Richard Stallman)于1983年9月27日宣布了GNU项目。该项目的目的是提供开发UNIX之类的操作系统所需的软件(以及附带的用户领域)作为免费软件。到1992年,GNU工程几乎完成了对其软件必不可少的所有部分-除了其中之一:内核。同时,Linus Torvalds 作为免费软件发布了他的内核 Linux(版本0.12),并获得了GPL许可。因此,有可能第一次运行(几乎)完全由自由软件组成的计算机。
Linux(如上所述)是一个内核,尽管它是允许您使用计算机的软件的最终基础,但它并不是唯一有用的工具。您应该将其与某种应用程序(用户区)配对以使其运行。这就是Debian或Ubuntu等GNU / Linux发行版的功能。
值得一提的是,内核既重要又无关紧要。请允许我解释。大多数使用计算机的人都习惯于用户域而不是内核。内核大部分是透明的,大多数人会使用具有相同用户域的另一个内核,甚至可能不会注意到差异(当然,除非它们取决于特定内核提供的功能)。
因此,当您使用Linux时,您确实在使用GNU操作系统的实现。这就是Linux内核和GNU用户区(GNOME,GNU编译器集合,GNU调试器,GNU Coreutils,GNU binutils等)。这就是为什么FSF坚持称其为GNU / Linux(在我看来,这是一个公平的要求)。
当然,您可以使用不带GNU用户界面的Linux(提示:Android,Busybox),当然也可以在其他内核(kfreebsd,hurd等)之上使用GNU用户界面。
至于Unix是开放源代码之类的,这是一个涉及很多争论的问题。但是,您可能会在这里找到一些有用的信息