• 周五. 3月 29th, 2024

5G编程聚合网

5G时代下一个聚合的编程学习网

热门标签

linux发展历史

admin

11月 28, 2021

一、开篇

1.1 操作系统

  我们知道一台计算机能够使用,离开不了两部分,硬件软件,一台个人pc,它硬件:cpu 、主板、内存、硬盘、等待组成,如果只有这些那,你还是不能使用这台电脑,只有你在把这台电脑组装完成后装上 一个操作系统 才能够使用,我们一般接触最多的操作系统就是 windows 和 苹果的 mac OS,那一个软件 他必须有服务器,而服务器其实也是一台性能很高的电脑,那这台电脑,必须也要有操作系统才能使用。

1.2 操作系统的作用

  是现代计算机系统中 最基本和最重要 的系统软件
  是 配置在计算机硬件上的第一层软件,是对硬件系统的首次扩展
  主要作用是管理好硬件设备,并为用户和应用程序提供一个简单的接口,以便于使用
  而其他的诸如编译程序、数据库管理系统,以及大量的应用软件,都直接依赖于操作系统的支持

1.3 不同应用领域的主流操作系统

  桌面操作系统:windows(用户群体大)、macOS(小资)、linux(一定技术,应用软件少)
  服务器操作系统:linux(安全、稳定、免费)、Windows Server(占有低,收费)
  嵌入式操作系统:linux(垄断唯一)
  移动设备操作系统:Android(穿棉袄的linux)、ios(有个性,不好驾驭)

下面我们就开始学习 linux 看看他的内在

二、linux

2.1 linux 发展历史

了解过去,我们才能知其然,更知所以然。总结过去,我们才会知道明天该何去何从。在时间的滚轮中,许许多多的东西就像流星一样一闪而逝,而有些东西却能经受着时间的考验散发着经久的魅力,让人津津乐道、流传至今。要知道明天怎么去选择、怎么去做,不是盲目地跟从今天各种各样琳琅满目前沿技术,而应该是去 – 认认真真地了解和回顾历史。

在我们了解linux之前,我们要先了解一下 unix

1965 年之前的时候,电脑并不像现在一样普遍,它可不是一般人能碰的起的,除非是军事或者学院的研究机构,而且当时大型主机至多能提供30台终端(30个键盘、显示器),连接一台电脑
image
为了解决数量不够用的问题

1965年左后由 贝尔实验室 加入了 麻省理工学院 以及 通用电气 合作的计划 —— 该计划要建立一套 多使用者(multi-user)、多任务(multi-processor)、多层次(multi-level) 的 MULTICS 操作系统,想让大型主机支持 300 台终端
1969年前后这个项目进度缓慢,资金短缺,贝尔实验室退出了研究
1969年从这个项目中退出的 Ken Thompson 当时在实验室无聊时,为了让一台空闲的电脑上能够运行 “星际旅行(Space Travel)” 游行,在 8 月份左右趁着其妻子探亲的时间,用了 1 个月的时间,使用汇编写出了 Unix 操作系统的原型
1970年Brian Kernighan戏称其系统为”UNiplexed Information and Computing Service”(UNICS)

1970年Ken Thompson尝试用Fortran重写UNIX失败后整合BCPL成B语言
1971年Ken Thompson使用B语言在PDP-11/24上编写了第一个正式版UNIX
1972年Dennis M.Ritchie为了能早点玩上游戏加入了项目
1973年Dennis M.Ritchie对B语言进行改造创造了C语言
1973年Ken Thompson和Dennis M.Ritchie使用C语言编写了第三个UNIX版本

1977年SUN创始人Bill Joy获得UNIX6核心原始代码对其进行改造后发布为BSD(Berkeley Software Distribution)版本,其他主要UNIX版本也在此时形成
1979年UNIX7开始AT&T收回UNIX版权并不再开放新版UNIX源代码
1983年Richard Matthew Stallman发起GUN(GNU’s Not UNIX)计划
1984年由于不能再使用UNIX源代码荷兰Vrije大学的Andrew S. Tanenbaum教授仿照UNIX着手开发Minix并于1987年完成
1991年Linus Benedict Torvalds仿造Minix开发了Linux,并将Linux0.02发布到网络上

1992年GUN放弃Hurd改以Linux为其内核(Hurd项目至今仍存在)
1993年AT&T将UNIX所有版权买给Novell,IBM等由于早期授权不受影响
1995年Bob Young创建RedHat
1995年Novell将Unix卖给SCO
21世纪初受Windows和Linux两面夹击下江河日下的SCO,在Windows的挑唆下控告IBM侵犯其源代码并意指Linux阵营
2007年Novell在各大公司的支持下状告SCO夺回UNIX版权

苹果和UNIX
1984年System 1发布直接来源是BSD,该系统首次实现GUI
1985年9月乔布斯被迫离开苹果
1988年苹果起诉Windows抄袭System界面
1996年乔布斯回归苹果
1997年乔布斯与盖茨合解
1997年System 7.6开始更名为Mac OS
2001年重新设计的Mac OS并命名为OS X
2007年基于OS X的ios随iphone一同发布

微软和UNIX
1975年盖茨从哈佛退学创立微软
1979年微软从AT&T获取授权并开发了运行于intel平台的Xenix
1980年微软买下QDOS改名MSDOS应付了与IBM的合作协议
1985年6月看到操作系统的潜力的IBM欲借与微软共同开发OS/2之名将操作系统把控回自己手中
1985年11月基于MSDOS的Windows1.0发布
1987年微软将Xenix出售给SCO应付IBM的同时发力Windows3.0
1987年11月微软发布Windows2.0
1990年具有使用价值的Windows3.0发布

Android和UNIX
2002年Andy Rubin创立Android公司,Android系统基于Linux内核
2005年google收购Android公司
2008年Android1.1发布

Unix 家谱
image

两尊大神 膜拜吧
image

回望历史:
因为 AT&T(通用电气) 的政策改变,在 Version 7 Unix 推出之后,发布新的使用条款,将 UNIX 源代码私有化,在大学中不再能使用 UNIX 源代码
Andrew S. Tanenbaum(塔能鲍姆) 教授为了能 在课堂上教授学生操作系统运作的细节,决定在不使用任何 AT&T 的源代码前提下,自行开发与 UNIX 兼容的操作系统,以避免版权上的争议 ,以 小型 UNIX(mini-UNIX)之意,将它称为 MINIX

linux 诞生
image

1991 年 林纳斯(Linus) 就读于赫尔辛基大学期间,对 Unix 产生浓厚兴趣,尝试着在Minix 上做一些开发工作
因为 Minix 只是教学使用,因此功能并不强,林纳斯 经常要用他的终端 仿真器(Terminal Emulator) 去访问大学主机上的新闻组和邮件,为了方便读写和下载文件,他自己编写了磁盘驱动程序和文件系统,这些在后来成为了 Linux 第一个内核的雏形,当时,他年仅 21 岁!
林纳斯 利用 GNU 的 bash 当做开发环境,gcc 当做编译工具,编写了 Linux 内核,一开始 Linux 并不能兼容 Unix
即 Unix 上跑的应用程序不能在 Linux 上跑,即应用程序与内核之间的接口不一致。
一开始 Linux 只适用于 386,后来经过全世界的网友的帮助,最终能够兼容多种硬件

image

这尊大神

2.2 Linux 内核及发行版

内核(kernel)是系统的心脏,是运行程序和管理像磁盘和打印机等硬件设备的核心程序,它提供了一个在裸设备与应用程序间的抽象层
Linux 内核版本又分为 稳定版 和 开发版,两种版本是相互关联,相互循环
稳定版:具有工业级强度,可以广泛地应用和部署。新的稳定版相对于较旧的只是修正一些 bug 或加入一些新的驱动程序
开发版:由于要试验各种解决方案,所以变化很快
内核源码网址:http://www.kernel.org
所有来自全世界的对 Linux 源码的修改最终都会汇总到这个网站,由 Linus 领导的开源社区对其进行甄别和修改最终决定是否进入到 Linux 主线内核源码中

2.3 linux 发行版

Linux 发行版(也被叫做 GNU/Linux 发行版)通常包含了包括桌面环境、办公套件、媒体播放器、数据库等应用软件。

目前市面上较知名的发行版有:Ubuntu、RedHat、CentOS、Debian、Fedora、SuSE、OpenSUSE、Arch Linux、SolusOS 等。
image

linux 特点
  1、免费/开源
  2、支持多线程/多用户
  3、安全、稳定性高
  4、对内存、文件管理机制优越
  5、可做嵌入式开发
  6、所需运行内存极少(4M)

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注