操作系统简介

桌面操作系统

Windows

优点
1.足够优秀的软件生态环境,足够优秀的、高质量的办公软件;例如驱动、游戏、office套件。
2.适配各个PC厂商,例如联想、惠普等。
3. WindowsPC均价相对便宜。对非开发者友好。
4.对开发者支持越来越好:自2014年, Satya Nadella成为Microsoft的CEO之后,微软对云计算、开源领域的投入相当大。 收购了GitHub,推出了非常棒的编辑器VsCode,以及Windows subsystem Linux项目,让Windows也能原生安装Linux系统。未来还会对Linux的支持更近一步, 包括不限于Windows系统融合Linux内核,在windows terminals下也能使用Linux的工具,前途光明。
缺点
1.目前对开发者不友好。最常用的* nix工具不能很好的工作,仍然需要适配。
2.编译速度慢:不得不说,类unix系统还是对开发者最友好的,同等配置的机器,安装不同的系统,Windows下的的编译速度会慢于Linux。
3. Windows10越来越臃肿,以及长时间运行软件会越来越卡。Windows10的系统镜像已经到了4个多GB,对比干净的Linux主流发型版ubuntu、centos的2GB来说, 有很多鸡肋的功能。

Linux

开发使用的系统,双系统之一
优点
1.简单干净:它是开源的操作系统,主流发型版也足够简单干净,不像Windows那样病毒、流氓程序泛滥。
2.对开发者相当友好,因为你的服务器也多数是Linux系统,有很多高效的命令行工具,命令行意味着效率。编译速度也是相当快。
缺点
1.对PC厂商支持较少,需要很强的动手能力,且难找驱动。但是主流发型版很大程度解决了这一问题。
2.电源管理较差,同等配置的Windows和Linux, Linux耗电更快。
3.对办公软件支持较差,游戏支持较差。

MacOS

优点
1.开发者友好,软件数量也较多,但质量一般
2. mac笔记本美观,做工出色,Retina显示屏、 续航久、机身较轻,综合素质高
3.和众多苹果设配同步,包括iPhone、 iPad、 HomePod
缺点
1.价格较高
2.对游戏支持较差

服务器操作系统

建站需要用服务器,在服务器选购过程中,除了常见的CPU、内存、硬盘、带宽等配置以外,用户还需要自行选择操作系统,大多数云服务器都使用Windows Server或Linux操作系统:

Windows Server系统

付费
占有率低

Windows Server是专为服务器设计的专有操作系统,包括Microsoft开发的服务器应用程序,如IIS Web服务器,用于支持虚拟化的工具,以及包括防火墙的安全工具。Window系统的用户界面和开发环境都是面向对象的,易于理解、学习和使用。Windows是一个单用户、多任务的操作环境,允许用户同时运行多个应用程序,或在一个程序中同时做几件事情。

Windows系统有多个版本:Win 2003是较早出现的,不过随着服务器硬件环境的不断提升,微软基本已经停止对该版本的安全更新,因此不再列入推荐。现在比较主流的版本是win2008,相对前者而言显得更加成熟,无论是网络优化还是系统兼容方面都比较好。Win2012则对系统原有功能进行了扩展,兼具开放性、可伸缩性、安全性、高性能、操作简单等优势特点,但应用普及率还有待提升。

Linux系统

安全、稳定、免费
占有率高

Linxu是专为多用户服务器环境而构建的操作系统,可以实现不同用户共同登陆系统,资源分享上也比较公平。Linux运行稳定高效,并有庞大的用户和社区支持,能很快发现系统漏洞,迅速发布安全补丁,此外还支持大量的优质开源软件。不过,基于Linux的操作系统对技术要求较高,对小企业或一般用户而言,有一定的管理难度。

Linux拥有大量的发行版可用,每个发行版都提供了一个完整的服务器操作系统和一个管理器,允许用户轻松安装诸如Web服务器或电子邮件服务之类的软件,常用发行版如CentOS、Ubuntu和Debian。CentOS 是企业级的Linux发行版本,稳定、占用资源小、配置简单;Ubuntu有强大的软件源支持、兼容性好,但主要以桌面应用为主;Debian则以稳定性著称,整个系统基础核心非常小,对于小内存,首选Debian。

嵌入式操作系统

Linux

移动设备操作系统

IOS
Android(基于Linux)

虚拟机

虚拟机(Virtual Machine)指通过软件模拟的具有完整硬件系统功能的、运行在一个完全隔离环境中的完整计算机系统

  • 虚拟系统通过生成现有操作系统的全新虚拟镜像,具有真实操作系统完全一样的功能
  • 进入虚拟系统后,所有操作都是在这个全新的独立的虚拟系统里面进行,可以独立安装运行软件,保存数据,拥有自己的独立桌面,不会对真正的系统产生任何影响
  • 而且能够在现有系统与虚拟镜像之间灵活切换的一类操作系统

操作系统的发展历史

Unix

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

为了解决数量不够用的问题

  • 1965 年左后由 贝尔实验室 加入了 麻省理工学院 以及 通用电气 合作的计划 —— 该计划要建立一套 多使用者(multi-user)多任务(multi-processor)多层次(multi-level)MULTICS 操作系统,想让大型主机支持 300 台终端
  • 1969 年前后这个项目进度缓慢,资金短缺,贝尔实验室退出了研究
  • 1969 年从这个项目中退出的 Ken Thompson 当时在实验室无聊时,为了让一台空闲的电脑上能够运行 “星际旅行(Space Travel)” 游戏,在 8 月份左右趁着其妻子探亲的时间,用了 1 个月的时间,使用汇编写出了 Unix 操作系统的原型
  • 1970 年,美国贝尔实验室的 Ken Thompson,以 BCPL 语言为基础,设计出很简单且很接近硬件的 B 语言(取BCPL的首字母),并且他用 B 语言 写了第一个 UNIX 操作系统
  • 1971 年,同样酷爱 “星际旅行(Space Travel)” 的 Dennis M.Ritchie 为了能早点儿玩上游戏,加入了 Thompson 的开发项目,合作开发 UNIX,他的主要工作是改造 B 语言,因为B 语言 的跨平台性较差
  • 1972 年,Dennis M.RitchieB 语言 的基础上最终设计出了一种新的语言,他取了 BCPL 的第二个字母作为这种语言的名字,这就是 C 语言
  • 1973 年初,C 语言的主体完成,ThompsonRitchie 迫不及待地开始用它完全重写了现在大名鼎鼎的 Unix 操作系统

C 语言

  • 在把 UNIX 移植到其他类型的计算机上使用时,C 语言强大的移植性(Portability)在此显现
    • 机器语言和汇编语言都不具有移植性,为 x86 开发的程序,不可能在 Alpha,SPARC 和 ARM 等机器上运行
  • C 语言程序则可以使用在任意架构的处理器上,只要那种架构的处理器具有对应的 C 语言编译器和库,然后将 C 源代码编译、连接成目标二进制文件之后即可运行

Minix

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

Linux

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

Linux 内核及发行版

Linux 内核版本

  • **内核(kernel)**是系统的心脏,是运行程序和管理像磁盘和打印机等硬件设备的核心程序,它提供了一个在裸设备与应用程序间的抽象层
  • Linux 内核版本又分为 稳定版开发版,两种版本是相互关联,相互循环
    • 稳定版:具有工业级强度,可以广泛地应用和部署。新的稳定版相对于较旧的只是修正一些 bug 或加入一些新的驱动程序
    • 开发版:由于要试验各种解决方案,所以变化很快
  • 内核源码网址:http://www.kernel.org

所有来自全世界的对 Linux 源码的修改最终都会汇总到这个网站,由 Linus 领导的开源社区对其进行甄别和修改最终决定是否进入到 Linux 主线内核源码中

Linux 发行版本

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

  • 常见的发行版本如下:

    • Ubuntu
    • Redhat
    • Fedora
    • openSUSE
    • Linux Mint
    • Debian
    • Manjaro
    • Mageia
    • CentOS
    • Arch
  • 十大 Linux 服务器发行版排行榜:http://os.51cto.com/art/201612/526126.htm

在几乎每一份与 Linux 有关的榜单上,基于 Debian 的 Ubuntu 都占有一席之位。Canonical 的Ubuntu 胜过其他所有的 Linux 服务器发行版 ―― 从简单安装、出色的硬件发现,到世界级的商业支持,Ubuntu确立了难以企及的严格标准

Linux 的应用领域

服务器领域

  • Linux 在服务器领域的应用是其重要分支
  • Linux 免费、稳定、高效等特点在这里得到了很好的体现
    • 早期因为维护、运行等原因同样受到了很大的限制
    • 近些年来 Linux 服务器市场得到了飞速的提升,尤其在一些高端领域尤为广泛

嵌入式领域

  • 近些年来 Linux 在嵌入式领域的应用得到了飞速的提高
  • Linux 运行稳定、对网络的良好支持性、低成本,且可以根据需要进行软件裁剪,内核最小可以达到几百 KB 等特点,使其近些年来在嵌入式领域的应用得到非常大的提高

主要应用:机顶盒数字电视网络电话程控交换机手机PDA、等都是其应用领域,得到了 Google、三星、摩托罗拉、NEC 等公司的大力推广

个人桌面领域

  • 此领域是传统 Linux 应用最薄弱的环节
  • 传统 Linux 由于界面简单、操作复杂、应用软件少的缺点,一直被 Windows 所压制
  • 近些年来随着 UbuntuFedora 等优秀桌面环境的兴起,同时各大硬件厂商对其支持的加大,Linux 在个人桌面领域的占有率在逐渐的提高

你可能感兴趣的:(操作系统)