zoukankan      html  css  js  c++  java
  • 6、Linux发行版组成与初识

    一、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
  • 相关阅读:
    转:用两个栈实现一个队列——我作为面试官的小结
    Android屏幕重力感应旋转
    简单的单例模板,继承使用即可
    cocos2dx windows 音量设置无效解决办法
    lua lu
    OpenGL ES API with no current context
    git更新某个目录
    sh ndk-build clean Cannot run program "sh": Launching failed Error: Program "sh" not found in PATH PATH=......
    sublime Text快捷键
    转:解决windows下eclipse中android项目关联android library project失败问题
  • 原文地址:https://www.cnblogs.com/xiangcl/p/13062317.html
Copyright © 2011-2022 走看看