Linux的基础知识讲解

发布时间:2021-09-17 11:20:27 作者:chen
来源:亿速云 阅读:118

本篇内容主要讲解“Linux的基础知识讲解”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Linux的基础知识讲解”吧!

1、计算机组成。

CPU,: 运算器、控制器、寄存器、缓存;

存储器: 内存(Random Access Memory);

Input:disk,adapter,keyboard,mouse

Output:disk,adapter,display

Linux的基础知识讲解

2、内核(kernel)  

      基于硬件的第一层软件扩充,提供操作系统最基本的功能:

         驱动底层硬件;

         将底层资源抽象(接口)供程序调用;

         管理各种运行的程序,分配有限的资源,保证各程序相安无事(欺骗程序,模拟所有资源给程序占有随时调用);

      完整的OS:  kernel+ app

      狭义上的OS: kernel

      OS接口:

           GUI:Graphic User Interface;

           CLI: Command Line Inerface;

        (linux的桌面只是其一个应用程序)

    内核的辉煌发展历史,精彩程度不逊于量子物理:

       Multics (Multiplexed Information and Computing Service):

            1964年由贝尔实验室、麻省理工学院及美国通用电气公司所共同参与研发的,其目的是为了开发出一套安装在大型主机上多人多工的操作系统;

            Ken Thompson(后被称为UNIX之父),将“Space Travel"的程序移植到一部被闲置的PDP-7(Digital的主机);

            1973年Ken Thompson 与Dennis Ritchie用C语言重写了Unix的第三版内核;

            Unix第五版以“仅用于教学目的”的协议,提供给各大学作为教学之用,成为当时操作系统课程中的范例教材;

            1979年Unix的版本V7开始,Unix的许可证开始禁止大学使用Unix的源码,包括在授课中学习;----埋下伏笔了

                 Berkeley: BSD Unix

                 AT&T    : System V

                     SUN: solaris;

                     IBM: AIX

                     HP : HP-UX

         类Unix操作系统

            1990 minix

            1991 Linus Benedict Torvalds (他老爸是共产主义者)Linux出世,遵从GPL,它的出现为GNU组织提供了内核,GNU为Linux提供了大量的APP;

                       TCP/IP成熟及http的应用,linux根植于互联网,在随后的几年网络大爆发,开源的linux极速发展;

                 Larry Wall 虔诚的基督徒  研发了patch,互联网协调开发

                 缺点:

                    超牛的人开发的app,通常不适合桌面终端,但也可以做的非常漂亮;

                    开源起初被认为不稳定(编译环境不一致经常出错),非商业化的特点(都说IOS稳定,都说安卓系统...),这种现象在移动互联网发展后逐渐消失;

3、常见Linux的发行版,不同发行版之间的联系与区别。

      为何有不同的版本?

          编译环境不一致衍生不同版本,需要提供方进行维护?加入不同的app产生差异?

      一个典型的Linux发行版包括:Linux内核,一些GNU程序库和工具,命令行shell,图形界面的X Window系统和相应的桌面环境。

    POSIX: Portable Operating System Interface 可移植操作系统接口

          POSIX标准定义了操作系统应该为应用程序提供的接口标准,为一个POSIX兼容的操作系统编写的程序,应该可以在任何其它的POSIX操作系统(即使是来自另一个厂商)上编译执行。

    ABI:Application Binary Interface   编译好的目标代码在使用兼容ABI的系统中无需改动就能运行。

    常见的linux发行版:

       Debian: 非商业化,但要求有技术的;

          Unbutu(人性)----桌面化 mint

          knopix---- 安全系统;

       Slackware:  KISS(Keep It Simple Stupid)原则

          Suse(商业)

            openSuse:欧洲非常流行

            SLES:SUSE Linux Enterprise Server

        Redhat:

           Redhat9.0以后

              RHEL:  Red Hat Enterprise Linux  商业

                     提供源码,不提供编译,要交费才提供服务,如补丁升级之或咨询服务。        (这个补丁升级搞一下攻防演练就知道其价值)

                     red hat对这种centos发行版的态度是:"我们其实并不反对这种发行版,真正向我们付费的用户,他们重视的并不是系统本身,而是我们所提供的商业服务。" 

            CentOS:

                     RHEL 一直都提供源代码的发行方式,CentOS 就是将 RHEL 发行的源代码重新编译一次,形成一个可使用的二进制版本。

                     CentOS 并不向用户提供商业支持,当然也不负上任何商业责任(非商业化的特点啊)

            Fedora:由全球社区爱好者构建维护,红帽公司定位为新技术的实验场。个人领域的应用。

        Gentoo:Linux世界最年轻的发行版本,Portage技术,软件包管理系统。

        kali: 自带各种渗透工具;

        LFS: Linux from Scratch ;自己构建Linux

    版本号:

       major  , minor, release

       linux内核; 0.99 ; 2.2; 2.4; 2.6; 3.0; 4.0

       各发行版的版本:

       RHEL: 5.x  6.x  7.x

              rpm,yum,dnf

       Debian: 8.x

              dkpg, apt-get

       OpenSuse: 13.x

              rpm,zypper

4、常见的开源协议(GPL,LGPL, BSD,Apache等)

   GNU: Richard Stallman ;  is not Unix   

         自由含义 : 自由学习和修改; 自由使用;自由分发;自由创建衍生版;

         1985年创建FSF,大量重量级app加入,重要组件操作系统的内核(称为HURD)未实现,刚开始时只能用Unix内核,直到遇上了linux;

            X-window  gcc(GUN C Complier--->GNU Compiler Collection)  VI(visual interface) ,app很多很强大,

         FSF : free software Foundation 自由软件基金会,为NU计划提供技术、法律以及财政支持             

         GPL:General Public Licence 开源协定,

              1)要求软件以源代码的形式发布,并规定任何用户能够以源代码的形式将软件复制或发布给别的用户。

  2)如果用户的软件使用了受 GPL 保护的任何软件的一部分,那么该软件就继承了GPL软件,并因此而成为GPL软件,也就是说必须随应用程序一起发布源代码。

              3)GPL并不排斥对自由软件进行商业性质的包装和发行,也不限制在自由软件的基础上打包发行其他非自由软件。

                                                                                   老毒锋的毒蛇毒-->南希仁-->软猬甲-->杨康--->彭连虎(这例子不好啊)。

    LGPL: GNU Lesser General Public License; GNU宽通用公共许可证,宽松程度上与BSD, Apache相似

    BSD: Berkeley Software Distribution 伯克利软件发行版

             1)如果再发布的产品中包含源代码,则在源代码中必须带有原来代码中的BSD协议;

             2)如果再发布的只是二进制类库/软件,则需要在类库/软件的文档和版权声明中包含原来代码中的BSD协议;

             3)不可以用开源代码的作者/机构名字和原来产品的名字做市场推广;

    Apache:非盈利开源组织Apache采用的协议

5、Linux的哲学思想

     1)一切皆文件; 

        open(); read(); write(); create(); close(); delete();

     2)由众多功能单一的程序组合去实目标,一个程序只做一个事情;

     3)尽量避免和用户打交道:以编程的方式实现自动化任务;

     4)使用文本文件保存配置信息;

6、linux目录结构以及目录结构命名规定

    结构:倒置树状结构   目录+文件

       文件命名: 区分大小写;

                  可以除了使用除斜线(/)以外的任意字符;

                  以点号开头的文件为隐藏文件;

                  不能超过255个字符;

       路径: 绝对路径  /PATH/basename

              相对路径  ./basename

到此,相信大家对“Linux的基础知识讲解”有了更深的了解,不妨来实际操作一番吧!这里是亿速云网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

推荐阅读:
  1. Linux磁盘基础知识介绍
  2. linux的命令cp讲解

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

linux

上一篇:关于web前端中微前端的误解有哪些

下一篇:web前端中应该了解的微型前端框架有哪些

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》