
今天的帖子只是一堆笔记,因为我正面临着一个主题的干法术。
一切都始于外壳 ……
“ 外壳 ”一词的最一般含义是指用户用来键入命令的任何程序……Mac中的Terminal是外壳。 也通常称为命令行界面或CLI。
Shell掩盖了底层OS的细节,并管理了要执行命令所需的技术细节。 换句话说,它是在一台计算机上可以找到的最基本的面向用户程序,它与任何计算机用户在编辑内核之前获得的从地面运行都非常接近。
谁开发了第一个广泛使用的外壳? 贝尔实验室的一个叫汤普森的家伙。 他的工作所产生的外壳称为Thompson外壳。 之后,另一位称为Bourne的计算机科学家(开发人员?)重写了Thompson shell,并将其命名为Bourne shell。 这些发生在1970年代和1980年代。
什么是GNU? 它代表GNU不是Unix。 该项目由Richard Stallman于1983年发起(至今仍在运行),目的是创建可以作为计算机基础的软件,并根据称为GNU通用公共许可证的合法公共领域许可证将其免费提供给任何人。
在1990年代,一个名叫Richard Stallman的人发起了一场革命。 在他启动GNU项目之前,几乎所有操作系统都是专有的。 这意味着只有人需要花更多钱才能拥有一台计算机,这也意味着很少有开发人员曾经在大公司以外的计算机上工作过。 GNU代表GNU并非Unix,并且适当地是递归首字母缩写,它是Stallman发起的一个项目,旨在创建可以作为计算机基础的软件。 它应根据称为GNU通用公共许可证的合法公共领域许可证免费提供给任何人。
重击?
自从两个半月前我开始认真学习编码以来,Bash令我感到困惑。 显然,我在Macbook上使用的命令行界面运行bash。 “为什么要用暴力的名字?”,我心想。
事实证明,bash是一个外壳,其名称的词源与GNU一样俗气。 Bash实际上代表“再次bourne壳”,这是一种嘲讽,因为Bourne shell是专有的。 非常聪明。
汤普森壳(Bell Labs)>伯恩壳(Bell Labs)>伯恩再次壳(GNU)
然后,在1991年,一个独立于GNU项目的名为Linus Torvalds的家伙出现了一个名为Linux的内核(操作系统的核心),他的工作与GNU项目的人们结合在一起,并作为第一个版本发布。 1992年12月向世界推出了免费操作系统。
开源运动
包括我在内的许多人至今尚不了解的这一早期革命,是我们现在熟悉的开源运动的种子。 他们起初将其称为“免费软件”,但有人认为“免费”意味着廉价和劣质软件,因此在某些时候,人们开始将其称为开源。 在我看来,“开放”一词确实更好地体现了整个运动的精神。
这一切令我着迷。 阅读有关计算机行业从一开始就如何发展的有趣信息,我感觉自己仿佛进入了历史的不同时期,观察了早期开发人员取得的胜利的短暂而美好的时光。
我现在知道,编写程序是关于将复杂的指令(源自希望使计算机执行某项操作,进行某些计算 )分解为一系列较小的,机器可读和可执行的指令。 当程序员设法做到这一点时,无论是在小规模的功能还是相互依赖的功能系统上,它都感觉像是幸福。
就像我在脑海中想象的GNU项目场景一样,我看到无数激动和欢乐的时刻,因为开发人员一次又一次地“破解代码”,直到可用的,可靠的,免费的软件可供全世界使用为止。
虽然时代肯定发生了变化,但是软件开发仍然是一个成长中的行业。 边缘仍在扩大。 虚拟现实,增强现实,人工智能等可能会发生并正在发生。 这是一个激动人心的时刻,成为技术。