ImageVerifierCode 换一换
格式:DOCX , 页数:20 ,大小:371.67KB ,
资源ID:5338811      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/5338811.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(嵌入式开发和linux各概念.docx)为本站会员(b****3)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

嵌入式开发和linux各概念.docx

1、嵌入式开发和linux各概念1、嵌入式系统是以应用为中心,以计算机技术为基础,且软硬件可裁减,适应应用系统对功能、可靠性、成本、体积、功耗有严格要求的专用计算机系统。它一般由以下几部分组成:􀂄 嵌入式微处理器 外围硬件设备 嵌入式操作系统 特定的应用程序2、嵌入式系统的特点 应用的特定性和广泛性 􀂄技术、知识、资金的密集性 􀂄高效性 􀂄较长的生命周期 􀂄高可靠性 􀂄软硬一体,软件为主 􀂄无自举开发能力3、嵌入式系统的历史20 世纪70 年代:单片机出现20 世纪80 年

2、代:嵌入式操作系统出现20 世纪90 年代:实时多任务操作系统4、嵌入式系统存储器类型: 静态易失型存储器(RAM,SRAM); 动态存储器(DRAM); 非易失性存储器ROM(ROMEPROM,EEPROM,FLASH); 硬盘、软盘、CDROM等5、嵌入式操作系统是嵌入式应用软件的基础和开发平台.嵌入式系统的出现,解决了嵌入式软件开发标准化的难题.嵌入式系统具有操作系统的最基本的功能: 进程调度 内存管理 设备管理 文件管理 操作系统接口(API调用)嵌入式操作系统具有的特点: 系统可裁减,可配置. 系统具备网络支持功能 系统具有一定的实时性6、嵌入式操作系统的分类 嵌入式系统可分为实时嵌

3、入式系统与非实时嵌入式系统 实时系统的定义:能够对外部事件做出及时响应的系统。响应时间要有保证。 实时操作系统:VxWorks,WinCE,QNX,Nucleus非实时操作系统:嵌入式Linux7、嵌入式系统软件的层次结构 具有操作系统的嵌入式软件层次:驱动层程序 实时操作系统(RTOS) 操作系统的应用程序接口(API) 应用程序 8、启动程序BootLoader介绍 BootLoader是系统加电后、操作系统内核或用户应用程序运行之前,首先必须运行的一段程序代码。通过这段程序,为最终调用操作系统内核、运行用户应用程序准备好正确的环境。对于嵌入式系统来说,有的使用操作系统,也有的不使用操作系

4、统,但在系统启时都必须运行BootLoader,为系统运行准备好软硬件环境。系统启动代码完成基本软硬件环境初始化后,对于有操作系统的情况下,启动操作系统、启动内存管理、任务调度、加载驱动程序等,最后执行应用程序或等待用户命令;对于没有操作系统的系统直接执行应用程序或等待用户命令 系统的启动通常有两种方式,一种是可以直接从Flash启动,另一种是可以将压缩的内存映像文件从Flash(为节省Flash资源、提高速度)中复制、解压到RAM,再从RAM启动。当电源打开时,一般的系统会去执行ROM(应用较多的是Flash)里面的启动代码。这些代码是用汇编语言编写的,其主要作用在于初始化CPU和板上的必备

5、硬件如内存、中断控制器等。有时候用户必须根据自己板子的硬件资源情况做适当的调整与修改9、主流bootloader介绍 U-boot PPCboot ARMboot Blob Redboot10、嵌入式系统的开发方法1. 嵌入式系统的设计准则2. 嵌入式系统的设计流程3. 嵌入式系统的开发方法4. 嵌入式系统的开发模式5. 嵌入式系统的测试1、 嵌入式系统的设计准则 嵌入式系统设计不同于桌面系统,它非常受制于功能和具体的应用环境。所以嵌入式系统的设计具有一些特殊的要求。 嵌入式系统的设计要求: 并发处理,及时响应 接口方便,操作容易 稳定可靠,维护简便 功耗管理,降低成本 功能实用,便于升级2、

6、嵌入式系统的设计流程 嵌入式系统开发的最大特点就是需要软硬件综合开发。其原因在于:一方面,任何一个嵌入式产品都是软件和硬件的结合体;另一方面,一旦嵌入式产品研发完成,软件就固化在硬件环境中,嵌入式软件是针对相应的嵌入式硬件开发的,是专用的。嵌入式系统的这一特点决定了嵌入式应用开发方法不同于传统的软件工程方法。 3、嵌入式系统的开发流程 嵌入式系统分层设计模型嵌入式系统的开发模式 嵌入式系统的软件使用交叉开发平台进行开发。 系统软件和应用软件在主机开发平台上开发 系统软件和应用软件在嵌入式硬件平台上运行。 宿主机(Host)是用来开发嵌入式软件的系统。 目标机(Target)是被开发的目的嵌入式

7、系统。 交叉编译器(Cross-compiler)是进行交叉平台开发的主要软件工具。它是运行在一种处理器体系结构上,但是可以生成在另一种不同的处理器体系结构上运行的目标代码的编译器。嵌入式系统的测试 测试目的: 找到软硬件设计中的错误 减少风险 节约成本 提高性能测试什么: 功能调试(黑盒测试) 压力测试 边界测试 异常测试 错误测试 随机测试 性能测试􀂇 覆盖测试(白盒测试) 语句测试 判定和分支测试 条件覆盖11、什么是Linux Linux是一个网络操作系统(Network Operating System,NOS)。 网络操作系统则在一般操作系统的功能上增加了网络功能

8、,具体包括: (1)实现网络中各计算机之间的通信和资源共享; (2)提供多种网络服务软件; (3)提供网络用户的应用程序接口。 Linux就是这样一个网络操作系统。与其他商业化的网络操作系统不同,它是由以Linus Torvalds为首的一批Internet上的志愿者开发的,完全免费,并与另一著名的网络操作系统UNIX完全兼容,是一个具有很高性能价格比的网络操作系统。12、Linux的历史Linux最早是Linus Torvalds于1991年在芬兰赫尔辛基大学原创开发的,并在GNU的GPL(General Public License)原则下发行。 13、Linux的版本Linux的版本号又

9、分为两部分:内核(Kernel)版本和发行(Distribution)版本。内核版本的序号由3部分数字构成,其形式如下: major.minor.patchlevel 如:2 . 4 . 18 2 . 6 . 1414、国外主要发行版本1Red Hat Linux2SuSE Linux 3Debian Linux4Mandrake Linux5. Turbo Linux15、国内主要发行版本1红旗Linux2中标普华Linux3共创桌面Linux4冲浪Linux5. 蓝点linux16、Linux的功能1稳定的核心2丰富的应用软件3X Window系统4多重启动5网络功能6软件开发工具17、L

10、inux的常用软件 基本命令和工具办公软件 程序设计网络软件总之,Linux是对网络支持得最好的操作系统之一。Linux常用的网络应用软件有以下几类。(1)WWW服务器:Apache、Caudium、CERN HTTPD Server、Netscape Fast Track Server、Zeus Server;(2)FTP服务器:Wu-ftp、proftpd、vsftpd;(3)FTP客户端:gFTP、lftp(4)Mail服务器:Qmail、sendmail、XMail;(5)E-Mail客户端:pine、Kmail;(6)浏览器:Netscape、Mozilla、Phoenix、lynx

11、;(7)虚拟终端:rxvt、xterm、gnome-terminal、mlterm;(8)聊天工具:gaim、Licq。(9)网络共享服务:samba。 (10)远程登陆:telnet、ssh1、ssh218、Linux的内核体系结构与UNIX系统相似,Linux系统大致可分为3层:靠近硬件的底层是内核,即Linux操作系统的常驻内存部分;中间层是内核之外的Shell层,亦即操作系统的系统程序部分;最高层是应用层,即用户程序部分,包括各种文本处理程序、语言编译程序及游戏程序等。Linux的系统结构如图2.1所示。 图2.1 Linux系统结构 Linux系统的核心框图如图2.2所示。 19、L

12、inux分区 Red Hat Linux有自己的文件系统(Linux/ext3),要单独占用自己的分区。 硬盘分区有3种类型:主分区(Primary Partition)、扩展分区(Extended Partition)和逻辑分区(Logical Partition)。Red Hat Linux既可以安装在主分区上,也可以安装在逻辑分区上。Linux使用字母和数字的组合来指代磁盘分区。该命名方案是基于文件的,文件名的格式为: /dev/xxyN(1)/dev/(2)xx(3)y(4)N20、Linux使用基础 Linux系统可以在两种环境下操作:一种是在X Window的桌面环境下操作,它与M

13、icrosoft Windows环境下的操作十分相似;另一种是在控制台的字符屏幕下操作,它通过键盘输入命令来实现对系统的操作。 21、Linux常用命令 shell是一种命令行解释程序(Command-Language Interpreter),负责用户和操作系统的沟通。 在终端方式的shell 提示窗口如图4.1所示。 (1)进入与退出命令1进入系统 Linux是多用户操作系统,它允许多个用户同时使用一台计算机,这是它与Microsoft Windows的最大区别之一,因此Linux有比Microsoft Windows严格得多的用户管理。 在字符终端界面环境下,终端屏幕上出现如下登录提示行

14、: login: 在它的后面输入自己的登录名。如果是新用户,那么要与系统管理员联系,取得一个合法的登录名。 输入登录名、并按【Enter】键后,在屏幕上出现 Password:要求在其后输入口令。输入的口令字符串并不在屏幕上显示,以利于保密。输入完口令并按【Enter】键后,系统就对登录名和口令进行验证。如果确认无误,则在屏幕上显示若干行信息,最后一行出现:$_ $是一般用户的shell提示符,其后是闪烁的光标条(root用户的提示符是“#”)。 2退出系统 当完成工作后,需要从系统中退出。退出系统的过程很简单,在$提示符出现后,输入logout命令,然后按下【Enter】键或同时按下【Ctr

15、l】和【D】键,屏幕上会再次出现 login: 表示已经从系统中退出。如果想再次进入系统,必须重新登录。3、系统询问命令1询问当前日期和时间的date命令 例如$ date 。2询问当前用户的who命令who命令可列出当前每一个处在系统中的用户的登录名、终端名和登录进入时间。3显示当前目录路径名的pwd命令22、文件操作命令Linux命令行的一般格式为命令名选择项参数 1文件及其分类 Linux的文件通常分为普通文件、目录文件、设备文件和链接文件3类。 为了对文件进行保护,Linux系统提供了文件存取控制方式。把所有用户划分为3种身份,依次是文件主(user)、同组用户(group)、其他用户

16、(other)。每种用户对一个文件可拥有读(r)、写(w)和执行(x)的权利。 用字符形式表示上述文件方式,就是 rwxr-xr- 这9位的顺序是固定的(其中“-”表示对应用户不具备相应权限)。2文件显示命令 cat命令用来连接并显示文件。它顺序阅读每一个文件,并将它们在标准输出上输出。如果没有指定输入文件或者只是给定一个连字符(-),则从标准输入上读取。 其语法格式为 cat -u-s-v-t-e 文件名例如, $cat ml.c则在屏幕上显示出文件ml.c的内容。 $cat file1 file2file33文件内容比较命令(1)comm命令 comm命令对两个已经排序的文件进行比较。其语

17、法格式为 comm -123 file1 file2 (2)diff命令diff命令比较两个文本文件。其语法格式为 diff -br-c|-Cn|-e|-f|-h file1 file2 3)cmp命令cmp命令比较两个文件。其语法格式为cmp -l-s file1 file24文件的复制、移动和删除命令(1)cp命令cp命令的功能是拷贝文件。其语法格式为: cp -fipsource_file target_file cp -fipsource_file1 source_file2 target cp -R -fipsource_file1 source_file2 target cp -r

18、 -fipsource_file1 source_file2 target(2)mv命令 mv命令的功能是移动或者重新命名文件和目录。其语法格式为 mv -fi source_file target_file mv -fi source_file target_directory(3)rm命令rm命令的功能的是删除文件或目录。其语法格式为rm -firRfile5确定文件类型的file命令 当用户拥有很多文件时,常以自己的登录名为根节点,为自己建立一棵文件子树。其中,一些节点可能是目录文件,而另一些节点可能是信息文件。若用户忘记了哪些名字是目录文件,哪些名字是信息文件,则可用file命令。该命

19、令带有一个参数表,用于给出想了解的某类型的文件名清单。命令执行的结果是在屏幕上显示出各文件的类型。23、目录操作命令1目录结构 Linux文件系统采用带链接的树形结构。即只有一个根目录(通常用“/”表示),其中含有下级子目录或文件的信息;子目录中又可含有下级的子目录或者文件的信息,这样一层一层地延伸下去,构成一棵倒置的树,如图4.2所示。 图4.2 Linux目录结构 /bin :显而易见,bin 就是二进制(binary)英文缩写。 /boot :在这个目录下存放的都是系统启动时要用到的程序。在使用grub或lilo引导linux的时候,会用到这里的一些信息。/dev:dev 是设备(dev

20、ice)的英文缩写。这个目录对所有的用户都十分重要。因为在这个目录中包含了所有linux系统中使用的外部设备。但是这里并不是放的外部设备的驱动程序。/etc :etc这个目录是linux系统中最重要的目录之一。在这个目录下存放了系统管理时要用到的各种配置文件和子目录。我们要用到的网络配置文件,文件系统,x系统配置文件,设备配置信息,设置用户信息等都在这个目录下。 /sbin :这个目录是用来存放系统管理员的系统管理程序。/home :如果建立一个用户,用户名是“jl”,那么在/home目录下就有一个对应的/home/jl路径,用来存放用户的主目录。 /lib :lib是库(library)英文

21、缩写。这个目录是用来存放系统动态连接共享库的。几乎所有的应用程序都会用到这个目录下的共享库。 /mnt :这个目录在一般情况下也是空的。可以临时将别的文件系统挂在这个目录下。/proc :可以在这个目录下获取系统信息。这些信息是在内存中,由系统自己产生的。 /root :如果用户是以超级用户的身份登录的,这个就是超级用户的主目录。/tmp :用来存放不同程序执行时产生的临时文件。 /usr :这是linux系统中占用硬盘空间最大的目录。文件和目录的路径名可用两种方式表示:绝对路径名(又称全路径名)和相对路径名。 2目录的创建和删除(1)mkdir命令 mkdir命令的功能是建立目录。其语法格式

22、为 mkdir -ep-m mode dirname(2)rmdir命令rmdir命令的功能是删除目录。其语法格式为 rmdir -p-s dirnamermdir不能删除安装文件系统的根目录。3目录的显示和改变工作目录(1)ls命令 ls命令可打印有关文件和目录的信息。ls是“list”的简称。(2)cd命令 cd命令的功能是改变工作目录。其语法格式为 cd directory4. 显示当前目录 显示当前目录的命令是pwd命令,该命令使用的语法格式如下: pwd 执行pwd命令形式如下: pwd24、口令、权限命令1修改口令 passwd命令的功能是改变登录或modem(调制解调器)拨号sh

23、ell口令。其语法格式为 passwd -m-dluf-n minimum-x expiration -r retriesname passwd s -a name2改变存取权限 chmod命令的功能是改变文件或目录的存取权限。其语法格式有以下两种。 符号方式 chmod -R who +|-|=mode file 绝对方式 chmod -R mode file(3)使用八进制数设置权限 另外,文件和目录的权限还可用八进制数字模式来 表示。三个八进制数字分别代表ugo的权限。执行权、写权和读权所对应的数值分别是1,2和4。 若要rwx属性则4+2+1=7; 若要rw-属性则4+2=6; 若要r

24、-x属性则4+1=5。如:chmod 755 mydir(myfile)3. 改变文件和目录的所有权命令的格式如下:chown选项 用户文件和目录列表命令中的参数说明如下:命令中的选择说明如表2-8所示。用户:可能是用户号或文件/etc/passwd中出现的用户名。 文件和目录列表:用于重新指定所有权的用空格分隔的文件和目录列表。表2-8 chown命令的常用选项常用选项 说明-c 只有在文件的权限确实改变时才进行详细说明。-f 不打印权限不能改变的文件的错误信息。-v 详细说明权限的变化。-R 递归改变目录及其内容的权限。25、文件压缩与联机帮助命令1. gzip压缩文件gzip命令是在Li

25、nux系统中经常使用的一个对文件进行压缩和解压缩的命令,既方便又好用。gzip命令的使用语法格式如下:gzip 选项 压缩(解压缩)的文件名gzip命令各选项的说明如表2-9所示。 表2-9 gzip命令的常用选项常用选项说明-c将输出写到标准输出上,并保留原有文件。 -d 将压缩文件解压。 -l 对每个压缩文件,显示压缩文件的大小、未压缩文件的大小、压缩比、未压缩文件的名字等详细信息 -r 递归式地查找指定目录并压缩其中的所有文件或者是解压缩。 -t 测试,检查压缩文件是否完整。 -v 对每一个压缩和解压的文件,显示文件名和压缩比。 2. 文件打包tar tar可以对文件和目录进行打包。利用

26、tar,用户可以对某一特定文件进行打包(一般用作备份文件),也可以在包中改变文件,或者向包中加入新的文件。 tar命令的使用语法格式如下: tar 主选项+辅选项 文件或者目录 表2-10 tar命令的主选项的常用选项常用选项说 明-c 创建新的档案文件。如果用户想备份一个目录或是一些文件,就要选择这个选项。 -x 从档案文件中释放文件。 -r把要存档的文件追加到档案文件的未尾。例如用户已经作好备份文件,又发现还有一个目录或是一些文件忘记备份了,这时可以使用该选项,将忘记的目录或文件追加到备份文件中。 -t 列出档案文件的内容,查看已经备份了哪些文件。 -u 更新文件。就是说,用新增的文件取代

27、原备份文件,如果在备份文件中找不到要更新的文件,则把它追加到备份文件的最后。 表2-11 tar命令的辅助选项的常用选项常用选项 说明f 使用档案文件或设备,这个选项通常是必选的。K 保存已经存在的文件。例如我们把某个文件还 原,在还原的过程中,遇到相同的文件,不会进 行覆盖。m 在还原文件时,把所有文件的修改时间设定为现 在。M 创建多卷的档案文件,以便在几个磁盘中存放。v 详细报告tar处理的文件信息。如无此选项,tar不 报告文件信息。z 用gzip来压缩/解压缩文件26、联机帮助1. 显示帮助手册通常使用者只要在命令man后,输入想要获取的命令的名称(例如ls),man就会列出一份完整

28、的说明,其内容包括命令语法、各选项的意义以及相关命令等。该命令的一般形式为: man 选项命令名称 表2-13 man命令的常用选项常用选项 说明-S 根据章节显示,由于一个命令名称可能会有很多 类别,其类别说明如表2-14所示。-f 只显示出命令的功能而不显示其中详细的说明文件-w 不显示手册页,只显示将被格式化和显示的文件所在 位置。-a 显示所有的手册页,而不是只显示第一个。-E 在每行的末尾显示$符号 表2-13 man命令的章节常用选项章节 说明1 一般使用者的命令2 系统调用的命令3 C语言函数库的命令4 有关驱动程序和系统设备的解释5 配置文件的解释6 游戏程序的命令7 其它的软

29、件或是程序的命令和有关系统维护的命令27、Shell程序设计Shell是Linux系统中的一个重要的层次,它是用户与系统交互作用的界面。 Shell除了作为命令解释程序以外,还是一种高级程序设计语言。利用Shell程序设计语言可以编写出功能很强、但代码简单的程序(1)Shell概述1Shell的特点和主要版本 在Linux系统中通常提供多种不同的Shell,常用的有Bourne shell(简称sh)、C-shell(简称csh)、Korn shell(简称ksh)和Bourne Again shell(简称bash)。bash是Linux中一个默认的shell,本节主要介绍bash。2She

30、ll程序示例Shell程序也可存放在文件上,下面是两个shell程序示例。【例4.1】 由3条简单命令组成的shell程序(文件名为ex1)。 date pwd cd .3Shell过程的建立和执行 称作Shell文件或者Shell脚本(Shell script)。 建立Shell过程的步骤同建立普通文本文件相同,利用编辑器(如vi或gedit)进行程序录入和编辑加工。 执行Shell过程的方式主要有以下3种。(1)输入定向到Shell过程(2)以过程名作为参数(3)将Shell过程改为可执行文件(2)Shell变量 Shell有两种变量:环境变量和临时变量。环境变量是永久性变量,其值不会随Shell过程执行结束而消失。而临时变量是在Shell

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1