Linux从入门到精通——基础篇

一.关于Linux的简介

1.什么是Linux?

  Linux这个词指的是Linux内核,它是用来驱动电脑里的硬件的,而Linux操作系统指的是Linux内核和GUN组织(GUN的全称为GUN is not Unix)所编写的软件,有了这个内核和相应的软件,由“死”的机械硬件组成的计算机才变成了“活”的,需要注意的是,单纯的软件并不能代表Linux系统。

                                                          

2.Linux的特点和优势

1.模块化程度高

  Linux的内核设计非常精巧,分成进程调度、内存管理、进程间通信、虚拟文件系统和网络接口五大部分;其独特的模块机制可根据用户的需要,实时地将某些模块插入或从内核中移走,使得Linux系统内核可以裁剪得非常小巧,很适合于嵌入式系统的需要。

2.源码公开

  由于Linux系统的开发从一开始就与GNU项目紧密地结合起来,所以它的大多数组成部分都直接来自GNU项目。任何人、任何组织只要遵守GPL条款,就可以自由使用Linux 源代码,为用户提供了最大限度的自由度。这一点也正投嵌入式系统所好,因为嵌入式系统应用千差万别,设计者往往需要针对具体的应用对源码进行修改和优化,所以是否能获得源代码对于嵌

入式系统的开发是至关重要的。加之Linux的软件资源十分丰富,每种通用程序在Linux上几乎都可以找到,并且数量还在不断增加。这一切就使设计者在其基础之上进行二次开发变得非常容易。另外,由于Linux源代码公开,也使用户不用担心有“后闸”等安全隐患。同时,源码开放给各教育机构提供极大的方便,从而也促进了Linux的学习、推广和应用。

3.广泛的硬件支持

  Linux能支持x86、ARM、MIPS、ALPHA和PowerPC等多种体系结构的微处理器。目前已成功地移植到数十种硬件平台,几乎能运行在所有流行的处理器上。  由于世界范围内有众多开发者在为Linux的扩充贡献力量,所以Linux有着异常丰富的驱动程序资源,支持各种主流硬件设各和最新的硬件技术,甚至可在没有存储管理单元MMU 的处理器上运行,这些都进一步

促进了Linux在嵌入式系统中的应用。

4.安全性及可靠性好

 内核高效稳定。Linux内核的高效和稳定已在各个领域内得到了大量事实的验证。Linux中大量网络管理、网络服务等方面的功能,可使用户很方便地建立高效稳定的防火墙、路由器、工作站、服务器等。为提高安全性,它还提供了大量的网络管理软件、网络分析软件和网络安全软件等。

5.具有优秀的开发工具

  开发嵌入式系统的关键是需要有一套完善的开发和调试工具。传统的嵌入式开发调试工具是在线仿真器(In Circuit Emulator,ICE),它通过取代目标板的微处理器,给目标程序提供一个完整的仿真环境,从而使开发者能非常清楚地了解到程序在目标板上的工作状态,便于监视和调试程序。在线仿真器的价格非常高,而且只适合做非常底层的调试。如果使用

是嵌人式Linux,一旦软硬件能支持正常的串口功能,即使不用在线仿真器,也可以很好地进行开发和调试工作,从而节省了一笔不小的开发费用。嵌入式Linux为开发者提供了一套完整的工具链(Tool Chain),能够很方便地实现从操作系统到应用软件各个级别的调试。

6.有很好的网络支持利文件系统支持

  Linux从诞生之日起就与Internet密不可分,支持各种标准的Internet网络协议,并且很容易移植到嵌入式系统当中。目前,Linux几乎支持所有主流的网络硬件、网络协议和文件系统,因此它是NFS的一个很好的平台。

另一方面,由于Linux有很好的文件系统支持(例如,它支持Ext2、FAT32、romfs等文件系统),是数据各份、同步和复制的良好平台,这些都为开发嵌入式系统应用打下了坚实的基础。

7.与UNIX完全兼容

  目前,在Linux中所包含的工具和实用程序,可以完成UNIX的所有主要功能。但由于Linux不是为实时而设计的,因而这就成了Linux在实时系统中应用的最大遗憾。不过,目前有众多的自由软件爱好者正在为此进行不懈的努力,也取得了诸多成果。

 

二.与系统进行对话的工具——Shell

1.什么是Shell?它能用来干什么?

  计算机其实是很笨的,即使有了硬件和操作系统,它也只是“准备就绪”了而已,它并不知道使用者想干什么,而为了与系统进行交互,让系统知道你想干什么从而听从你的指令,就需要一个工具,那就是Shell。

Shell也是操作系统当中的一个软件,在计算机术语当中称它为“命令解释器”(是指提供使用者使用界面的软件),它接收用户命令,然后调用相应的应用程序。同时它又是一种程序设计语言。作为命令语言,它交互式解释和执行用户输入的命令或者自动地解释和执行预先设定好的一连串的命令;作为程序设计语言,它定义了各种变量和参数,并提供了许多在高级

语言中才具有的控制结构,包括循环和分支。在排序算法中,Shell是希尔排序的名称。对Shell的学习和使用将贯穿整个Linux学习过程。

 

                                                          

2.如何在Shell中执行命令?

  (以Red Hat Enterprise Linux 7 64位 为示例首先我们需要打开Shell,我们可以单击鼠标右键,在菜单中选择‘open in terminal’,这样就打开了一个新的Shell。

                                            

 

                                        
或者在‘Applications’中打开Shell。
                                       
                                                  

  


 在打开Shell以后,我们可以看到弹出页面上的一行字符,这个就是命令提示符,下面解释一下这行字符的含义。

 

 1 [lsy@localhost ~]$                                                                               

 

###  lsy  表示运行Shell的用户  ###

###  @  信息分隔符  ###

###  localhost  所在主机短命车行  ###

###  ~  所在当前主机的位置  ###

###  $  身份提示符,$表示普通用户,#表示超级用户  ###

 

在Shell中输入命令,命令的格式为:命令 +  选项  +  参数

例如:

  ls    -s     test

  ls    --size    test  ##这里是两个横杠

————注意————:

            1.选项用来制定命令的某些功能,可以加也可以不加

            2.命令和选项和目标之间要用空格分开

            3.选项中“-”是短选项表示单词的缩写,“--”是长选项表示单词的全拼

            4.在执行命令时通常遵循这些规则,特殊情况除外

            5.命令必须在行提示符之后输入,没有行提示符的输入是无效的

            6.在输入选项时, -a -b -c =-abc=-acb ,不需要注意顺序,短选项可以缩写在一起,长选项要分开来写

 

                              

posted on 2018-07-18 13:40  对方正在输入你的  阅读(840)  评论(0编辑  收藏  举报

导航