第5章-嵌入式系统软件开发环境与工具.课件.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《第5章-嵌入式系统软件开发环境与工具.课件.ppt》由用户(三亚风情)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 嵌入式 系统软件 开发 环境 工具 课件
- 资源描述:
-
1、嵌入式系统讲义嵌入式系统讲义第第5章章 嵌入式系统软件开发嵌入式系统软件开发环境与工具环境与工具5.1 Linux与嵌入式与嵌入式Linux主要内容主要内容1、Linux操作系统的产生操作系统的产生2、Linux操作系统的特点操作系统的特点3、Linux操作系统的组成操作系统的组成4、Linux操作系统的内核版本操作系统的内核版本5、嵌入式、嵌入式Linux5.1.1 Linux的产生的产生Linux诞生背景诞生背景1984年起,在年起,在MIT(美国麻省理工学院)的支持下,(美国麻省理工学院)的支持下,Richard Stallman创建了自由软件基金创建了自由软件基金会会FSF(Free
2、Software Foundation)。FSF的主要项目是的主要项目是GNU(GNUs Not Unix),),它的目标是建立可自由发布和它的目标是建立可自由发布和可 移 植 的 类可 移 植 的 类 U n i x 操 作 系 统操 作 系 统 。 同 时。 同 时Richard拟定了通用公共许可证拟定了通用公共许可证GPL(General Public License)作为)作为GNU的版的版权声明。权声明。从从1984年到年到1991年,年,GNU完成了与完成了与UNIX兼容的大部分外围工作,兼容的大部分外围工作,包括包括OS的的shell、C和和C+编译器编译器gcc/gcc+等内容
3、,就是没有自等内容,就是没有自己的内核。己的内核。 Linux内核的诞生内核的诞生 1991年,芬兰赫尔年,芬兰赫尔辛基大学的学生辛基大学的学生Linus Torvald 为实习为实习MINIX(教学用的微型(教学用的微型 UNIX)编写了一个)编写了一个比比MINIX功能更强、能够在低档微机上操作功能更强、能够在低档微机上操作系统内核,将其命名为系统内核,将其命名为Linux。 GNU项目的实现项目的实现Linux内核的诞生,内核的诞生,为为GNU项目划上了一个圆满的句号,从此就项目划上了一个圆满的句号,从此就诞生了诞生了GNU(类(类UNIX),名字就是),名字就是Linux Linux所
4、包含的内容所包含的内容目前大多数人用它来表示以目前大多数人用它来表示以Linux内内核为基础的整个操作系统。从这种意义核为基础的整个操作系统。从这种意义讲,讲,Linux指的是源码开放,包含内核指的是源码开放,包含内核和系统工具、完整的开发环境和应用的和系统工具、完整的开发环境和应用的类类Unix操作系统。操作系统。5.1.2 Linux的主要特点的主要特点 开放性:开放性:系统遵循世界标准规范,特别系统遵循世界标准规范,特别是遵循开放系统互连(是遵循开放系统互连(OSI)国际标准。)国际标准。 多用户:多用户:系统资源可以被不同用户使用,系统资源可以被不同用户使用,每个用户对自己的资源(例如
5、:文件、每个用户对自己的资源(例如:文件、设备)有特定的权限,互不影响。设备)有特定的权限,互不影响。 多任务:多任务:计算机同时执行多个程序,而计算机同时执行多个程序,而且各个程序的运行互相独立。且各个程序的运行互相独立。5.1.2 Linux的主要特点(的主要特点(2) 良好的用户界面良好的用户界面 :两种界面:用户界面两种界面:用户界面和系统调用。和系统调用。Linux还为用户提供了图形还为用户提供了图形用户界面。与用户界面。与Windows类似。类似。 设备独立性:设备独立性: Linux把所有外部设备统把所有外部设备统一当作成文件来看待一当作成文件来看待,只要安装它们的,只要安装它们
6、的驱动程序,任何用户都可以象使用文件驱动程序,任何用户都可以象使用文件一样,操纵、使用这些设备,而不必知一样,操纵、使用这些设备,而不必知道它们的具体存在形式。道它们的具体存在形式。丰富的网络功能:丰富的网络功能:完善的内置网络是完善的内置网络是Linux一大特点。一大特点。 可靠的安全系统:可靠的安全系统:Linux采取了许多安采取了许多安全技术措施,包括对读、写控制、带保全技术措施,包括对读、写控制、带保护的子系统、审计跟踪、核心授权等,护的子系统、审计跟踪、核心授权等,为网络多用户环境中的用户提供了必要为网络多用户环境中的用户提供了必要的安全保障。的安全保障。 良好的可移植性:良好的可移
7、植性:将操作系统从一个平将操作系统从一个平台(一种微处理器)转移到另一个平台,台(一种微处理器)转移到另一个平台,仍然能按其自身的方式运行的能力。能仍然能按其自身的方式运行的能力。能够在从微型计算机到大型计算机的任何够在从微型计算机到大型计算机的任何环境中和任何平台上运行。环境中和任何平台上运行。 5.1.2 Linux的主要特点(的主要特点(3)5.1.3 Linux的组成的组成LINUX的内核:的内核:含有设备驱动程含有设备驱动程序、系统服务等程序,具有中断处理、序、系统服务等程序,具有中断处理、进程调度、原语管理等功能。进程调度、原语管理等功能。LINUX SHELL:Shell是系统的
8、用是系统的用户界面,它是一个命令解释器,它解户界面,它是一个命令解释器,它解释用户输入的命令,并且把它们送到释用户输入的命令,并且把它们送到内核。提供了用户与内核进行交互操内核。提供了用户与内核进行交互操作的一种接口。作的一种接口。5.1.3 Linux的组成(的组成(2) LINUX文件系统文件系统: 是文件存放在磁盘等存是文件存放在磁盘等存储设备上的组织方法。储设备上的组织方法。Linux能支持多种能支持多种目前许多的文件系统,如目前许多的文件系统,如EXT2、EXT3、FAT、VFAT、ISO9660、NFS、SMB等。等。 LINUX应用系统:应用系统:标准的标准的Linux系统都有系
9、统都有一整套称为应用程序的程序集,包括文一整套称为应用程序的程序集,包括文本编辑器、编程语言、本编辑器、编程语言、X Window、办公、办公套件、套件、Internet工具、数据库等。工具、数据库等。Linux内核采用双树结构:内核采用双树结构:一棵树是稳定一棵树是稳定树,主要用于发行;另一棵树是非稳定树或树,主要用于发行;另一棵树是非稳定树或开发树,用于产品开发、改进、测试。开发树,用于产品开发、改进、测试。源代码版本序号形式:源代码版本序号形式:为为x.y.zz结构,其结构,其中中x为主版本号,代表核心的改动升级;为主版本号,代表核心的改动升级;y为为次版本号,表示次版本号,表示功能性的
10、改动功能性的改动;zz为末版本为末版本号,表示号,表示BUG的改动。其中的改动。其中x介于介于0到到9之间,之间,yy和和zz则介于则介于0到到99之间。之间。5.1.4 Linux的内核版本的内核版本双树区分:双树区分:对于稳定树来说,对于稳定树来说,y是偶是偶数;对于开发树来说,数;对于开发树来说,y是比相应稳定是比相应稳定树大树大1的奇数。例的奇数。例2.4.18等为稳定内核版等为稳定内核版本。本。5.1.4 Linux的内核版本(的内核版本(2)5.1.5 嵌入式嵌入式Linux操作系统概述操作系统概述一、嵌入式一、嵌入式Linux操作系统操作系统利用利用Linux搭建嵌入式操作系统是
11、近年来搭建嵌入式操作系统是近年来最令人振奋的方案之一,最令人振奋的方案之一,Linux将来可能将来可能会成会成为嵌入式系统主流操作系统为嵌入式系统主流操作系统。嵌入式嵌入式Linux是按照嵌入式操作系统的要是按照嵌入式操作系统的要求而设计的一种小型操作系统求而设计的一种小型操作系统。由一个由一个内核内核及一些根据需要进行定制的及一些根据需要进行定制的系统模块系统模块组成。组成。其其内核很小内核很小,一般,一般只有几百只有几百kB左右。即使加左右。即使加上其它必须的模块和应用程序,所需的存储上其它必须的模块和应用程序,所需的存储空间也很小。它空间也很小。它具有多任务、多进程的系统具有多任务、多进
12、程的系统特征特征,有些还具有实时性有些还具有实时性 。二、嵌入式二、嵌入式Linux的移植的移植嵌入式嵌入式Linux需要移植:需要移植:对于嵌入式对于嵌入式Linux,一般都不是原封不动地使用,一般都不是原封不动地使用,而是要考虑各种具体系统的特点,而是要考虑各种具体系统的特点,有针有针对性地对对性地对Linux内核加以裁减、修改和内核加以裁减、修改和补充补充。小型嵌入式小型嵌入式Linux系统:系统:只需要引导只需要引导程序、程序、Linux微内核微内核(由内存管理、进(由内存管理、进程管理和事务处理构成)、程管理和事务处理构成)、初始化进程初始化进程3个基本元素。个基本元素。嵌入式嵌入式
13、Linux系统可以扩展:系统可以扩展:可以加可以加上文件系统上文件系统(支持十多种文件系统类型,(支持十多种文件系统类型,如如ext2、ext3、NFS,cramfs等)、等)、TCPIP网络支持网络支持、存储更多数据用的、存储更多数据用的磁盘功能磁盘功能、提供设计精简的、提供设计精简的应用程序应用程序。三、嵌入式三、嵌入式Linux的主要特点的主要特点是精简标准是精简标准Linux的内核的内核适应于多种适应于多种CPU和多种硬件平台和多种硬件平台性能稳定、裁剪性很好、开发和使性能稳定、裁剪性很好、开发和使用都很容易用都很容易可以使用可以使用Unix或或Linux在在PC上的应上的应用程序。用
14、程序。四、嵌入式四、嵌入式Linux操作系统的优势操作系统的优势(1)支持多种体系结构支持多种体系结构 支持支持x86, ARM, IPS,APARC等多种等多种CPU,已被移植到数十种硬件平台上。已被移植到数十种硬件平台上。(2)多任务,内核稳定,可定制,源代码开多任务,内核稳定,可定制,源代码开放放(3)强大的网络支持功能强大的网络支持功能 支持支持TCP/IP协议,及其上的高层协议,如协议,及其上的高层协议,如ftp, Telnet, http等。支持等。支持Socket网络编程。网络编程。(4)支持多文件系统支持多文件系统 linux支持支持FAT32, EXT2, EXT3等多种文等
15、多种文件系统,支持虚拟文件系统,同时还可以连件系统,支持虚拟文件系统,同时还可以连接其它的文件系统,如接其它的文件系统,如ROMFS,JFFS等文件等文件系统。系统。(5)驱动丰富、支持大量外设驱动丰富、支持大量外设 linux支持所有的支持所有的PC外设,具有丰富的外外设,具有丰富的外设驱动程序。设驱动程序。(6)Linux具备一整套工具链具备一整套工具链 容易自行建立嵌入式系统的开发环境、交容易自行建立嵌入式系统的开发环境、交叉运行环境。叉运行环境。可以跨越嵌入式系统开发中,需要使用仿可以跨越嵌入式系统开发中,需要使用仿真工具的障碍。真工具的障碍。对于对于Linux操作系统,可以直接使用内
16、核操作系统,可以直接使用内核调试器来做操作系统的内核调试和查错。调试器来做操作系统的内核调试和查错。主要内容主要内容1、Linux文件系统文件系统2、Linux文件系统结构文件系统结构5. 2 Linux文件系统文件系统5.2.1 Linux文件系统概述文件系统概述文件结构文件结构是文件存放在磁盘等存贮设备是文件存放在磁盘等存贮设备上的组织方法。上的组织方法。文件结构主要体现在文件结构主要体现在对文件和目录的组对文件和目录的组织上。目录提供了管理文件的一个方便而织上。目录提供了管理文件的一个方便而有效的途径。有效的途径。linux使用标准的目录结构使用标准的目录结构,在安装的,在安装的时候,安
17、装程序就已经为用户创建了文件时候,安装程序就已经为用户创建了文件系统和完整而固定的目录组成形式,并指系统和完整而固定的目录组成形式,并指定了每个目录的作用和其中的文件类型定了每个目录的作用和其中的文件类型 5.2.2 Linux与与DOS文件系统区别文件系统区别Linux文件系统是文件系统是一个目录树一个目录树结构结构,最上,最上层是根目录,其他的所有目录都是从根目录出层是根目录,其他的所有目录都是从根目录出发而生成的。发而生成的。 Dos文件系统也采用目录树的结构,文件系统也采用目录树的结构,但但DOS以每个分区为树根以每个分区为树根,有几个分区就有几个,有几个分区就有几个树型结构树型结构
18、。/sbin /usr /etc /root /lib /hom /mnt/ C D ELinux下,任何一个目录都可以是一下,任何一个目录都可以是一个分区。因此,在分区时,必须将一个个分区。因此,在分区时,必须将一个分区安装在树根下面。分区安装在树根下面。Linux不仅将分区安装为一个目录,不仅将分区安装为一个目录,而且还而且还将所有的硬件设备都安装成一个将所有的硬件设备都安装成一个个设备文件个设备文件。对设备的操作是通过文件。对设备的操作是通过文件的操作完成的。的操作完成的。5.2.3 Linux文件系统结构文件系统结构 “/”根目录:根目录: 包含基本的操作系统和维护工包含基本的操作系统
19、和维护工具。这个目录的文件可以启动系统,并且需具。这个目录的文件可以启动系统,并且需要的话,可以完成紧急维护和修复的功能。要的话,可以完成紧急维护和修复的功能。 “/usr”目录:目录: 包含所有的命令、程序库、文包含所有的命令、程序库、文档和其它文件。这些文件在正常操作中不会档和其它文件。这些文件在正常操作中不会被改变的。这个目录也包含你的被改变的。这个目录也包含你的Linux发行版发行版本的主要的应用程序。本的主要的应用程序。 “/var”目录:目录: 存放在操作中被改变的文件:存放在操作中被改变的文件:假脱机文件、记录文件、加锁文件、临时文假脱机文件、记录文件、加锁文件、临时文件和页格式
20、化文件等。件和页格式化文件等。正常正常 “/home”目录:目录: 包含用户的文件:参数设置包含用户的文件:参数设置文件、个性化文件、文档、数据、文件、个性化文件、文档、数据、EMAIL、缓存数据等。这个目录在系统省级时应该保缓存数据等。这个目录在系统省级时应该保留。留。 “/mnt”目录:目录: 一般用来临时挂载别的文件一般用来临时挂载别的文件系统,如系统,如FAT32,NTFS等等 “/bin”目录:目录: 系统启动时需要的执行文件系统启动时需要的执行文件(二进制),这些文件可以被普通用户使用。(二进制),这些文件可以被普通用户使用。 “/sbin”目录:目录: 系统执行文件(二进制),这
21、系统执行文件(二进制),这些文件不打算被普通用户使用。(普通用户些文件不打算被普通用户使用。(普通用户仍然可以使用它们,但要指定目录。)仍然可以使用它们,但要指定目录。) “/etc”目录:目录: 操作系统的配置文件目录。操作系统的配置文件目录。 “/root”目录:目录: 系统管理员(也叫超级用户系统管理员(也叫超级用户或根用户)的或根用户)的Home目录。目录。 “/dev”目录:目录: 设备文件目录。设备文件目录。LINUX下设下设备被当成文件,正常情况下,设备会有一个备被当成文件,正常情况下,设备会有一个独立的子目录。这些设备的内容会出现在独独立的子目录。这些设备的内容会出现在独立的子
22、目录下。立的子目录下。 “/lib”目录:目录:根文件系统目录下程序根文件系统目录下程序和核心模块的共享库。和核心模块的共享库。 “/boot”目录:目录: 用于启动加载程序的用于启动加载程序的文件。当计算机启动时(如果有多个操文件。当计算机启动时(如果有多个操作系统,有可能允许你选择启动哪一个作系统,有可能允许你选择启动哪一个操作系统),这些文件首先被装载。这操作系统),这些文件首先被装载。这个目录也会包含个目录也会包含Linux核(压缩文件核(压缩文件 vmlinuz)。)。但但Linux核也可以存在别处,只要配核也可以存在别处,只要配置置LILO并且并且LILO知道知道Linux核在哪儿
23、。核在哪儿。 用于启动加载程序(用于启动加载程序(LILO或或GRUB) “/opt”目录:目录: 可选的应用程序。譬如,可选的应用程序。譬如,REDHAT 5.2下的下的KDE (REDHAT 6.0下,下,KDE放在其它的放在其它的X-WINDOWS应用程序中,应用程序中,主执行程序在主执行程序在/usr/bin目录下)目录下) “/tmp”目录目录 :临时文件。该目录会被自临时文件。该目录会被自动清理干净。动清理干净。 “/lost+found”目录:目录: 在文件系统修复时恢在文件系统修复时恢复的文件。复的文件。5.2.4 挂载文件系统挂载文件系统 将一个文件系统的顶层目录挂到另一个文
24、件系统将一个文件系统的顶层目录挂到另一个文件系统的子目录上,使它们成为一个整体,称为挂载。的子目录上,使它们成为一个整体,称为挂载。把该子目录称为挂载点。把该子目录称为挂载点。 当一个机器上装了多个操作系统,比如在当一个机器上装了多个操作系统,比如在Linux工工作时需访问作时需访问Windows下的下的C盘,则需要在盘,则需要在Linux上上挂载挂载 采用采用mount命令挂载,命令挂载,umount命令卸载。命令卸载。 为避免每次系统启动时都挂接,可写入相应命令为避免每次系统启动时都挂接,可写入相应命令到到/etc/fstab。 加挂加挂FAT32系统系统首先进入首先进入/mnt目录,新建
25、所挂接分区对应目录,例目录,新建所挂接分区对应目录,例winDmount t vfat o iocharset=cp936 /dev/hda2 /mnt/winD其中,其中,hda2为为D盘对应的设备文件,可通过盘对应的设备文件,可通过“fdisk l”命令或命令或“系统工具系统工具/硬件浏览器硬件浏览器”中查看各盘对中查看各盘对应的设备文件。应的设备文件。 加挂加挂ntfs系统系统-t ntfs 加挂加挂U盘上的文件系统盘上的文件系统mount t vfat o iocharset=cp936 /dev/sda1 /mnt/udisk5.2.5 常用的常用的Linux文件系统文件系统 Lin
展开阅读全文