Linux/Unix 基础:Linux 的历史

Linux 的诞生

在1991年,来自芬兰 Helsinki 大学的学生 Linus Torvalds 认为市场上应该有一个比较统一的 Unix 版本,从此他就开始为这个项目奋斗。后来这个项目就成为了 Linux 操作系统的内核。由于当时,他只是为自己的 PC 编写了这套 Linux 操作系统,原因是他当时买不起当时候主流的Intel 386 CPU 的计算机。所以他使用 GNU C 编译器在 MINIX 操作系统上完成的编译。由于这个历史原因,GNU C 编译器弦子舞仍然是编译 Linux 代码的主流编译器,但也使用其他编译器,例如 Intel C 编译器。

Linus Torvalds 开始写这个项目的时候仅仅是出于兴趣,没想到后来这个项目演变成了一个优秀的项目。首先他给这个项目命名为 Freax ,后来又改成了 Linux

他以需要授权的形式发布了 Linux 项目,仅限于商用。Linux 使用了 GNU 软件中的大多数工具,并受 GNU 版权保护。1992年,他根据 GPL 协议开源了内核。

Linux 的现状

如今,超级计算机,智能电话,台式机,Web应用的服务器,平板电脑,笔记本电脑和家用电器(如洗衣机,DVD播放器,路由器,调制解调器,汽车,冰箱等)都在使用 Linux 操作系统。

计算机的演变

在早期的时候,计算机的大小跟房子或者公园一样大。因此,你可以想象,操作一台计算器的难度是有多大。然而,每一台计算机都有不同的操作系统,这就使得操作计算机变的更加难。所以,在早期,要操作一台计算器的代价是极其昂贵的,一般人很难理解消费的起,并且很难理解计算机的存在的意义。

Uinx 的演变

1969 年,贝尔实验室的开发团队启动了一个项目,为所有计算机制作通用软件,并将其命名为「Unix」。它简洁大方,使用「C」语言代替汇编语言,并且其代码可以重复利用。由于「C」语言的代码可以重复利用,因此现在将其一部分代码(通常称为「内核」)用于开发操作系统和其他功能,并且可以在不同的系统上使用,并且它的源代码也是开源的。

最早的时候,Unix 系统仅在具有大型机和小型计算机(PC 是微型计算机)的大型组织(如政府,大学或大型金融公司)中使用。

Unix 的扩展

在 80 年代,许多组织结构(例如:IBM,HP 以及其他的十几家公司)开始创建自己的 Unix 系统。 这就导致了很多的 Unix 版本。接着,在1983年的时候,Richard Stallman 开发了 GNU 项目,它的目标是提供一个统一的开源的 Unix 的版本,给所有人使用。但是,GUN 项目在当时没有被很多人接受。
其他许多类似 Unix 的操作系统也应运而生,但最终都没有一个能够统一的 Unix 操作系统。

Image placeholder
cacvin
未设置
  0人点赞

没有讨论,发表一下自己的看法吧

推荐文章
Linux/Unix 基础:什么是 Linux?

简单来讲,Linux是一个操作系统(OS)。我们都很熟悉其他操作系统,就像Microsoftwindows,AppleMacOS,iOS,Googleandroid,等等这些,linux就像它们一样,

走进数据的历史

作者:陈启焕,某互联网数据分析师01数据、信息、知识数据是当今的热词。很多人的理解中,数据就是数字,其实不然,数据的范畴要大得多,包括数字、语言、文字、图像、视频,甚至是人类活动的行为都可以被认为是数

工具分享:Linux tree 命令安装和使用

说明tree命令是一个比较实用文件系统查看工具,如下图,可以阶梯式地罗列某个目录下的所有子目录:如何安装?RHEL/CentOS下:#yuminstalltree-yDebian/Ubuntu, Mi

Git教程_2.3 Git 基础 - 查看提交历史

在提交了若干更新,又或者克隆了某个项目之后,你也许想回顾下提交历史。完成这个任务最简单而又有效的工具是gitlog命令。 接下来的例子会用我专门用于演示的simplegit项目,运行下面的命令获取该项

Java 程序员眼中的 Linux_1.0.Linux 介绍

Linux介绍 Linux这个名字 Linux的Wiki介绍:http://zh.wikipedia.org/zh/Linux Linux也称:GNU/Linux,而其中GNU的全称又是:Gnu’sN

[Java 程序员眼中的 Linux] Linux 下常用压缩文件的解压、压缩

Linux下常用压缩文件的解压、压缩 常用压缩包解压命令整理 Linux后缀为.tar.gz格式的文件-解压 命令:tarzxvfXXXXXX.tar.gz Linux后缀为.bz2格式的文件-解压

笨办法 学Linux 安装Linux

Linux学习起步 Windows,VirtualBox虚拟机(.ova格式的预配置映像) 学习Linux你需要什么 VitualBox,虚拟机播放器。 putty,终端模拟器。 预配置的Virtua

别小瞧了 Linux,安卓、华为的自研系统,均源自 Linux!

众所周知,目前国内已有众多的国产系统,基本上均源自linux,以linux为基础进行二次开发。比如红旗linux、深度等等。但不知道为什么,一说起某系统是基于linux而来,很多网友就瞧不起,并且会觉

五个常用的Bash历史记录操作方式

众所周知,Bash历史记录里有许多快捷方式的记录,让人眼花缭乱。其实这些快捷方式使用起来,可以极大的提高我们学习和工作的效率。如果大家觉得这些方式很难记,可以循序渐进,每天只学一点内容,这样就能轻松掌

历史上最著名计算机病毒,似乎都成了我们的回忆

Windows勒索病毒似乎让全球计算机用户都闻风丧胆,不过这其实真的不算什么。然而令人始料不及的是,即便勒索病毒传遍了100多个国家,也仅仅才收获了5万美金。所以说勒索病毒真的不算啥。历史上比勒索病毒

gMIS吉密斯十年执念:Lower Costs较低成本Better Productivity较高效率

Hello2020!元旦快乐!今起揭开21世纪20年代的篇章.1.gMIS吉密斯十周年2010-2020,十年转眼已成历史,gMIS吉密斯——通用管理信息系统(generalManagementInf

IDC发布:4Q18云IT基础设施收入低于传统IT基础设施收入

根据IDC全球云IT基础设施季度跟踪报告,在2018年第四季度(4Q18),包括公有和私有云在内的云IT基础设施产品(服务器、企业存储和以太网交换机)销售收入同比增长28.0%,达到168亿美元。20

零基础学测试 1 - 在 Laravel 中使用 PHPUnit

创建Laravel应用$laravelnewmind-geek-laravel-test-demo进入项目$cdmind-geek-laravel-test-demo运行自带的测试用例$vendor/

零基础学测试 2 - 进一步理解 Laravel 的测试与 PHP Unit 的关系

细心的读者可以发现,上一讲中创建的用例继承的是PHPUnit的测试基类。

基础加强Junit、反射、注解

Junit单元测试 测试分类: 黑盒测试:不需要写代码,给输入值,看程序是否能够输出期望的值。 白盒测试:需要写代码的。关注程序具体的执行流程。 Junit使用:白盒测试 步骤: 定

Linux Shell 脚本快速入门

shell脚本是在一个文件中写入一起执行的命令集。对于使用像dos操作系统的DOS,windows操作系统的bat,linux操作系统的files的人来说,这几乎都是相同的概念。你只需要把一串命令写

Linux 安装 Node.js

因为我用最简单yum命令安装node.js发现node的版本不是最新的所以自己手动安装了nodejs流程如下 进入服务器安装nodejs安装包 进入保存包的目录 $cddownload 下载二进制

Linux 安装 Node.js

因为我用最简单yum命令安装nodejs发现node的版本不是最新的所以自己手动安装了nodejs流程如下 进入服务器安装nodejs安装包 进入保存包的目录 $cddownload 下载二进制包

Linux Shell 脚本快速入门

shell脚本是在一个文件中写入一起执行的命令集。对于使用像dos操作系统的DOS,windows操作系统的bat,linux操作系统的files的人来说,这几乎都是相同的概念。你只需要把一串命令写入

Linux 文件同步工具之 rsync

学习背景 1.最近公司的项目在使用jenkins做自动化构建,因为jenkins在构建时是比较耗性能的,便单独使用了一台服务器做构建服务器。但是个人觉得这样成本过高,单独拿一台服务器来构建并且该服务器

笨办法学 Linux 学习文本编辑器--vim

Linux学习文本编辑器--vim 在Linux中,就像任何类Unix操作系统,一切都只是文件。而Unix哲学指出,配置文件必须是人类可读和可编辑的。在几乎所有的情况下,它们只是纯文本。所以,首先,你

笨办法学 Linux 初识less

#文本浏览器,少即是多 现在你可以编辑文本文件,这很好。但是如果你只想查看一个文本文件呢?当然,你可以使用vim,但很多时候它是过度的。还有两件事要考虑: 如果你想查看非常大的文件,你将需要在尽可能快

笨办法学 Linux Bash:Shell、`.profile`、`.bashrc`、`.bash_history`

Bash:Shell、.profile、.bashrc、.bash_history。 当使用CLI(命令行界面)来使用Linux时,你正在与一个名为shell的程序进行交互。所有你输入的都传递给she

笨办法学 Linux 学习处理文件,`pwd`,`ls`,`cp`,`mv`,`rm`,`touch`

Bash:处理文件,pwd,ls,cp,mv,rm,touch 在Linux中,一切都是文件。但是什么是文件?现在完全可以说,它是一个包含一些信息的对象。它通常定义如下: 计算机文件是用于存储信息的

【Linux 工具】服务器文件传输利器 lrzsz

场景  服务端开发人员经常会遇到的一个场景就是将本地的文件传到服务器上,或者把服务器上的文件下载到本地,那这个时候大家一般会用ftp服务,来完成这件事。但是如果服务器上并没有安装ftp服务的时候,这个