Linux知识框架及运用工具简介

来源:互联网 发布:网络剧受众群体 编辑:程序博客网 时间:2024/05/05 14:31

Linux知识框架及运用工具简介

Linux的基本组成

【1】内核

【2】shell(命令解析器)

【3】文件结构

 

△Shell相当于壳,类似于DOS下的cmd.exe。

△内核:运行程序,管理硬件设备

△文件结构:树形目录,文件共享及操作权限

Linux的基本操作

1.登录(root级别)

2.打开shell提示(open the terminal)

3.注销

4.关机

文本编辑工具vi / vim

*输入模式:文字资料

*指令模式:编辑文件

SHELL基本命令表

一.Shell的常用命令

1.目录操作

2.文件操作

3.系统询问与权限命令

4.进程操作

5.通信类

6.I/O命令

二.Shell的配置文件./etc

三.Shell的语法结构(命令脚本、命令集文件)

常用主机服务配置

①.配置Samba --->文件共享

②.配置DHCP (动态主机配置协议):这个协议用于向计算机自动提供IP地址、子网掩码和路由信息

③.配置TFTP --->文件传输服务

Linux内核从主机下载到目标系统 --->解压并运行

④.配置NFS  --->网络文件系统,共享文件

 

四.Shell编程

A.变量  B.运算符 C.条件判断  D.控制结构  E.函数

 

五.高级shell命令

正则表达式(即 查找串)

-->普通字符 + 元字符

§.Grep :“全局搜索正则表达式并打印该行”,可用于shell脚本

 

§.Sed :流编辑器

  这里的Grepvi中的元字符都可以用到sed流编辑器中

 

§.Awk :文本处理器

  样式装入;流控制;数学运算;进程控制;内置变量和函数

Awk具有极强的列或域的处理能力。

 

Linux下的程序设计

一.代码编程 ---  viEclipseQtDesigner

 

二.GNU tools

GNU意指:完全自由的操作系统

⑴.工程管理【Makefile】

软件工程工具(用于协助多人开发或大型软件项目的管理的软件)

Make命令,自动维护,集成编译

 

⑵编译开发工具【GCC

能够对一个程序编译成为一个可执行程序软件。

4步:#预处理;#编译;#汇编;#链接(归并)

 

⑶.工具链【Binutils

能够对二进制文件进行处理的软件工具,binutils是一组二进制工具程序集。

包括:addr2line, ar, as, ld, nm, odjcopy, objdump, ranlib, size, strings,strip

等,是辅助Gcc的主要软件。

 

⑷.库文件【Glibc

动态链接库.so ----  运行时动态的加载。

静态链接库.a  ---- 编译时静态加载。

库文件操作,使用

 

⑸.调试工具【GDB

能够对执行程序进行源码或汇编级调试的软件

调试的使用。

 

⑹版本管理工具【SVN----版本控制

 

⑺.文本差异处理工具【DiffPatch等】

 

⑻.交叉编译

 在一个平台上生成另一个平台上可以执行的代码。

平台包括:体系结构 与 操作系统

 

为什么要交叉编译

<1>项目起始阶段,平台尚未建立,需要交叉编译。

  以生成bootloder(启动引导代码) 以及操作系统内核。

 

<2>平台启动后,由于资源限制,当编译大型程序时依然可能需要交叉编译。

 

⑼.创建制作工具链

  购买开发板,厂家都提供交叉编译工具链。

  若自己做开发板或移植程序,可以根据需要在网上下载最接近的代码改造交叉编译工具链。

在进行嵌入式开发之前,首先要建立一个交叉编译环境(编译器、链接器、libc库)

 

⑽.安装交叉工具链、使用

 

⑾.系统配置

嵌入式LinuxGDB调试环境由HostTarget两部分组成。

Host端用armLinuxgdb

Target  Board端用gdbserver

先建立安装GDB组件,然后建立gdbserver

 

⑿.调试程序

0 0