• Linux起源


    电脑的操作系统,比如Linux或者Windows、还有苹果的IOS,这些都是用来操作硬件的一些软件的集合。一开始电脑被发明出来的时候还很蠢,大家在三体电视剧里看到过,那个年代操作电脑输入信息,需要在读卡纸上面打洞,可想而知有多麻烦。所以人们就想开发一套操作系统可以方便地操作电脑。

    Unix的前世今生

    最早是Multics系统,它虽然失败了,但是培养出了很多人才。

    接着是由Ken Thompson开发的Unics系统,也就是后来的Unix系统的原型。

    1973年Unix系统正式诞生。一开始的Unics是汇编语言写的,后来为了可移植性用B语言进行了重写。但是,B语言的编译后运行性能不好。最终,用C语言重新改写后编译,就成了Unix。

    BSD分支。

    当时各个公司的硬件产品没有统一的标准,所以他们都需要为自己公司的计算机开发Unix系统。另一方面,出于商业考虑,他们想要收回Unix的版权。

    没了版权大学里就没法教Unix的课了,为了应对这个问题,一个叫Tanenbaum的教授,参考早期的Unix版本,写了一个叫Minix的系统,也就是Mini Unix。

    GNU计划-GCC的诞生

    在安装一些Linux的软件的时候,常常会需要GCC这个库。这是一个C语言的编译器。大多数软件都需要编译成二进制文件后才能够执行。所以在unix系统开发的初期,Stallman开发了这样一个软件,就是后来大名鼎鼎的GCC(GNU C Compiler)。

    而GCC就来自这个GNU计划。这个计划的目的是:建立一个自由、开放的Unix操作系统

    GNU和通用公共许可证(GPL

    为了避免GNU计划中的软件被商用,Stallman与律师编写了有名的通用公共许可证协议,也就是GPL。这个开源协议,即使到了现在也还在被大量使用。目前最新版是GPLv3。

    在GNU中开发的一些比较重要的软件还有:Emacs、glibc、Bash shell。这些都为后续一些软件的开发,奠定了基础。

    基于bash、gcc都GNU工具,1991年芬兰大学生Linus开发了Linux。

    开源和免费free

    到了这里,应该可以解开一个一直以来的疑问。那就是,为什么Linux系统是免费开源的。因为它一开始的初衷就是自由的,这个自由不是仅仅说的金钱上的free,而是人人都可以编写软件,人人都可以改进代码这样意义上的自由。

    但这样就产生了另一个问题,为什么有些Linux的发行版本是收费的呢。这是因为他们卖的不是软件本身,而是服务。这些发行商往往会提供一些售后或修改的服务,他们是针对这些服务收费。

  • 相关阅读:
    交换机和路由器技术-18-热备份路由选择协议HSRP
    dubbo Can not lock the registry cache file
    软件测试-Web自动化测试
    图片如何转换为文字?这些软件可以实现
    css渐变
    关于vector存放对象和对象指针的探索
    仿制药的未来商机--个人研发的体会
    IIS部署站点,直接下载文件的实现
    京东面试官:讲讲Redis各个数据类型的底层数据结构
    【广州华锐互动】VR全景工厂虚拟导览,虚拟现实技术提升企业数字化信息管理水平
  • 原文地址:https://blog.csdn.net/kayotin/article/details/136662533