嵌入式操作系统.docx

上传人:b****5 文档编号:8442379 上传时间:2023-01-31 格式:DOCX 页数:14 大小:26.37KB
下载 相关 举报
嵌入式操作系统.docx_第1页
第1页 / 共14页
嵌入式操作系统.docx_第2页
第2页 / 共14页
嵌入式操作系统.docx_第3页
第3页 / 共14页
嵌入式操作系统.docx_第4页
第4页 / 共14页
嵌入式操作系统.docx_第5页
第5页 / 共14页
点击查看更多>>
下载资源
资源描述

嵌入式操作系统.docx

《嵌入式操作系统.docx》由会员分享,可在线阅读,更多相关《嵌入式操作系统.docx(14页珍藏版)》请在冰豆网上搜索。

嵌入式操作系统.docx

嵌入式操作系统嵌入式操作系统一、填空题1.ARM处理器中断有快速中断模式(FIQ)印外部中断模式(IRQ)处理模式。

2.典型的ARM基于JTAG调试结构包括哪几个部分Debug主控端,协议转换器,调试目标机3.LINUX系统中设备文件通常分为哪几种字符设备(无缓冲且只能顺序存取)、块设备(有缓冲且可以随机存取)。

4.LINUX环境中的变量包括哪几个pathhomehistsizehostnameshellmailpsilang/langue5.-&gcc编译分成哪4个阶段:

预处理(Pre-Processing)编译(Compling)-汇编(Assembling)-连接(Linking)7.f1ashmemory上的两种技术分别是NAND和NOR8.MMU是内存管理单元,主要作用有地址映射和对地址访问进行保护和限制9.Pxa255拥有7级.超级流水线,主要由主流水线、MAC流水线和内存访问流水线部分构成的10.进程的虛拟内存包括和11.内核(kernel)是操作系统内部核心程序,它向外部提供了对计算机核心管理调用12.模块的装入通过insmod命令手工将module载入内核和根据需要载入module13.4嵌入式操作系统要为特定的硬件设备或环境设计符合要求的图形用户界面GUI15.在LINL1X根文件系统中所有的设备文件都放在目录dev下或其子目录之下16.XWindows最先在Unix上使用的图形界面,由X服务器X客户机X协议三部分组成17.內核最后一个初始化动作是启动初始化程序(运行/sbin/init可执行文件)18.线程共享资源的程序实体,创建一个线程系统开销要比一个进程小的多19.内核碰到错误时,会显示处理器状态,包括cpu存器的内容和页描述表的位1还有一些难理解的信息20.在ARMLINUX依系中用来处理外设中断的异常模式是中断请求21.闪存主要由NORflash和NANDflash22.预定义变量:

将所有的外部变量表示成内建环境变量,并且将错误信息表示成返回值AS=as指定汇编器ASFLAGSAS指令的选项设置CC=cc=gcc指定编译器$没有扩展名的当前目标文件$0当前目标文件$规则的笫一个依賴文件名$比目标文件更新的依赖文件列表$规则的所有依賴文件列表$%如果目标長归档成员,则该变量表示目标的归档咸员名称。

例如,如果目标名称为,则罚为,而$%为。

二、选择题1.处理器的型号(嵌入式和非嵌入式)ARM(XScale),EMPU,EDSP,SOC,MIPS,PowerPC,M68000,SecurCore,StrongARM,PalmOS,Psos2.reboot命令可以马上重新启动正在运行的LINUX系统3.处理器的选择要考虑的主要因素处理性能,技术指标,功耗,功率损耗检测4.LINUX文件权限的含义(共四段)以主目录的绝对路径名以形式显示(pwd)16.在vi编辑器命令模式下,重复上一次对编辑的文本使用上箭头命令令令17.在使用文件通配符的含义文件系统的主要功能是(嵌入式Linux文件系统)文件系统不仅要管理文件,提供文件系统API,还要管理各种设备,支持对设备和文件操作的一致性(像操作文件一样操作各种I/O设备)管理和调度文件的存储空间.提供文件的逻辑结构、物理结构和存储方法;实现文件从标识到实际地址的映射(即按名存取),实现文件的控制操作和存取操作(包括文件的建立.撤销.打开、关闭,对文件的读、写、修改、复制.转储等),实现文件信息的共享并提供可靠的文件保密和保护措施,提供文件的安全措施(文件的转储和恢复能力)。

18.找出不是断电的状态19.嵌入式系统应用软件需要交叉编译环境支持宿主机开发及在目标机上运行三、判断题1.LINUX文件名的长度不得超过256个字符X2.X创建一个线程所花费的系统开销要比进程小的多V4.基于ARM架构的指令都是32位X64位5.Bootloader是嵌入式系统运行的第一个程序V6.LINUX是一个真正的多用户多任务的操作系统,允许多个用户在相同的机器并能保证相互之间的共享和安全V7.LINUX可根据系统物理内存的大小限制已打开进程的总数目V8.根据文件系统所在的分区越大越好,因为越大,LINUX启动速度越快X9.Flash存储器是一种可在系统进行擦写,掉电后,信息不会丢失的存储器V10.Shell命令的第一个按键必须是字符,数字或空格X11./c.重定向的符号表示输入追加V13.在gdb调试中,可以用make命令,不用退出gdb就能重新产生可执行文件J14.在使用gcc编译文件,只想生成目标文件不进行连接,需要选项-cJ15.Busyboxt用来替代桌面系统的shell等程序,为嵌入式用户提供使用环境J16.用Is-c命令可以建立一个准接文件X長查找命令-L17.LINUX采用线程调用程序,选择线程占用cpu运行X不占用18.模块是具有独立功能的程序,它可以被单独编译,可以独立运行(不能独立运行)X19.根文件系统是系统启动时,首先加载的文件系统,因此需要快速加载的内容放置其中,以加快系统运行速度X根文件系统是系统挂载的第一个文件系统,根文件系统要包括LINUX启动时所必需的文件和关键性的文件。

20.2.在下列arm处理器的各种模式中,只有系统模式不可以自由的改变处理器的工作模式X用户模式四、简答题1.什么是符号链接(软钱接)什么是硬链接两者区别由于linux下的文件是通过索引节点(Inode)来识别文件,硬链接可以认为是一个指针,指向文件索引节点的指针,系统并不为它重新分配inode.每添加一个一个硬链接,文件的链接数就加1软链接克服了硬链接的不足,没有任何文件系统的限制,任何用户可以创建指向目录的符号笹接。

因而现在更为广泛使用,它具有更大的灵活性,甚至可以跨越不同机器、不同网络对文件进行琏接。

如果给In命令加上-s选项,则建立软链接。

如果链接名巳经存在但不是目录,将不做糕接。

钱接名可以長任何一个文件名(可包含路径),也可以是一个目录,并且允许它与“目标”不在同一个文件系统中.如果钱接名是一个巳经存在的目录,系统将在该目录下建立一个或多个与“目标”同名的文件,此新建的文件实际上是指向原“目标”的符号後接文件。

2.嵌入式系统的定义,整个嵌入式系统的体系结构可以分成哪4个嵌入式系统是以应用为中心,以计算机技术为基础,采用可剪裁软硬件,适用于对功能、可靠性、成本、体积、功耗等有严格要求的专用计算机系统。

整个嵌入式系统的体系结构可以分成四个部分:

嵌入式处理器、嵌入式外围设备、嵌入式操作系统和嵌入式应用软件。

3.嵌入式系统的设计步骤有哪些各部分的主要工作是什么嵌入式系统的设计可以分成三个阶段:

分析、设计和实现分析阶段是确定要解决的问题及需要完成的目标,也常常被称为需求阶段;设计阶段主要是解决如何在给定的约束条件下完成用户的要求;实现阶段主要是解决如何在所选择的硬件和软件的基础上进行整个软、硬件系统的协调实现。

4.在LINUX中如何编辑c程序使其成为可执行文件,如何调试它t1)检查程序中.h文件所在的目录,将其加入系统PATH中;2)执行C编译:

#gcc源文件名-。

目标文件名执行C+编译:

#g+源文件名-0目标文件名3)改变目标文件为可执行文件:

#chmod+x目标文件名4)如需将多个可执行文件连续执行,可生成批处理文件:

#vi批处理文件名可执行文件1可执行文件2最后将该批处理文件属性该位可执行。

调试:

在编译时使用-g参数,就可以使用gdb进行调试。

5.ARM主要支持哪2种数据存储模式并描述特点支持大端格式和小端格式。

大端格式:

字数据的高字节存储在低地址中,而字数据的低字节则存放在高地址中。

小端格式:

低地址中存放的是字数据的低字节,高地址存放的是字数据的高字节。

6.简述ARM体系中地址映射采用哪2种方式,分别论述每种形成32位方法虛拟内存到磁盘文件的映射虚拟内存到物理內存的映射7.什么是bootloader主要工作模式主要功能概括地说,BootLoader就是操作系统内核运行之前运行的一段小程序。

主要工作模式:

启动加载模式和下载模式主要功能:

通过这段小程序,可以初始化硬件设备和建立内存空间的映射图,从而可以将系统的软硬件环境带到一个合适的状态,以便为最终调用操作系统内核准备好正确的环境。

&简述嵌入式LINUX系统初始化过程屏蔽所有的中断、设置CPU的速度和时钟频率、RM初始化、初始化LED。

五、实验题1.新建、移动、删除、复制、文件打包新建:

mkdirtftpzImagekernel复制到flash中XSBASEflashkernel下载文件系统filesysytemXSBASEtftprootXSBASEflashrootReboot4.gdb编译的步骤命令(填空一关键步骤)编译文件:

gcc-g-ofilename运行:

/filename调试:

gdbf订ename(gdb)filef订ename(这个命令将载入filename可执行文件,就像你在gdb命令行里装入它一样)运行程序:

(gdb)run(gdb)list(三次,列出源代码)设置断点:

(gdb)break23查看断电信息:

(gdb)infobreak运行程序:

(gdb)r单句执行:

(gdb)next继续运行程序:

(gdb)C打印变量i:

(gdb)pi退出GDB:

(gdb)q6.Makefile给出几个文件,写出makefile的文件(如果不使用预定义变量/使用预定义变量该怎么写)通过vi编译器来创建两个文件和makefileMakefilettinclude”CC=gccmain()hello:

$(CC)-ohelloprintf(welcometoshanghai!

n”);:

)$(CC)-oclean:

rm-rfhello*o使用预定义变量编译程序MakefielCC=gcchello:

$(CC)$-o$(CC)-c$;prWJ1voidprocess1(int乩iiitb):

voidprocess2(inta.iiitb):

liiKhidetdio.hr#includesldiQ.Froidprocess.1(intajutb)voidprocess2(int,tntb)IpruilfiTheSmallerOiwis)iprintffTheAverseisrXifiabhOBJS=niain.oprocessl,oproccss2omainimain.oprocessl.oproress.2.o$(CC$-o$maiiLainaiii.c$CC)-C$-Q$process1.aiprooess1c$CC-c$-q$proc-ess2.a;prooess2.c$-C$2、复制到flash中:

flashkernel3、下载filesystem:

tftprootflashroot第四题:

编译GDB:

/usr/local文件夹下解压tarxvzf/configuretarget=arm-linuxprefix=/usr/local/arm-gdb-vmakemakeintsallGDB客户端编译:

cd/usr/local/exportPATH=$PATH:

usr/local/arm-linux/bin./configuretarget=arm-linuxhost=arm-linuxcdgdb/gdbservermakeCC=/usr/local/bin/arin-1inux-gcc(会出错)修改gdb/gdbserver/文件注释掉,修改为gdbserver:

1234test结果显示进程建立成功与进程PID本机命令cp/px且255/test/usr/local/arnrgdb/bincd/usr/local/arm-gdb/bin./arm-linux-gdbtest?

连接成功,目标板回显消息:

remotedebuggingXXXXXXXXlist显示代码breakn设断点,n代表行数cont执行step单步quit退出第五题:

CC=gcchello:

$(CC)-ohello$(CC)-Cclean:

rm-rf.oCC=gccTARGET=cacuOBJS=add/add/sub/RM=rm-f$(TARGET):

$(OBJS)将OBJS中所有.o的文件替换成.c文件编译生成目标文件$(CC)-o$(TARGET)$(OBJS)$(OBJS):

%.o:

%c$(CC)-c$-o$clean-$(RM)$(TARGET)$(OBJS)$*不包含扩展名的目标文件名称。

$+所有的依赖文件,以空格分开,并以出现的先后为序,可能包含重复的依赖文件。

$第一个依赖文件的名称。

$所有的依赖文件,以空格分开,这些依赖文件的修改日期比目标的创建日期晚。

$目标的完整名称。

$所有的依赖文件,以空格分开,不包含重复的依赖文件。

第六题:

(详情见PDF)#tarjxvf#makemenuconfig#makedep#make#makeinstall建立etc目录:

rootlocalhost_instal1#mkdiretc在etc目录下,建立rc文件:

#!

/bin/shhostnameFIGOmount-tprocproc/proccat/etc/motd改变其文件属性#chmod777rc在etc目录下,建立inittab文件:

sysinit:

/etc/rcS#Startanaskfirstshellontheconsole(whateverthatmaybe):

askfirst:

-/bin/sh#Stufftodowhenrestartingtheinitprocess:

restart:

/sbin/init#Stufftodobeforerebooting:

ctrlaltdel:

/sbin/reboot:

shutdown:

/bin/umount-a-r:

shutdown:

/sbin/swapoff-a在etc目录下,配置motd文件,下面我们用图示的文字表示,也可以使用其它的文字。

WelcometoARM-LINUXWORLD在etc目录下,建立目录,在目录下,建立rc文件的符号连接文件rcS。

rootlocalhostetc#Isinittabmotdrcrootlocalhostetc#mkdirrootlocalhostetc#cdrootlocalhost#In-s./rcrcSrootlocalhost#filercSrcS:

symboliclinkto/rc在.install目录下,建立dev目录,创建设备文件。

在本实验中一些设备文件長必需的,比如系统控制台console,MTD块设备mtdblock3等,可以使用mknod命令来创建。

ttmknodconsolec51ttmknodmtdblock3b313除了使用mknod命令来手工创建设备文件外,还可以复制主机平台/dev目录下一些必要的设备文件到/_install/dev目录下:

#cp-dpR/dev/root/tars/_install/dev制作JFFS2文件映像在busybox目录下*将文件挎贝到busybox目录下:

#cp/pxa255/Filesystem/返回到busybox的根目录下,运行命令#/-o-e0x40000-r_install-p-1

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 工程科技 > 电子电路

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

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