UNIX家族?Windows NT家族?一文讲清操作系统繁杂的家族史

这篇具有很好参考价值的文章主要介绍了UNIX家族?Windows NT家族?一文讲清操作系统繁杂的家族史。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

关于专栏

本专栏更新速度慢,简单讲讲操作系统的那些事,让不是做操作系统开发的同学也能大概认识操作系统这个出现在生活各处的东西

浅淡操作系统系列第0篇


目录

关于专栏

贝尔实验室

UNIX

Linux

BSD

Windows NT

结语

快捷翻页

参考文章


贝尔实验室

讲操作系统肯定离不开贝尔实验室了,贝尔实验室作为整个星球最伟大的实验室(没有之一),创造出了很多颠覆性的产品

这个贝尔,就是著名的亚历山大·格拉汉姆·贝尔,电话专利的获得者

1876年,贝尔呈交电话专利申请并获得批准

第二年,具有商业头脑的贝尔就创办了贝尔电话公司

1895年,贝尔公司将其正在开发的美国长途业务项目分割,建立了一家独立的公司,称为美国电话电报公司,也就是大名鼎鼎的AT&T(American Telephone & Telegraph)

那时候谁也没想到,之后几年间,AT&T的规模和实力将超过了母公司

1899年,AT&T整合了美国贝尔的业务和资产,成为贝尔系统的母公司

1925年的1月1日,当时AT&T总裁华特·基佛德收购了西方电子公司的研究部门,成立一个叫做“贝尔电话实验室公司”的独立公司,之后公司改名贝尔实验室

在建立之初,贝尔实验室便致力于数学、物理学、材料科学、计算机编程、电信技术等各方面的研究。也就是说,除了电信技术的研发之外,它的重点在于基础理论研究

而正是基础理论的研究,开启了贝尔实验室的辉煌时代

1927年,贝尔实验室的戴维森和莱斯特·格莫尔通过将缓慢移动的电子射向镍晶体标靶,验证了电子的波动性

这项实验为所有物质和能量都同时具有波和粒子特性这一假设提供了强有力的证据

10年之后,戴维森又凭借在电子干扰研究方面取得的成就获得诺贝尔奖

1933年,贝尔实验室的卡尔·央斯基,通过研究长途通讯中的静电噪声,发现银河中心在持续发射无线电波。通过此研究,开创射电天文学

1947年,贝尔实验室发明晶体管

1948年,克劳德·香农发表论文《通讯的数学原理》,奠定了现代通信理论的基础。他的成果是部分基于奈奎斯特和哈特利先前在贝尔实验室的成果

1954年,贝尔实验室制作出了第一个有实际应用价值的太阳能电池

1962年,世界上第一颗通信卫星Telstar1发射成功且首次跨大西洋电视实播,出自贝尔实验室

1964年,阿诺·彭齐亚斯和罗伯特·威尔逊发现宇宙微波背景辐射,并因此获得1978年诺贝尔物理学奖

1969年,UNIX系统和C语言被贝尔实验室的Dennis·Ritchie和Brian·W.·Kernighan生成功研发

在1980年代,C语言又由Bjarne Stroustrup发展为C++语言

也是1969年,贝尔实验室的乔治·埃尔伍德·史密斯和威拉德·博伊尔共同发明电荷耦合元件(也就是CCD),正是现在扫码机、相机、扫描仪必备的感光组件。两人因而获得2009年诺贝尔物理学奖

几年后,手机通讯系统基础理论也出现在贝尔实验室里

  • 11位科学家获得诺贝尔奖
  • 16位获美国最高科学、技术奖——美国国家科学奖章和美国国家技术奖章,均由总统亲自颁奖
  • 4位获得了图灵奖(计算机界的诺贝尔奖)
  • 还有更多科学家拿了其它国家的高等奖章,就连实验室成为史上第一个机构获奖者(美国国家技术奖)。
  • ...... 

总而言之,那个时代的贝尔实验室,代表了全球科技的最前沿,是先进技术和创新思维的源泉

我们今天要谈的很多操作系统起源与贝尔实验室的UNIX和C语言,而博主在主更的C++也出自贝尔实验室,可以说万物皆可贝尔[doge]

UNIX系统算是对我们今天要提到的操作系统影响最大的了,操作系统可以分为两派(没错,别看很繁杂,一般分为两派就够了)一种是UNIX衍生派,一种是Windows NT衍生派,没错,除了Windows以外,都属于UNIX衍生的操作系统,所以今天,我们先讲UNIX

UNIX

讲到UNIX这可太庞大了,没办法全部理清楚了,因为除了Windows NT以外的操作系统基本都是UNIX了,只能挑几个重点讲讲了

UNIX有一个UNIX哲学,即:

  1. 一个应用尽可能只关注一个目标 
  2. 尽可能让多个应用互相协调 / 组合 
  3. 一切皆文件

用过Linux的同学这个时候肯定要跳出来了,这是Linux还是UNIX,为了更好的解释这个问题,我们来讲讲Linux

Linux

Linux,服务器都基本在用的操作系统,很多码农应该都用过,Linux的创始人Linus是一个超级极客,从小爱好计算机,那时候他刚搞了一台电脑,然后……

没有操作系统用啊???!!!

但时用的是MS-DOS和MINIX,MS-DOS大家应该都知道

后来因为Linus 不喜欢他的 386 计算机上的 MS-DOS ,而安装了MINIX,这是就有长得帅的同学要问了:MINIX是个啥???

其实假如你用英特尔处理器,那么你基本就逃不过MINIX,现代英特尔处理器中都有一个核心部件:英特尔管理引擎 (Intel ME-Intel's Management Engine),用来管理协调内部的诸多模块,尤其是传统芯片组整合进入之后,处理器已经差不多成了 SoC 单芯片系统,更需要一个“总管”,MINIX 正是负责这个工作,所以这个MINIX你基本逃不过了

Linux就是用MINIX为样本开发了原始的 Linux 核心。但是这种影响更多在于非技术层面,确切地说是一种精神上的“鼓舞”。在设计上,Linux 则和 MINIX 相差很大,在 Linux 系统还没有自己的文件系统之前,曾采用 Minix 的文件系统

MINIX 在核心设计上采用微核心,即将操作系统分成微核心和其上的提供文件系统、存储器管理、驱动程序等服务的服务程序

而 Linux 则和原始的 UNIX 都采用宏内核。在 Linux 发展之初,双方还于 1992 年在新闻组上有过一场精彩的争论,被称为塔能鲍姆-林纳斯辩论。MINIX 的作者和支持者认为使用宏内核是技术上的退步,而 Linux 的支持者认为 MINIX 本身没有实用性

看到这里,大家基本可以得出结论,其实Linux可能连类UNIX都有点困难,只能算是UNIX的亲戚,还是远房的,因为Linux处处没有UNIX的代码,但设计理念上又处处是UNIX

BSD

这个时候就有长得美的同学要问了(不是你咋那么多问题[doge]):除了Linux就没了?

其实还有一种,BSD

听说过Free BSD吧?没听说过?macOS总听说过吧?

这个时候有某位路人要惊呼了:什么?我们高贵的macOS既然也是UNIX???

没错,其实macOS也是UNIX血统,这次不算亲戚,更不远,BSD其实是UNIX直接衍生的

关于BSD的历史,这里引用困世大佬的这篇文章

受母校加州大学伯克利分校之邀,Thompson(UNIX创始人,前面讲过)于1975/1976学年曾担任该校的客座教授。在此期间,他与研究生们一起为UNIX开发了许多新特性,(他的学生之一,Bill Joy,后来与人共同组建了SUN微系统公司——一家最早涉足UNIX工作站市场的公司。),许多UNIX的新工具和新特性又陆续在伯克利分校问世,这包括:C shell、vi编辑器、一种改进型的文件系统(伯克利快速文件系统)、sendmail、Pascal语言编译器,以及用于新型Digital VAX架构的虚拟内存管理机制。这一命名为BSD(伯克利软件发布,Berkeley Software Distribution)的UNIX版本(包括源码在内)分发颇广。1979年12月,诞生了首个完整的UNIX发布版3BSD。(之前发布的Berkeley-BSD和2BSD并非完整的UNIX发布版,仅含由伯克利分校开发的新工具。)1983年,加州大学伯克利分校的计算机系统研究组(Computer Systems Research Group)发布了4.2BSD。该版本的发布意义深远,因为其包含了完整的TCP/IP实现,其中包括套接字应用编程接口(API)以及各种网络工具。4.2BSD及其前身4.1BSD在世界上多所大学开始广为流传。以这两者为基础,还形成了SunOS操作系统(首发于1983年)——这一由SUN公司销售的UNIX变种。其他重要的BSD版本还有发布于1986年的4.3BSD,以及发布于1993年的最终版本4.4BSD

1984年,Richard Stallman之前一直供职于MIT的一位天赋异禀的程序员,开始着手创建一个“ 自由的(free)”UNIX实现。Stallman的观点属于道德层面,而对“free”一词的定义则属于法律范畴而非经济范畴(请参见http://www.gnu.org/philosophy/free-sw.html)。然而,Stallman所描述的这一法律意义上的“自由(freedom)”却蕴含着言外之意:应可免费或以低价获得诸如操作系统之类的软件。为开发出一套完整而又可自由获取,包含内核以及所有相关软件包的类UNIX系统,Stallman发起了GNU项目(“GNU's not UNIX” 的递归缩写形式),并积极邀请有志之士加盟。1985年,Stallman创立了非盈利机构——自由软件基金会(FSF),以支持GNU项目和广义意义上的自由软件开发。GNU项目启动之时,BSD还不具备Stallman所指的那种“free”属性。使用BSD不但仍需获得AT&T的许可,而且用户不得随意修改并重新发布BSD中AT&T拥有产权的代码部分。这也体现出Stallman倡导的自由(free)软件概念的重要性与制定了GNU GPL(通用公共许可协议)的法律意义。http://www.gnu.org/philosophy/free-sw.html

值得一提的是,20世纪90年代初,另一种可以免费获得的UNIX也能在x86-32硬件架构上运行。Bill和Lynne Jolitz将BSD系统移植到32位的x86 cpu上,命名为386/bsd。这项移植工作基于BSD Net/2(发布于1991年6月),即4.3BSD源码的版本之一,该版本中残存的所有AT&T专有源码要么被全部替换,要么予以删除——主要针对6个无法轻易更换的源码文件而言。Jolitzes夫妇将Net/2代码移植到了x86-32硬件架构,重写了缺失的源码,并于1992年2月发布了386/BSD的首个版本(0.0版本)。在初战告捷后,对386/BSD的开发工作便出于各种原因而停滞不前。面对日渐积压的大量补丁程序,另外两组开发团队相机而动,基于386/BSD分别创建了自己的版本:NetBSD和FreeBSD。前者侧重于对大量硬件平台的可移植性;后者则主要关注性能,并成为如今应用最为广泛的BSD。1993年4月,NetBSD首版(版本号为0.8)发布。FreeBSD的首个CD-ROM版本(版本号为1.0)则发布于1993年12月。1996年,OpenBSD在从NetBSD项目分离出去之后,也发布了最初版本(版本号2.0)。相比较而言,OpenBSD偏重于安全性。2003年中,在与FreeBSD 4.x分道扬镳之后,一款新型BSD——DragonFly BSD又浮出水面。DragonFly BSD采用的设计方法与FreeBSD 5.x有所不同,能够支持对称多处理器(SMP)架构。可能有的人会想BSD要蓬勃发展走向辉煌了......现实总是那么出人意料,1992年初,Berkeley Software Design, Incorporated公司(BSDi,如今隶属于Wind River公司)开始发行受商业支持的BSD UNIX——BSD/OS——以Net/2发布版以及Jolitze夫妇所开发的386/BSD特性为基础。BSDi的发布版包含二进制和源代码,售价995美元,此外,BSDi还建议潜在客户使用其电话号码1-800-ITS-UNIX。1992年4月,USL对BSDi发起诉讼,诉状称BSDi售出产品中含有USL(UNIX System Laboratories 派生自AT&T的子公司,专门从事UNIX的开发和销售)专有源码及商业机密,要求其停止销售。此外,诉状还称BSDi的电话号码容易误导消费者,要求BSDi停止使用。这场诉讼愈演愈烈,最终还加入了对加州大学的索赔请求。法院最终驳回了USL几乎所有的诉讼请求,仅对其中的两项请求予以支持。随后,加州大学又针对USL发起发诉,诉称:USL没有为System V中使用的BSD代码支付费用。这场诉讼悬而未决之际,USL已被Novell收购,Novell时任CEO——Ray Noorda公开声称:较之于法庭辩论,自己的公司更愿意参与市场竞争。双方最终于1994年1月达成庭外和解。在删除Net/2 release源码18000个文件中的3个文件,对若干其他文件做出细微改动,并为其他大约70个文件添加USL版权注意事项后,加州大学仍可继续自由发布BSD。1994年6月,经过修改的系统以4.4BSD-Lite之名发布(1995年6月,加州大学发布了最后一版4.4BSD-Lite版本号为 Release 2)。此时,根据和解条款,BSDi、FreeBSD以及NetBSD纷纷以经过修改的4.4BSD-Lite源码替换了各自的Net/2基础源码

后面,macOS就是基于BSD开发出来的,macOS其实还是有纯正UNIX血统的

Windows NT

Windows就相对单一了,Windows就是Windows,反过来也一样,而且基本大家都用过,所以各种什么就不用说了吧

反正我挺瞧不起Windows的设计哲学的


结语

作者会经常帮助有问题的小伙伴解决问题如果你有问题,可以直接到评论区指出,作者会在看到后到24小时内给予答复

如果本文有任何问题欢迎在评论去指出,如果喜欢这篇文章,希望能点赞评论关注

5994字,7个父项,2个子项


快捷翻页

博主文章推荐:

C++教程 - How to C++系列专栏第0篇

C++教程 - How to C++系列专栏第1篇

C++教程 - How to C++系列专栏第2篇


参考文章

Unix、Windows、Mac OS、Linux系统故事 - 知乎

主流的操作系统有哪些? - 知乎

贝尔实验室的百年兴衰史 - 知乎

UNIX的名字是我起的——对话 UNIX 开发者:Brian W. Kernighan_unix命名_《新程序员》编辑部的博客-CSDN博客

了解Unix的历史与现状_unix系统还有人用吗_卓有成效的程序员的博客-CSDN博客

我看Unix与Windows的本质区别 - 知乎

在工具应用选择上,为什么我开始相信 Unix 哲学? - 少数派

UNIX、BSD(FreeBSD)操作系统简介 - 知乎

Linux和UNIX的到底有关系及区别? - 知乎

类UNIX操作系统家族发展时间线图谱(1969-2020)_unix图谱_rtoax的博客-CSDN博客

一个悄然成为世界最流行的操作系统 - 知乎

不为人知的 Linus 大神 - 知乎文章来源地址https://www.toymoban.com/news/detail-648851.html

到了这里,关于UNIX家族?Windows NT家族?一文讲清操作系统繁杂的家族史的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【Linux从入门到放弃】Linux操作系统环境变量一文详解

    🧑‍💻作者: @情话0.0 📝专栏:《Linux从入门到放弃》 👦个人简介:一名双非编程菜鸟,在这里分享自己的编程学习笔记,欢迎大家的指正与点赞,谢谢!   提到环境变量,大家应该都不会陌生,不管学习Java还是Phython都需要去安装环境变量,尤其是我自己在做深度学习

    2024年02月05日
    浏览(50)
  • linux操作系统与Windows操作系统

    【1】Windows 操作系统和Linux操作系统有什么不同? 1、首先是他们的开放性不同 所谓的开放性就是linux操作系统是开放源du码系统,可以对其程序进行编辑修改。而微软的daoWindows系统是受微软版权保护,只能微软内部进行开发及修改。 2、其次是它们的价格不同 linux系统是免费

    2024年02月04日
    浏览(52)
  • Windows系统管理一:操作系统概述

    其工作主要是进程调度,在单用户单任务的情况下,必处理器仅为一个用户的一个任务所独占,进程管理的工作十分简单。但在多道程序或多用户的情况下,组织多个作业或任务时,就要解决处理器的调度、分配和回收等问题 存储器管理主要是指针对内存储器的管理 存储分

    2024年02月09日
    浏览(54)
  • 如何编写Windows操作系统

    编写一个完整的操作系统是一项非常复杂的任务,需要深入了解计算机体系结构和操作系统的工作原理,还需要熟悉汇编语言和C/C++编程语言。在这里,我们简单介绍一下编写Windows操作系统的基本步骤。 Windows操作系统是由微软公司开发的,因此微软提供了一些用于Windows操作

    2024年02月07日
    浏览(55)
  • Windows 操作系统架构介绍

    Windows 系统架构包括以下组成部分: 内核:Windows 内核是操作系统的核心部分,它负责管理系统资源、处理用户程序和驱动程序的请求、协调各种系统组件之间的通信等任务。Windows 内核分为用户模式和内核模式,其中内核模式是更高级别、更安全的模式,用户程序无法直接访

    2024年02月15日
    浏览(62)
  • Windows Server操作系统安全加固

    操作系统下载链接: https://msdn.itellyou.cn/ ed2k://|file|cn_microsoft_hyper-v_server_2012_r2_x64_dvd_2708277.iso|2144010240|3BB6E1FB513204D8D2C6991B14B35D9B|/ 1.启用口令复杂度策略,口令最小长度为8位; 2.配置口令定期更新策略,口令更新周期为90天; 3.配置登录失败处理策略,连续登录失败5次后锁定用

    2024年02月07日
    浏览(54)
  • 虚拟机及windows操作系统安装

     一、虚拟机的安装 一路next 【用户体验计划】全都取消勾选 已经注册过,永久有效      ——文件来自【微信公众号[低调鸡哥]后台回复[vm虚拟机]】 二、Win7的激活与安装 打开msdn官网:MSDN, 我告诉你 - 做一个安静的工具站 (itellyou.cn) 【操作系统】-【Windows 7】 选择版本下载

    2024年02月08日
    浏览(43)
  • 深入理解Windows操作系统机制(二)

    我是荔园微风,作为一名在IT界整整25年的老兵,今天我们来重新审视一下Windows这个我们熟悉的不能再熟悉的系统。 我们每天都在用Windows操作系统,但是其实我们每天直接在打交道的并不是Windows操作系统的内核,而是Windows操作系统的人机交互界面,这个界面其实只是Window

    2024年02月17日
    浏览(55)
  • 操作系统-- Linux vs Windows

    内核是应用连接硬件设备的桥梁 现代操作系统,内核一般会提供 4 个基本能力: 管理进程 、线程,决定哪个进程、线程使用 CPU,也就是进程调度的能力; 管理内存 ,决定内存的分配和回收,也就是内存管理的能力; 管理硬件设备 ,为进程与硬件设备之间提供通信能力,

    2024年01月25日
    浏览(54)
  • 一文搞清UNIX/Linux与Windows文件换行符格式差异

    当一个文件在Windows和Linux上交替操作后,经常遇到一些莫名其妙的问题,如shell脚本无法执行,找不到shell脚本等问题,本文j谨就这一问题做一总结,供各位参考; 本博客地址,https://blog.csdn.net/qxhgd,欢迎各位关注,转发请注明出处。 换行符是行尾 (EOL),是一个特殊的字

    2024年02月15日
    浏览(38)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包