Linux的简介

Linux的简介

冯诺依曼体系结构

  • 主要特点:使用存储器,采用二进制(据说,采用二进制的灵感来源于中国的八卦,2变4,4变8…)

  • 体系介绍:其由几大部分组成,输入设备,运算器,控制器,内部存储器,外部存储器,输出设备。

    • 目前,输入设备就是指键盘鼠标,

    • 运算器和控制器现在统称CPU。其实已经内置了两个功能。

    • 内部存储器就是内存,某种意义上,缓存也算内部存储器。

    • 外部存储器就是硬盘,光盘,移动存储等。

Linux系统组成

硬件,内核,系统调用,(shell壳,库函数)应用程序。

  • 内核将硬件资源抽象出来,形成系统调用,应用程序直接访问系统调用,不能直接调用内核,这样保证了系统的稳定性

    • 内核的工作:进程管理,文件系统管理,内存管理,驱动管等基本工作。

  • 库函数,为了方便应用程序的开发,把一些经常用到的系统调 用封装起来,形成常用的库。叫库函数。

  • 开发应用程序的时候,可以直接使用系统调用,也可以使用库函数。shell其实也是一种应用程序。

Linux主流发行版

现在Linux主要的发行版为Red Hat(Centos)、Gentoo 、Debian、SuSE,Slackware

  • DeBian,比较好,限制比较少,也难用一些。(linux熟手)

    • 国际化协作产生,而且 Debian开发者 所创建的操作系统中绝大部分基础工具来自于GNU工程 ,因此 “Debian” 常指Debian GNU/Linux。

    • ubuntu:属于其二次发行版,其中的knopix以其安全性著称。Minit桌面版,以其桌面华丽著称。

  • RedHat。从9.0分开

    • RedHat Enterprise Linux(企业版):简称:RHEL 18个月或更长时间,版本号7.0。另外,CentOS:Communicity 就是红帽山寨版(据说已经被招安。。)

    • Fedora core(桌面版):6个月甚至更短更新一次,至少23个版本

  • Slackware:主分支为suse 桌面系统做的很好)

    • suse(由德国大学生创建,然后卖给novell实验室) 
      * SLES(企业版) * openSUSE(界面华丽)

  • Gentoo:最显著的特点是提供给用户自己将源码编译成二进制文件的功能。

  • ArchLinux:是一种以轻量简洁为设计理念的Linux发行版

Linux哲学思想

  • 由目的单一的小程序组成,组合小程序完成复杂任务 就是模块化设计,每个功能尽可能的简单,这样一是容易开发,二是代码少,稳定性好。这样,组装起来的大程序功能强大且稳定。

  • 一切皆文件。管理简单,所有的东西都依存于文件系统而不需要像windows那样还需要注册表。

  • 尽量减少和用户交互。(尽量捕获用户接口) 尽量减少用户交互,有两大好处,一是只要有用户交互就有可能出现错误,利于系统稳定。二是能最轻量化运维工作,这也是其主要目的

  • 配置文件保存为纯文本格式。linux将所有的配置文件都设置为文本格式且都放到etc目录下面(usr/etc等等),任何程序修正参数,简洁有效。

编译

其实编译就是将源代码解释成二进制文件的过程,这其中分为静态编译和动态编译

  • 静态编译:直接将源代码和他所以依赖的库函数全部打包编译成可执行文件的过程。

  • 动态编译:只编译源代码,不包含他所依赖的库函数

  • 两种方式的优劣:

    • 当进行静态编译时,生成的可执行文件中包含库函数,这样运行速度会有所提升。但是如果这样的程序较多,并且包含的库函数又是一些经常调用的函数,就会造成运行时大量重复的资源进驻内存,造成资源浪费。并且每个程序保存了一部分相同的代码,造成系统体积增大。

    • 动态编译,虽然不包含所依赖的库函数,体积较小和节省了内存,但是移植性相对较差,因为目标电脑可能没有这个程序所依赖的库函数;运行速度也有一定程度的降低,因为需要去调用公共的库函数。

Linux进程的类型

  • 与终端无关:操作系统引导启动过程中自动启动

  • 与终端有关:需要通过用户操作等终端启动

命令的使用格式和类型

大致格式:command [option] 参数。 以date为例:

blob.png

  • command 类型 命令分为内部命令和外部命令

    • 内置命令(shell内置),不论是哪种shell,都必须使用的命令,因此,shell就内置了这些命令。

    • 外部命令在文件系统的某个路径下有一个与命令名称相应的可执行文件。因此,某种意义上说,内部命令也属于外部命令的一种。

    • 区分内外部命令。用type。内部显示:builtin command 内建

  • [option ]

    • 短选项,-l(字母),多个选项可以组合使用。ls -l -h=ls -lh

    • 长选项, –单词, 一般是不能组合的。

    • [] 中表示可以省略

    • ”|“表示多选一

    • <>必须给出的内容,必选

    • ….可以使用多个。这个选项可以出现多次

    • {}:分组用的,无特殊意义。

  • 参数肯定是文件。但是需要标明路径。有的情况下可以不用标明,如果作用对象是当前目录或者它下面的文件就不需要。

原创文章,作者:haoyp,如若转载,请注明出处:http://www.178linux.com/55092

(0)
haoyphaoyp
上一篇 2016-10-28
下一篇 2016-10-28

相关推荐

  • 课堂练习之 “;” 用法

    作业:如何实现前一条命令执行成功,才会执行后面一条命令,以及前一条命令执行失败才会执行后一条命令。 首先,多条命令一起执行的方法有几种。   1.用;隔开,不会判断前一条命令是否执行成功或失败。   2.用&&隔开,前面命令执行成功后,才会执行后面的命令。     3.用||或|隔开,前面命令执行失败后…

    2017-07-15
  • N22-第七周作业

    1、创建一个10G分区,并格式为ext4文件系统;    (1) 要求其block大小为2048, 预留空间百分比为2, 卷标为MYDATA, 默认挂载属性包含acl;    (2) 挂载至/data/mydata目录,要求挂载时禁止程序自动运行,且不更新文件的访问时间戳; 创建一个10G的分区:  &nbs…

    Linux干货 2016-12-18
  • 14程序包的编译安装

    在有些源代码程序没有被编译成rpm的时候,或者其他人写了一个源代码程序,要把它安装在服务器上要怎么做呢? 那就需要对源代码进行编译安装了。 C代码编译安装三步骤: 1、./configure: (1)通过选项传递参数,指定启用特性、安装路径等;执行时会参考用户的指定以及makefile.in文件生成makefile (2) 检查依赖到的外部环境,如依赖的软件…

    Linux干货 2016-11-27
  • A Deep Dive Into Wolf Winner Casino

    A Deep Dive Into Wolf Winner Casino In the ever-growing world of online gaming, Wolf Winner has carved out a name that sticks out. Known for its fast-paced video gaming environment…

    Linux干货 6天前
  • 马哥教育网络班21期+第15周课程练习

    1、总结sed和awk的详细用法; sed的详细用法 awk的详细用法 2、删除/boot/grub/grub.conf文件中所有行的行首的空白字符; # sed 's/^[[:space:]]*//' /boot/grub/grub.conf 3、删除/etc/fstab文件中所有以#开头,后跟至少一个空白…

    Linux干货 2016-11-14
  • rpm详解

    rpm详解 rpm详解 rpm使用方法 rpm起源 rpm是什么 rpm命名格式 rpm优缺点 rpm获取注意 rpm命令使用 rpm起源  由于在linux中安装应用程序需要源码包编译安装,对于非专业人员而言难度太大,因而出现一种将源码编译好的二进制程序,库文件,配置文件,帮助文件等打包成一个或多个特定格式的程序包,而管理这类包的工具之一,则称为…

    Linux干货 2016-12-23

评论列表(1条)

  • 马哥教育
    马哥教育 2016-11-02 16:17

    内容格式把握得很好,希望可以将这段发展史和几个关键性时间点熟知,加油!