6、Linux发行版组成与初识

冷暖自知 提交于 2020-08-18 06:50:40

一、Linux发行版

1、从1992年linux诞生至今产生了数百种之多的Linux发行版,1992-2013期间诞生的各发行版之间的关系如下图所示
tRlvCR.png

2、但距今为止,主流的发行版、二次发行版乃至三次发行版它们之间的关系如下图所示。
tRlvCR.md.png

二、Linux发行版的组成部分

  1. 我们常用广义上的Linux指代Linux的发行版,但从狭义上来说Linux仅仅是指代Linux内核(Linux kernel)。
  2. 完整的Linux发行版由应用程序(Application) + Linux Kernel组成。
  3. 开源程序通常以源码(文本格式)方式提供,这样带来的好处是可以自由、灵活的使用。
  4. 一般情况下,源代码通过编译器编译成可执行二进制程序在电脑中运行
  5. CPU架构
CPU指令架构 操作系统 指令集 生产厂商 备注
x86 CISC intel
x64 CISC intel 又称作AMD64 第一款x64指令架CPU由amd研发
m68000 = m68k 摩托罗拉 早期摩托罗拉CPU指令架构
ARM RISC ARM 移动终端设备主流CPU指令架构
Ultrasparc solaris SUN
Power AIX IBM
powerpc = pcc Apple、IBM、摩托罗拉
alpha Hp-Unix HP
MIPSalpha DEC
  1. 指令集分为

    1. 复杂指令集(Complex Instruction Set Computing,CISC)
    2. 精简指令集(Reduced Instruction Set Computing,RISC)
  2. 机器语言(接口)——> 汇编语言(接口)——> 高级语言(C、C++)[需要使用编译器将文本格式代码转换为对应架构CPU的汇编语言代码,再使用汇编器转换为机器对应的二进制代码]

  3. 可移植(portable)

  4. 交叉编译(cross compile)

  5. POSIX(POS)

    1. API:Application Program Interface(可移植操作系统接口)
      2. ABI:Application Binary Interface (应用的二进制格式接口)
  6. 如:Linux, BSD, AIX, ...等都可以称作Unix-like(类Unix的系统),通常这类程序的API与ABI是兼容

  7. 理查德·马修·斯托曼(Richard Matthew Stallman), RMS发起的GNU运动

    1. 闭源:不提供源代码
    2. 开源:提供源代码;
  8. 开源协定

    1. FSF:Free Software Foundation(自由软件基金会)
      1. GPL:General Public License(通用公共许可证)copyright, copyleft
      2. LGPL:Lesser GPL(更宽松的GPL)
      3. GPLv2, GPLv3
    2. ASF:Apache Software Foundation(Apache软件基金会)
      1. Apache License(Apache许可证)
  9. 双线授权

    1. Community(社区版本):遵循开源协定;
    2. Enterprise(企业版本):通过在社区版本上附加很多易用软件
  10. 程序管理

    1. 程序的组成部分
      1. 二进制程序;
      2. 配置文件;
      3. 库文件;
      4. 帮助文件;
    2. 程序包管理器
      1. 程序的组成文件打包成一个或有限几个文件,并通过包管理数据库进行相应记录
      2. 安装:将打包后的文件展开到指定目录下,并通过包数据库进行记录
      3. 卸载:根据包管理器相关记录将安装生成后的文件进行删除
      4. 查询:根据安装记录返回相关查询结果
Linux发行版 软件包格式 软件包管理工具 软件包前端管理工具
Debian .deb dpkg apt-get
RedHat .rpm rpm yum或者dnf
S.u.S.E .rpm libzypp zypper
Gentoo Portage emerge
ArchLinux Pacman port
Kali
LFS Linux From Scratch(从零构建Linux)【编译安装指南,自行编译安装Linux】
  1. 安装Linux:使用虚拟机的方式安装Linux
  2. 常用虚拟化软件程序:(把有限的计算机资源虚拟出给虚拟机使用)
    1. Vmware workstation
    2. virtualbox
  3. CentOS的镜像站点
    1. http://mirrors.aliyun.com
    2. http://mirrors.163.com
    3. http://mirrors.sohu.com
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!