Linux简介

Linux简介

什么是Linux?

Linux 是一个功能强大的操作系统,同时它是一个*软件,是免费的、源代码开放的,编制它的目的是建立不受任何商品化软件版权制约的、全世界都能*使用的UNIX兼容产品。
操作系统
 操作系统(Operating System,简称OS)传统上是负责对电脑硬件直接控制及管理的系统软件。
 操作系统的功能一般包括处理器管理、存储管理、文件管理、设备管理和作业管理等。当多个程序同时运行时,操作系统负责规划以优化每个程序的处理时间。
 对计算机系统而言,操作系统是对所有系统资源进行管理的程序的集合;对用户而言,操作系统提供了对系统资源进行有效利用的简单抽象的方法。
*软件
1.有三种软件模式:
商业软件(Commercial Software)
  由开发者出售拷贝并提供软件技术服务,用户只有使用权,不得进行非法拷贝、扩散和修改。
共享软件(Shareware)
  共享软件由开发者提供软件试用程序拷贝授权,用户在使用该程序拷贝一段时间之后,必须向开发者缴纳使用费,开发者则提供相应的升级和技术服务。
*软件(Freeware 或 Free Software)
  *软件所指的软件,其使用者有使用、复制、散布、研究、改写、再利用该软件的*。
2.*软件创始人
Linux简介
  *软件创始人 Richard M. Stallman(理查德·斯托曼)是黑客历史上最伟大的黑客,黑客中的圣者,是GNU Project 和 FSF 的创始人,制订了GPL开源*软件协议。
  GNU是由“GNU’s Not Unix”所递归定义出的首字母缩写语。GNU Project称为革奴计划,是由理查德·斯托曼在1983年9月27日公开发起的,它的目标是创建一套完全*的操作系统。”革奴计划”催生出数量众多的免费软件,在计算机领域影响巨大。该计划所倡导的“GPL(GNU通用公共许可)”授权方式是一种 Linux系统内核所采用的著名授权方式。
  *软件基金会 (Free Software Foundation,FSF)是倡导*软件和开源软件的国际性非盈利组织,对于国际开源社区的形成和发展起到了重要的推动作用。FSF是一个免税的为*软件发展的慈善团体,FSF 接受捐款,但是其大部分收入常常来自销售*软件的拷贝,和其它相关的服务。

Linux历史

--Unix诞生--
  1965年,贝尔实验室加入通用电气公司(GE)和麻省理工学院(MIT)的计划:建立一套多使用者,多任务,多层次的操作系统,multics。1969年,由于multics计划工作进度太慢,被喊停了。但在当时,Ken Thompson 已经有“space travel(星际旅行)”程序可以在GE-635上跑,但反应非常慢。这时,ken Thompson发现了一台闲置的pdp-7,Ken Thompson和Dennis MacAlistair Ritchie将程序移植在pdp-7上(使用的是汇编语言移植的),这个pdp-7在整个计算机历史上留下了芳名。此时的pdp-7只支持两个使用者,还没达到multics, 故命名为unix。1970年为unix元年。
  1971年,ken申请了一台pdp-11/24的机器,这台电脑只有24kB的物理内存和500k的磁盘空间。Unix占用了12kB的内存,剩下的一半内存可以支持两用户进行space travel的游戏。1973,由于使用汇编语言移植太麻烦,ken和dennis就将BCPL语言整合成B语言,再通过改良成为C语言。Ken和dennis成功使用C语言重写了unix的第三版内核。
  1974年,ken和dennis对外发表文章,引起了学术界的广泛兴趣并对其源码索取。unix第五版开始提供给各大学作为教学之用,各大学公司开始通过unix源码对unix进行改进和扩展。
--Linux诞生--
Linux简介
  1987年著名的荷兰计算机科学家 Andrew S. Tanenbaum 专门写了个简化的类 UNIX 系统 MINIX (mini-UNIX 的意思) 来给入门者学习。1991年4月,芬兰赫尔辛基大学学生Linus Torvalds开始对 Minix感兴趣起来,但不满意Minix这个操作系统。出于爱好,他根据可在低档机上使用的MINIX设计了一个系统核心Linux 0.01,但没有使用任何MINIX或UNIX的源代码。他通过USENET(就是新闻组)宣布这是一个免费的系统,主要在x86电脑上使用,希望大家一起来将它完善,并将源代码放到了芬兰的FTP站点上供人免费下载。本来他想把这个系统称为freax,意思是*( free) 和奇异(freak) 的结合字,并且附上了”X”这个常用的字母,以配合所谓的Unix-like的系统。可是FTP的工作人员认为这是Linus的MINIX,嫌原来的命名“Freax”的名称不好听,就用Linux这个子目录来存放,于是它就成了“Linux”。这时的Linux只有核心程序,仅有10000行代码,仍必须执行于Minix操作系统之上,并且必须使用硬盘开机,还不能称做是完整的系统;随后在10月份第二个版本(0.02版)就发布了。
--GUN/Linux--
  理查德·斯托曼1953年出生于美国纽约曼哈顿地区的犹太人家庭,1971年进入哈佛大学学习,同年受聘于麻省理工学院人工智能实验室。在AI实验室工作期间,斯托曼开发了一些今后影响深远的软件,其中最著名的就是Emacs(著名的集成开发环境和文本编辑器)。斯托曼在AI是一名典型的黑客,是整个黑客文化的一分子。
  然而进入八十年代后,黑客社群在软件工业商业化的强大压力下日渐土崩瓦解,甚至连AI实验室的许多黑客也组成了Symbolic公司,试图以专利软件来取代实验室中黑客文化的产物——可*流通的软件。斯托曼对此感到气愤与无奈,对Symbolic进行了一段时间的抗争。后于1983年9月27日发布了最初的声明,从1984年开始构建GNU工程,在1985年发表了著名的GNU宣言,正式宣布要开始进行一项宏伟的计划:创造一套完全*的,向下兼容Unix的GNU操作系统(GNU’s Not Unix!)。之后他又建立了*软件基金会来协助该计划。1989年,他与一群律师起草了广为使用的GNU通用公共协议证书,创造性地提出了“Copyleft”的概念。同时,GNU计划中除了最关键的Hurd内核之外,其他绝大多数软件已经完成。
  1991年芬兰大学生林纳斯·托瓦兹在GNU通用公共许可证下发布了最初是为自己创作的Linux操作系统内核,暂时替代了GNU计划的Hurd内核。至此,GNU计划基本完成,此操作系统被命名为GNU/Linux(这类操作系统常常被称为Linux,斯托曼坚持认为应该被叫做GNU/Linux以体现GNU在其中的重大贡献)
  和Windows及其它有专利权的操作系统不同,Linux仍然公开地开放源代码和并得到不断的扩展。任何人可以免费的使用它,只要他们做的任何改进都不是受著作权保护并且可以免费地保留利用。当前,据估计现在只有2% Linux代码是由Linus Torvalds自己写的,但他仍然拥有Linux内核(操作系统的核心部分) 并且保留了选择新代码和需要合并的新方法的最终裁定权。

Linux的特点

1.开放性
  系统遵循世界标准规范,特别是遵循开放系统互连(OSI)国际标准。
  Linux源代码开放,免费。
2.多用户
  系统资源可以被不同用户各自拥有使用。
3.多任务
  多任务是现代计算机的特点,计算机同时执行多个程序,它们相互独立互不影响。
4.出色的速度性能
  Linux可以连续运行数月、数年而无须重启,与NT相比,这一点尤为突出。
5.良好的用户界面
  Linux提供了3中界面,命令、系统调用和图像界面。
6.丰富的网络功能
  Linux在通信和网络功能方面优于其他操作系统。
7.可靠的系统安全
  Linux采用了许多安全技术措施,使网络服务得到安全保障。
8.良好的可移植性、兼容性
  Linux是一个与可移植操作系统接口相兼容的操作系统(POSIX),可以运行在不同的设备上,无须增加系统接口。

Linux系统的组成

Linux简介
Linux一般有4个主要部分:
1.内核
  系统的心脏,是运行程序和管理硬件设备的核心程序。
2.Shell
  用户与内核进行交互操作的一种接口。
3.文件系统
  文件系统是存放在磁盘等存储设备上的组织方法。
4.应用程序
  标准的Linux系统都有一套应用程序,包括了文本编辑器、桌面及软件、办公软件、编程语言、网络工具、数据库等。

Linux内核与发行版本

Linux简介
Linux内核
主要作者:Linus Torvalds
1994年3月,Linux 1.0版发布
官方网站:http://www.kernel.org
Linux内核的标志为企鹅Tux,取自芬兰的吉祥物
Linux内核实现了操作系统的基本功能
硬件方面:控制硬件设备,内存管理,硬件接口,基本I/O
软件方面:管理文件系统,为程序分配内存和CPU时间等
Linux内核版本
Linux内核版本号由三个数字组成:r.x.y
r:目前发布的Kernel版本
x:偶数:稳定版本,奇数:开发中版本
y:错误修补的次数
Linux简介
Linux 发行版
Linux 发行版(Distribution)是以Linux Kernel为核心,搭配各种应用程序和工具的软件集合。
Linux内核 + 各种*软件 = 完整的操作系统
发行版的名称、版本由发行厂商决定,包括厂商/社区提供的辅助安装、软件包管理等程序
发行版可以*选择使用某个版本的Linux内核。
相对于内核版本,发行版的版本号随发布者的不同而不同,与系统内核的版本号是相对独立的。
常见的Linux发行套件
http://www.distrowatch.com/ 此网址上可以看到所有的发行套件

Linux简介

类型 发行版 官方网址
商业支持 Red Hat Enterprise Linux www.redhat.com
商业支持 Mandrake Linux www.mandrivalinux.com
商业支持 SUSE Enterprise Linux www.novell.com/products
社区发布版 CentOS Linux www.centos.org
社区发布版 Ubuntu Linux www.ubuntu.com
社区发布版 Debian Linux www.debian.org
社区发布版 openSUSE Linux www.opensuse.org
社区发布版 Fedora Linux www.fedoraproject.org
社区发布版 Gentoo Linux www.gentoo.org

Red Hat 及其相关产品  
--Red Hat Linux系列发行版--
  Red Hat公司在发布了Red Hat Linux系列版本(已停止开发,最高版本为 9.0)的同时,还发布了Red Hat Enterprise Linux,即Red Hat Linux的企业版,简写RHEL。RHEL系列面向企业级客户,主要应用在服务器领域。RHEL采用收费使用的策略,用户使用RHEL产品可以获得官方的技术支持服务。
--Red Hat与Fedora--
2003年9月底宣布,将原有的Red Hat Linux开发计划与Fedora Linux计划合成新的Fedora Project。Fedora项目的目标是与Linux社区协作,只从开发源代码软件来创建一份完整的、通用的操作系统。Red Hat公司未来不再继续开发免费版Red Hat Linux,而由Fedora Project接手后续新发行版的开发工作,并将Fedora Project视为新技术的研究园地,这些技术稳定成熟后,会被纳入RHEL中使用,由于Fedora Project不断引入*软件新技术,从而导致其发行版本缺乏足够的稳定性,在实际的生产环境中不建议使用该版本。Fedora Project现已更名为Fedora。
--CentOS与RHEL--
CentOS个开源软件贡献者和用户的社区。对RHEL源代码进行重新编译,并且在不断地发展过程中,不断与其他的同类社区合并,逐渐成为使用最广泛的RHEL兼容版本。CentOS Linux的稳定性不比RHEL差,唯一不足的就是缺乏技术支持,因为它是由社区发布的免费版。
CentOS Linux与RHEL产品有着严格的版本对应关系,例如RHEL 7.1对应CentOS 7.1。
Linux运用领域
Linux操作系统自诞生到现在,已经在各个领域得到广泛应用,显示强大的生命力,并且其应用正日益扩大。
1.教育领域:
 操作系统课程的好教材
 每个儿童一台笔记本电脑OLPC (One Laptop Per Child)项目
 卡片式电脑(Raspberry Pi Cubieboard / Banana Pi / Orange Pi pcDuino)
2.服务器领域:
  Internet服务器操作系统的首选
  U2L (UNIX to Linux)计划也在广泛开展
3.云计算领域:
 开源是云计算的灵魂
  大多数的云基础设施平台使用Linux操作系统(OpenStack、CloudStack、OpenNebula、Eucalyptus等)
4.嵌入式领域:
  移动通讯终端:如Android手机
  移动计算设备:Android平板电脑、HandPC、PalmPC及PDA
  网络通讯设备:接入盒、打印机服务器、路由器、交换机
  智能家电设备:基于Ubuntu或Android的机顶盒(网络视频播放设备)、仿真设备、控制设备、行动装置等
  车载电脑、自动柜员机(ATM)等等
5.桌面领域:
  Ubuntu、Linux Mint、Fedora、优麒麟(Ubuntu Kylin)、标麒麟(NeoKylin)、深度(Deepin)、起点(StartOS)等等