欢迎访问 生活随笔!

生活随笔

当前位置: 首页 >

linux应用程序开发数据,《嵌入式linux应用程序开发详解》核心笔记

发布时间:2025/4/5 43 豆豆
生活随笔 收集整理的这篇文章主要介绍了 linux应用程序开发数据,《嵌入式linux应用程序开发详解》核心笔记 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

【linux快速入门】

自由软件(free software)中的 free 并不是指免费,而是指自由。它赋予使用者四种自由。

· 自由之一:有使用软件的自由。

· 自由之二:有研究该软件如何运作的自由,并且得以改写该软件来符合使用者自身的需求。取得该软件的源码是达成此目的前提。

· 自由之三:有重新散布该软件的自由,所以每个人都可以藉由散布自由软件来敦亲睦另。

· 自由之四:有改善再利用该软件的自由,并且可以发表改写版供公众使用,如此一来,整个社群都可以受惠。如前项,取得该软件的源码是达成此目的前提。

GPL:GPL 协议是 GNU 组织、维护的一种版权协议,遵守这个协议的软件可以自由地获取、查看、使用其源代码。GPL 协议是整个开源世界的精神基础。

Linux 的内核版本号:

Linux 内核版本号格式是 x.y.zz-www,数字 x 代表版本类型,数字 y 为偶数时是稳定版本,为奇数时是开发版本,如 2.0.40 为稳定版本,2.3.42 为开发版本,测试版本为 3 个数字加上测试号,如 2.4.12-rc1。最新的 Linux 内核版本可从 http://www.kernel.org 上获得。

国内的一些 Linux 论坛:

http://www.linuxfans.org

http://www.linuxforum.net

http://www.linuxeden.com

http://www.newsmth.net

在 Windows 下,目录结构属于分区;Linux 下,分区属于目录结构。

在 Windows 下,路径用  反斜杠分割;Linux 下,路径用 / 斜杠分割。(实际是linux最早,你懂的)

通常在 Windows 下的盘符和 Linux 设备文件的对应关系如下:

C 盘—/dev/hda1(主分区)

D 盘—/dev/hda5(逻辑分区)

E 盘—/dev/hda6(逻辑分区)

如果想修复已经安装好的系统,请在提示符 boot:后输入“Linux rescue”命令。

ext3 是现在 Linux(包括 Red Hat,Mandrake 下)常见的默认的文件系统,它是 ext2 的升级版本。/bin            bin 就是二进制(binary)英文缩写。在这里存放前面 Linux 常用操作命令的执行文件,如 mv、ls、mkdir 等。有时,这个目录的内容和/usr/bin 里面的内容一样,它们都是放置一般用户使用的执行文件

/boot   这个目录下存放操作系统启动时所要用到的程序。如启动 grub 就会用到其下的/boot/grub子目录

/dev            该目录中包含了所有 Linux 系统中使用的外部设备。要注意的是,这里并不是存放的外部设备的驱动程序,它实际上是一个访问这些外部设备的端口。由于在 Linux 中,所有的设备都当作文件一样进行操作,比如:/dev/cdrom 代表光驱,用户可以非常方便地像访问文件、目录一样对其进行访问

/etc            该目录下存放了系统管理时要用到的各种配置文件和子目录。如网络配置文件、文件系统、x 系统配置文件、设备配置信息设置用户信息等都在这个目录下。系统在启动过程中需要读取其参数进行相应的配置

/etc/rc.d       该目录主要存放 Linux 启动和关闭时要用到的脚本文件,在后面的启动详解中还会进一步地讲解

/etc/rc.d/init  该目录存放所有 Linux 服务默认的启动脚本(在新版本的 Linux 中还用到的是/etc/xinetd.d目录下的内容)

/home           该目录是 Linux 系统中默认的用户工作根目录。执行 adduser命令后系统会在/home 目录下为对应账号建立一个名为同名的主目录

/lib            该目录是用来存放系统动态链接共享库的。几乎所有的应用程序都会用到这个目录下的共享库。因此,千万不要轻易对这个目录进行什么操作

/lost+found     该目录在大多数情况下都是空的。只有当系统产生异常时,会将一些遗失的片段放在此目录下

/media          该目录下是光驱和软驱的挂载点,Fedora Core 4 已经可以自动挂载光驱和软驱

/misc           该目录下存放从 DOS 下进行安装的实用工具,一般为空

/mnt            该目录是软驱、光驱、硬盘的挂载点,也可以临时将别的文件系统挂载到此目录下

/proc           该目录是用于放置系统核心与执行程序所需的一些信息。而这些信息是在内存中由系统产生的,故不占用硬盘空间

/root           该目录是超级用户登录时的主目录

/sbin           该目录是用来存放系统管理员的常用的系统管理程序

/tmp            该目录用来存放不同程序执行时产生的临时文件。一般 Linux 安装软件的默认安装路径就是这里

/usr            这是一个非常重要的目录,用户的很多应用程序和文件都存放在这个目录下,类似与Windows 下的 Program Files 的目录

/usr/bin        系统用户使用的应用程序

/usr/sbin       超级用户使用的比较高级的管理程序和系统守护程序

/usr/src        内核源代码默认的放置目录

/srv            该目录存放一些服务启动之后需要提取的数据

/sys            这是 Linux 2.6 内核的一个很大的变化。该目录下安装了 2.6 内核中新出现的一个文件系统 sysfs,sysfs 文件系统集成了下面 3 种文件系统的信息:针对进程信息的 proc 文件系统、针对设备的 devfs 文件系统以及针对伪终端的 devpts 文件系统。该文件系统是内核设备树的一个直观反映。当一个内核对象被创建的时候,对应的文件和目录也在内核对象子系统中被创建

/var            这也是一个非常重要的目录,很多服务的日志信息都存放在这里

【linux基础命令】

root用户切换:

$:' sudo passwd

// 输入当前登陆密码,再根据提示输入设置的UNIX密码2遍,即为root用户切换密码

$:' su

// 输入UNIX密码,切换为root用户,提示符变为 #

设置环境变量方法如下:

1. 通过 etho显示字符串(指定环境变量)。

2. 通过 export设置新的环境变量。

3. 通过 env显示所有环境变量。

4. 通过 set命令显示所有本地定义的 Shell 变量。

5. 通过 unset命令来清除环境变量。

Linux常见用户管理命令:useradd         添加用户账号                        useradd [选项] 用户名

usermod         设置用户账号属性                    usermod [选项] 属性值

userdel         删除对应用户账号                    userdel [选项] 用户名

groupadd        添加组账号                          groupadd [选项] 组账号

groupmod        设置组账号属性                      groupmod [选项] 属性值

groupdel        删除对应组账号                      groupdel [选项] 组账号

passwd          设置账号密码                        passwd [对应账号]

id              显示用户ID、组ID和用户所属组列表    id [用户名]

groups          显示用户所属的组                    groups [组账号]

who             显示登录到系统的所有用户            who

whoami          显示当前用户名                      whoami

Linux常见系统管理命令:ps              显示当前系统中由该用户运行的进程列表        ps [选项]

top             动态显示系统中运行的程序(一般为每隔 5s)   top

kill            输出特定的信号给指定 PID(进程号)的进程    kill [选项] 进程号(PID)

uname           显示系统的信息(可加选项-a)                uname [选项]

setup           系统图形化界面配置                          setup

crontab         循环执行例行性命令                          crontab [选项]

shutdown        关闭或重启 Linux 系统                       shutdown [选项] [时间]

uptime          显示系统已经运行了多长时间                  uptime

clear           清除屏幕上的信息(ctrl + l)                  clear

Linux常见磁盘管理命令:free            查看当前系统内存的使用情况                  free [选项]

df              查看文件系统的磁盘空间占用情况              df [选项]

du              统计目录(或文件)所占磁盘空间的大小        du [选项]

fdisk           查看硬盘分区情况及对硬盘进行分区管理        fdisk [-l]

mount           磁盘挂载命令                                mount -t [选项] [文件系统类型] 设备文件名 挂载点目录

mount挂载举例:

$:' mount -tvfat/dev/hda1 /mnt/c

$:' umount /mnt/c

· 在 Linux 下如何使用 U 盘呢?

一般 U 盘为 SCSI 格式的硬盘,其格式为 vfat 格式,其设备号可通过“fdisk –l”进行查看,假若设备名为“/dev/sda1”,则可用如下命令就可将其挂载:

$:' mount -t vfat /dev/sda1/mnt/u

· 若想设置在开机时自动挂载,可在文件“/etc/fstab”中加入该命令到一个新行即可。

正则表达式的主要参数有:

· :忽略正则表达式中特殊字符的原有含义;

· ^:匹配正则表达式的开始行;

· $:匹配正则表达式的结束行;

·

· >:到匹配正则表达式的行结束;

· [ ]:单个字符,如[A]即 A 符合要求;

· [-]:范围,如[A-Z],即 A、B、C 一直到 Z 都符合要求;

· 。:所有的单个字符;

· *:所有字符,长度可以为 0。

ln 的链接又软链接和硬链接两种:

软链接就是上面所说的 ln -s ** **,它只会在用户选定的位置上生成一个文件的镜像,不会重复占用磁盘空间,平时使用较多的都是软链接;

硬链接是不带参数的 ln** **,它会在用户选定的位置上生成一个和源文件大小相同的文件,无论是软链接还是硬链接,文件都保持同步变化。

Linux常见压缩打包相关命令:bzip2           .bz2 文件的压缩(或解压)程序           bzip2[选项] 压缩(解压缩)的文件名

bunzip2         .bz2 文件的解压缩程序                   bunzip2[选项] .bz2 压缩文件

bzip2recover    用来修复损坏的.bz2 文件                 bzip2recover .bz2 压缩文件

gzip            .gz 文件的压缩程序                      gzip [选项] 压缩(解压缩)的文件名

gunzip          解压被 gzip 压缩过的文件                gunzip [选项] .gz 文件名

unzip           解压 winzip 压缩的.zip 文件             unzip [选项] .zip 压缩文件

compress        早期的压缩或解压程序(压缩后文件名为.Z)  compress [选项] 文件

tar             对文件目录进行打包或解包                tar [选项] [打包后文件名]文件目录列表

Linux比较和合并文件命令:diff            比较两个不同的文件或不同目录下的两个同名文件功能,并生成补丁文件        diff[选项] 文件1 文件2

$:' diff hello1.c hello2.c > hello.patch

patch           把生成的补丁文件应用到现有代码上            patch [选项] [待 patch 的文件[patch 文件]]

$:' patch ./hello1.c 

Linux常见网络相关命令:netstat         显示网络连接、路由表和网络接口信息      netstat [-an]

nslookup        查询一台机器的 IP 地址和其对应的域名    nslookup [IP 地址/域名]

finger          查询用户的信息                          finger [选项] [使用者] [用户@主机]

ping            用于查看网络上的主机是否在工作          ping [选项] 主机名/IP 地址

ifconfig        查看和配置网络接口的参数                ifconfig [选项] [网络接口]

ftp             利用 ftp 协议上传和下载文件             ftp [选项] [主机名/IP]

telnet          利用 telnet 协议浏览信息                telent [选项] [IP 地址/域名]

ssh             利用 ssh 登录对方主机                   ssh [选项] [IP 地址]

总结

以上是生活随笔为你收集整理的linux应用程序开发数据,《嵌入式linux应用程序开发详解》核心笔记的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。