Unix/Linux是怎么出现的

这篇文章主要讲解了“Unix/Linux是怎么出现的”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Unix/Linux是怎么出现的”吧!

创新互联建站坚持“要么做到,要么别承诺”的工作理念,服务领域包括:网站设计、网站制作、企业官网、英文网站、手机端网站、网站推广等服务,满足客户于互联网时代的建德网站设计、移动媒体设计的需求,帮助企业找到有效的互联网解决方案。努力成为您成熟可靠的网络建设合作伙伴!

不得不提的自由软件

Richard Stallman 是一个自由软件的追求者,同时是一个即刻,他信仰自由软件,相比商业软件,自由软件可以更加快速的传播,可以团结更多优秀工程师的力量,但是 Unix 在是一个商业软件,所以他希望创建一个真真自由而开放源代码的专有 Unix 系统替代品。但是创建一个操作系统谈何容易,他开始以 GUN 的名义开发 Unix 平台上的工具程序和软件,Unix 源码不开源,但是我开发的这些软件套件开源。当时也有一个内核项目在进行,但却是是一件很难的是。没有内核,

自由软件和开源就很难进行,但是他的工作还是非常有意义的,他开发了 GUN 套件以及一些 Unix 平台上的编译程序,主要有:

  • Emacs

  • GNU C (GCC)

  • GNU C Library (glibc)

  • Bash shell

后来很多软件开发者都在这些基础上用这些工具进行程序开发,进一步壮大自由软件团体,不过相比最初的构想,建立一个自由的 Unix 操作系统,这些还远远不够,因为没有内核,所以那些软件依旧只能运行在有专利的 Unix 平台上,一直到 Linux 的出现...

Linux 要来了

1988 年 芬兰人 Linus Torvalds 进入了自己外祖父的大学-赫尔辛基大学,就读计算机科学,因为专业关系,他在大学时接触到了 Unix,但是当时机器资源紧张,学校的机器不够他玩,他就像自己搞一个 Unix,但是这东西那是那么容易就搞,一个操作系统相当的复杂。

不过很快,他就知道了 Minix 的消息,所以他跟很多人一样也购买了 Minix 磁带,然后把 Minix 安装在了自己贷款购买的 Intel 386 电脑上,终于可以愉快的玩耍了,而且磁带中是有源码的,所以他就可以更改优化它,毕竟是大牛,很快他就让 Minix 支持了多任务。

后来他在 BBS 上也留言,说 Minix 可以变得更好更强大,但是 Tanenbaum 依旧不愿意去做这件事,后来 Linus Torvalds 就想,何不自己搞一个内核玩,而且现在还有 Minix 可借鉴,站在巨人的肩膀上,一切做起来就简单多了,所以他就开始了核心程序的开发。

好在那时的很多软件条件都已经具备,很重要的就是GNU 的自由软件, 他用GNU 的自由软件(上一节提到的)将核心程序代码与386紧紧的结合在一起,最终写出他所需要的核心程序。然后发布在了校内 BBS 上。

Unix/Linux是怎么出现的

同时提供了下载,有趣的是由于 FTP 上下载目录的名称为: Linux,所以大家都开始叫它 Linux。

后来为了兼容 Unix,Linus Torvalds 决定修改 Linux,以便让所有 Unix 上能运行的软件都可以在 Linux 上运行,而且那时已经有成熟的 POSIX 规范,所以他按照这个规范,实现了这个规范,慢慢的 Linux 变得越来越好,越来越好...

要点

  • 通过 C 语言重构 Unix、Unix 具有了很好的可移植性,让其可以移植到许多硬件体系结构中。

  • Ken Thompson 的 Unix 哲学 成为模块化软件设计和计算的强大模型。Unix 哲学推荐使用小型的、专用的程序组合起来完成复杂的整体任务。

  • Linux 的很大吸引力在于操作系统在许多硬件体系结构(包括现代 PC)上的可用性以及类似使用 Unix 系统管理员和用户熟悉的工具的能力

  • 在 Unix 发行版中缺少一个影响软件和硬件供应商的通用内核。

  • 对于 Linux,供应商可以为特定的硬件设备创建设备驱动程序,并期望在合理的范围内它可以在大多数发行版上运行。

  • Linux 已经显示出其超越 Unix 的显著优势在于其在大量硬件平台和设备上的可用性。

感谢各位的阅读,以上就是“Unix/Linux是怎么出现的”的内容了,经过本文的学习后,相信大家对Unix/Linux是怎么出现的这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是创新互联,小编将为大家推送更多相关知识点的文章,欢迎关注!


名称栏目:Unix/Linux是怎么出现的
网页网址:http://ybzwz.com/article/jsoeog.html