zoukankan      html  css  js  c++  java
  • 1.Linux是什么?

    1. UNIX设计理念:
      • 所有的程序或系统装置都是文件。
      • 不管构建编辑器还是附属文件,所写的程序只有一个目的,就是有效地完成目标
    2. 操作系统:应用程序->系统调用->内核->硬件。其中系统调用和内核就是操作系统主要的功能,而应用程序一般是根据操作系统给出的系统调用接口来设计。操作系统的内核必须要跟硬件配合,以提供及控制硬件的资源进行良好的工作
    3. 纯种的UNIX:目前被称为纯种的UNIX指的就是System V 以及BSD这两套。
    4. 编辑器和编译器是两种不同的概念
    5. GPL(GNU General Public License):自由软件的重点并不是指"免费",而是指具有"自由度(freedom)"的软件,史托曼进一步说明了自由度的意义是:用户可以自由运行、复制、再发型、学习、修改与强化自由软件
    6. 多任务和单任务:
      • 多任务:一个CPU就会在不同的程序间切换。
      • 单任务:一个CPU在一个时间内仅能进行一个程序。单任务和多任务的生成主要为:CPU芯片支持 + 操作系统的工作调度设计
    7. Linux主要参考标准的POSIX接口规范,因为POSIX标准主要是针对UNIX与一些软件运行时候的标准规范,只要依据这些标准规范来设计的内核与软件,理论上就可以执行UNIX的程序
    8. Linux开发的主要原因:
      • 开源导致可移植性
      • 虚拟团队的支持
      • 模块化:Linux随时都有程序代码加入的状况,于是Linux便逐渐开发成具有模块的功能。即是将某些功能独立于内核外,在需要的时候才加载到内核中。
    9. Linux的精神:托瓦兹的Linux开发副手,以及资源传送修补程序的黑客志愿者,其实都没有见过面,而且彼此分布在地球的各个角落,大家群策群力共同开发出现今天的Linux-----虚拟团队。
    10. Linux的内核版本(栗子:2.6.18-92.e15):
      • 2为主版本,其中主版本的数字又分:
        • 主次版本为奇数:开发中版本(development)如2.5
        • 主次版本为偶数:稳定版本(stable)如2.6
      • 6为次版本
      • 18为释出版本,释出版本则是在主次版本架构不变的情况下,新增的功能累积到一定的程度后所新释出得内核版本
      • 92.e15为修订版本:有针对某个版本的内核修改过部分的程序代码,那么那个被修改过的新的内核版本就可以加上修改版本了。
    11. Linux distribution:
      1. 可完全安装的Linux发布套件
        • Linux早起都是由黑客工程师所开发维护的,他们并没有考虑到一般用户的能力
        • Kernel + Softwares + Tools的可完全安装的系统,我们称之为Linux distribution
      2. 针对于Linux distribution标准设定:
        • Linux Standard Base(LSB)
        • 目录架构File system Hierarchy Standard(FHS)
      3. 每个Linux distribution唯一的差别可能就是该开发者自家所开发出来的管理工具以及套件管理的模式。distribution主要分为RPM方式安装和debian的dpkg方式安装
    12. Linux in China:
      1. CLE套件对于很多进行了翻译和开发中文套件
    13. 关于授权:
      1. Open Source(开放源码)
        • GNU General Public License
        • Berkeley Software Distribution(BSD)
        • Apache License Version 2.0:如果你修改过该软件,软件的名称依旧需要定名为Apache才行
      2. Close Source
        • Freeware
        • Shareware:带有试用期的软件
    --------------Stay Hungry,Stay Foolish
  • 相关阅读:
    [Algorithms] Insertion sort algorithm using TypeScript
    [Algorithms] Determine if a string is a palindrome
    [Algorithm] Determine if two strings are an anagram
    [Vue + TS] Watch for Changes in Vue Using the @Watch Decorator with TypeScript
    [Vue +TS] Use Two-Way Binding in Vue Using @Model Decorator with TypeScript
    uvc摄像头代码解析7
    并查集
    流程节点多场景多表单
    【图像识别】 图像处理和图像分析(leptonica)leptonica-1.68安装配置 (vs2008)
    Eclipse完美汉化教程
  • 原文地址:https://www.cnblogs.com/iksjweb/p/5251875.html
Copyright © 2011-2022 走看看