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)
上一篇 2016-10-28 13:59
下一篇 2016-10-28 14:37

相关推荐

  • bash脚本编程之流程控制if、for、while、until简介

    概述     之前介绍了一些bash脚本编程的变量、运算、条件测试的一些基础内容,了解了脚本实际上就是一些语句加上一些流程控制组合起来,实现某种功能的可执行文件。我们知道,条件测试的目的,实际就是为了实现一种流程的控制,那么本篇就简单介绍一下bash里面常见的流程控制语句,包括选择、循环等内容,具体包括以下几个部分: …

    Linux干货 2016-08-18
  • 负载均衡PHP应用(实现WordPress)

    一、实验目的:负载均衡PHP应用 二、逻辑构建:   三、实验需要:4台虚拟机,一台作为客户端,一台作为VS,两台作为RS 四、实验环境:VS的DIP要与RS的IP在同一个私网内,RS的默认网关为DIP;VS则要开启路由转发功能echo 1>/proc/sys/net/ipv4/ip_forword,注意防火墙和selinux都要关闭 五、实…

    2017-05-09
  • 磁盘文件系统基础(一)

    磁盘的主要硬件单元有:     1、磁头:通过电磁感应的方式对磁盘数据进行读写。     2、磁道:在磁盘自传过程中磁头划过的圆形轨迹,这些轨迹是肉眼看不见的特色磁化区域。     3、扇区:磁盘上的每个磁道被等分为若干个圆弧,这些圆弧被称…

    Linux干货 2016-10-27
  • 计算机的组成及其功能。

    一、计算机的组成及其功能。 计算机,是现代一种用于高速计算的电子计算机器,可以进行数值计算,又可以进行逻辑计算,还具有存储记忆功能。是能够按照程序运行,自动、高速处理海量数据的现代化智能电子设备。 1、运算器(Arithmetical and Logical Unit):计算机中执行各种算术和逻辑运算操作的部件。运算器的基本操作包括加、减、乘、除四则运算,与…

    Linux干货 2016-10-30
  • N22-妙手-第三周博客作业

    1、列出当前系统上所有已经登录的用户名,注意:同一个用户登录多次,则只显示一次即可。 [root@localhost ~]# who | cut -d' ' -f1 | uniq -c     &nb…

    Linux干货 2016-09-19
  • Linux Service and Security(Part 1)

    一、知识整理 1、不安全的传统协议: telnet、FTP、POP3等:不安全的密码; http、smtp、NFS等:不安全信息; Ldap、NIS、rsh等:不安全验证。 设计基本原则: 使用成熟的安全系统; 以小人之心度输入数据; 外部系统是不安全的; 最小授权; 减少外部接口; 缺省使用安全模式; 在入口处检查; 安全不是似是而非; 从管理上保护好系统…

    Linux干货 2016-10-09

评论列表(1条)

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

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