




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、学而不思则惘,思而不学则殆嵌入式Linux :一、单选10*2(1) linux常见命令:常用指令幕)换模式。ls-l-a显示文件或目录列出文件详细信息l(list)列出当前目录下所有文件及目录,包括隐藏的a(all)mkdir创建目录-p仓U建目录,右无父目录,则创建p(pare nt)pwd显示当前路径ln创建链接文件cd切换目录touch创建空文件echo创建带有内容的文件。(回显一个字符串或环境变量到屏cat查看文件内容cp拷贝mv移动或重命名rm删除文件-r递归删除,可删除子目录及文件-f强制删除find在文件系统中搜索某文件grep在文本文件中查找某个字符串(查找文件内容)tar:
2、打包压缩-c归档文件-x压缩文件-zgzip压缩文件-jbzip2压缩文件-v显示压缩或解压缩过程v(view)-f使用档名vim三种模式:命令模式、插入模式、编辑模式。使用ESC或i或:来切命令模式下::q退出:q!强制退出:wq保存并退出:set nu mber显示行号:set nonu mber useradd用户名 userdel用户名隐藏行号adduser用户名groupadd 组名groupdel 组名 passwd root 给 root设置密码(2) 创建节点文件 mknod -m 666 device_name(可以写路径)设备选项(c:字符设备b:块设备)主设备号次设备号(
3、3) 下载内核的地址(根据内核映像文件的大小动态手工的修改地址)二、 多选18(1)驱动入口出口(2)配置函数(3) 哪个是busybox支持的功能(busybox是一个集成了一百多个最常用linux命令和工具的软件,他甚至还集成了一个http服务器和一个tel net服务器,而所有这一切功能却只有区区1M左右的大小我们平时用的那些linux命令就好比是分立式的电子元件,而busybox就好比是一个集成电路,把常用的工具和命令集成压缩在一个可执行文件里,功能基本不变,而大小却小很多倍,)(4)嵌入式开发流程题三、5*6 Bootloader(1)超级终端 mini-com : Linux下的M
4、inicom 的功能与 Windows下的超级终端功能相 似,可以通过串口控制外部的硬件设备.适于在linux通过超级终端对嵌入式设备行管理.同样也可以使用 minicom对外置Modem或者其他硬件设备进行控制.minicom -s启动CTRL+A,然后按Z,启动串口命令界面,按S键,选择zmodem传输方式;按回车(2)启动参数 boot parameters(3) 假如修改成nfs来启动文件系统应该修改哪些参数内核支持 NFS分区(即编译时在 File system中选中* Root file system on NFS), 以及支持内核IP_PNP(即编译时在 Networking 中
5、选中* IP: kernel level autoc on figurati on)File systems ->Network File Systems -><*> NFS file system support# 必选* Provide NFSv3 client support# 可选* Root file system on NFS# 必选Networki ng->* Network ing supportNetworki ng opti ons->* IP: kern el level autoc on figurati on# 必选需要打开IP:K
6、ernel level autoconfiguration 以及下面所有的选项包括DHCP, BOOTP,RARP,而且 NFS Client Support 不能是模块,必须编译进内核 进入bootoption选项(也可以修改.config)添加如下参数con sole=ttyS0 root=/dev/ nfs n fsroot=1:/home/bz/nfsdip=2:1:::matrix4.arm9. net:ethO:off其中那个IP参数的意思是:板子的地址:主机的
7、地址:网关:子网掩码:主机名网卡:off主机名意义不大,重要的是板子的ip地址,和主机的地址一定要在同一网段。接着在bootloader中设置ip地址为以上的板子ip。:四、bootloader 调试题 16'(1)解释bootloader的命令/Bootloader的常见命令:helploadBootP (重要)IP地址TFTP (重要) flash (重要) boot查看相应Bootloader命令的信息把存放在Flash中的映像文件拷贝到SDRAM中获取主机发送的BootP数据包,解析其数据包,获取本机的通过以太网下载主机的数据或文件到目标平台上 把SDRAM中的数据烧录到 Fl
8、ash中的特定区域 在SDRAM中运行kernel,通过参数中指定的地址运行kernel(2)eraseset (重要)ping (重要) reboot嵌入式系统搭建过程中,擦除Flash中的相应区域设置IP地址,MAC地址以及autoboot参数检查目标平台和主机平台的网络连接软件复位对于系统平台搭建工程师最初的一步通常是移植通常最常见的是参考的EVM的硬件有了修改(如更改DDR SDRAM 等),并且是初次调试硬件,更大的困难是VM开发板,或者 EVM 开发板需要license才能购买,这-点灯和串口打Bootloader,当然移植有几个级别,了 FLASH,更改了 SDRAM、公司为节省
9、成本不打算买上万的时移植Bootloader是比较难做的,不过也不是没有方法,最有效的有两个 印。Bootloader调试技术-点灯当烧写好Bootloader,启动Bootloader,肯定是从一个固定的地址开始执行程序, 最初的程序是从 FLASH中读取执行的,有些处理器是直接使用FLASH地址,有些会映射到FLASH地址,此时SDRAM可以认为没用到,如何确认程序有没有直接执行,通常用点灯来验证,在Bootloader入口代码段尽量靠前初添加点灯代码(使用 GPIO控制),跟踪代 码的执行,如果确认点灯代码没问题,程序没执行,那可能是启动地址没有指向FLASH地址,硬件晶振没起振,硬件I
10、C电源供电问题,硬件IC引脚接地问题,CPU配置字问题(如 启动模式),CPLD时序调节问题等等,当所有的问题排查和解决之后,点灯成功是种必然。Bootloader调试技术-串口打印点灯成功之后就可以对重要的配置参数跟踪调试,比较重要的是程序跳转到 SDRAM执行(重点是SDRAM时序参数和clk配置正确),而后就需要打通串口,打通串口需要对UART参数进行正确配置,测试用输出字符函数(这里可没printf()函数可用),通常点灯成功之后打通串口相对容易,这里重点是使用串口调试程序,在printf()函数可用之前使用低级别的串口输出函数实现程序的跟踪调试(通常是调试汇编代码),在printf(
11、)函数可用之后使用printf()调试代码。五、简答题 tftp出错时 会给出一些提示信息,怎么解决(下载内核kernel或者文件系统file system时发生的问题)1、timed out:可能是由于目标平台ip与主机平台配置的ip不一致或者是两者之间 网线没有连接造成的(1)修改目标平台的ip使其与主机平台设置的目的 ip 一样,在主机平 台下通过ping命令检查目标平台和主机平台是否正常连接(2) 修改主机平台的ip使其与目标平台设置的目的ip 一样,在主机平 台下通过ping命令检查目标平台和主机平台是否正常连接(3) 插上网线,在主机平台下通过ping命令检查目标平台和主机平台是
12、否正常连接2、 file not found :有可能是文件名不一致,或者是文件并不存在于目标服务器所对 应的目录下(1)修改文件名,使得目标平台和主机平台对应的映像文件名一样(2)将对应的映像文件放在服务器所配置的目录下3、file is too big :这个问题是由于自身制作的内核或者文件系统映像文件的大小比 Bootloader设置的对应地址空间大造成的(1) 裁剪掉不需要的功能使得映像文件本身大小在Bootloader所设置的 地址空间范围内(2)修改Bootloader设置的地址空间配置,使之能容纳你所制作的映像文件4、六、驱动题(1)遵循GNU规范(2)用户进程是通过设备文件同硬
13、件打交道的,对设备文件操作不外乎就是一些系统调用,那么如何将系统调用和驱动程序关联起来呢?就是每种设备,都有对应的统一文件接口,比如说字符设备是structfile_operations 块设备是 block_file_operations 等static struct file_operati onsseek,read,/write,/readdir,select,ioctrl,/ope n,/realse,close,/"/"是字符设备常见的,每一个成员都对应了一个系统调用,用户进程利用系统调用在对设备文件(使用mknod建立的文件)进行诸如read/write的操作时
14、,系统调用通过设备文件的主设备号找到对应种类的驱动程序,在根据次设备号找到具体设备的设备驱 动(主设备号用来区分不同种类的设备,而次设备号用来区分同一类型的多个设备),然后读取这个数据节后相应的函数指针,接着将控制权此函数 (在这个函数中, 可能处理用户传过来的数据,需要注意的是,用户空间和内核空间之前的数据是完全分开的,也就是说两部分之间的地址是分开的,对于这两部分的数据通信,都有相应的内核函数来处理,诸如copy_to_user等),这就是linux设备驱动的原理(2) 驱动的入口和出口:modulenit(Led_i nit);module_exit(Led_exit);(3)编写驱动程
15、序的主要工作在用户编写这些子函数,并填写这个结构体,同时makefile的修改或者书写(4) 驱动程序的编译:分为静态加载和动态加载,也就是直接编译进内核和模块加载 方式静态加载:kernel的文件大小增加,会改动内核源代码文件,不能动态的卸载,不 利于调试动态加载:使用insmod进行动态的加载,用 dmesg或Ismod命令检查一下模块加 载是否成功,在不使用的时候可以rmnod来动态卸载linux常见命令:Is显示文件或目录-I列出文件详细信息l(list)-a列出当前目录下所有文件及目录,mkdir创建目录-P创建目录,右无父目录,则创建pwd显示当前目录In创建链接文件cd切换目录t
16、ouch创建空文件echo创建带有内容的文件。cat查看文件内容cp拷贝mv移动或重命名rm删除文件-r递归删除,可删除子目录及文件-f强制删除find在文件系统中搜索某文件grep在文本文件中查找某个字符串tar:打包压缩-c归档文件-x压缩文件-zgzip压缩文件-jbzip2压缩文件-v显示压缩或解压缩过程-f使用档名vim三种模式:命令模式、插入模式、编辑模式。命令模式下::q退出:q!强制退出:wq保存并退出:set nu mber显示行号:set nonu mber隐藏行号useradd用户名userdel用户名adduser用户名groupadd 组名groupdel 组名pas
17、swd root给root设置密码wc统计文本中行数、字数、字符数/rmdir删除空目录p(pare nt)v(view)包括隐藏的使用a(all)ESC或i或:来切换模式。/tree树形结构显示目录,需要安装tree包/more、less 分页显示文本文件内容/head、tail 显示文件头、尾内容只打包,不压缩ctrl+alt+F1 命令行全屏模式系统管理命令statwho whoami host name显示指定文件的详细信息,比ls更详细显示在线登陆用户显示当前操作用户显示主机名un ame top ps du df ifconfig ping n etstat显示系统信息动态显示当前
18、耗费资源最多进程信息显示瞬间进程状态ps -aux查看目录大小 du -h /home带有单位显示目录信息查看磁盘大小 df -h带有单位显示磁盘信息 查看网络情况测试网络连通显示网络状态信息manclear alias showmeit kill命令不会用了,找男人女口: man ls清屏对命令重命名女口: alias showmeit="ps -aux",另外解除使用unaliax杀死进程,可以先用ps或top命令查看进程的id,然后再用kill命令杀死进程。打包压缩相关命令tar:打包压缩-c归档文件-x压缩文件-z-j-v-f例:gzip压缩文件bzip2压缩文件显
19、示压缩或解压缩过程v(view)使用档名gzip: bzip2 :tar -cvf /home/abc.tar /home/abc打包,并用gzip压缩tar -zcvf /home/abc.tar.gz /home/abctar -jcvf /home/abc.tar.bz2 /home/abc打包,并用 bzip2 压缩/ tar -jcvf 中的"c” 换当然,如果想解压缩,就直接替换上面的命令tar -cvf / tar -zcvf 成“ x”就可以了。关机/重启机器 shutdow n-r关机重启-h关机不重启now立刻关机halt关机reboot重启Linux管道将一个命
20、令的标准输出作为另一个命令的标准输入。也就是把几个命令组合起来使用,后一个命令除以前一个命令的结果。例:grep -r "close" /home/* | more在home目录下所有文件中查找,包括close的文件,并分页输出。Linux软件包管理dpkg (Debian Package)管理工具,软件包名以.deb后缀。这种方法适合系统不能联网的情况 下。比如安装tree命令的安装包,先将tree.deb传到Linux系统中。再使用如下命令安装。安装软件卸载软件有多种方式。VMwareTool,使用挂载方式;使用winSCPsudo dpkg -i tree_1.5.3
21、-1386.debsudo dpkg -r tree注:将tree.deb传到Linux系统中, 工具等;APT( Advaneed Packaging Tool )高级软件工具。这种方法适合系统能够连接互联网的情况。 依然以tree为例安装tree卸载tree更新软件sudo apt-get in stall tree sudo apt-get remove tree sudo apt-get update sudo apt-get upgrade 将.rpm文件转为.deb文件.rpm为RedHat使用的软件格式。在 Ubuntu下不能直接使用,所以需要转换一下。sudo alie n a
22、bc.rpm vim使用vim三种模式:命令模式、插入模式、编辑模式。使用ESC或i或:来切换模式。命令模式下::q退出:q!:wq:set nu mber强制退出保存并退出显示行号:set nonu mber 隐藏行号/apache yyp在文档中查找 apache按n跳到下一个,shift+ n上一个 复制光标所在行,并粘贴h(左移一个字符j )、j(下一行J )、k(上一行f )、1(右移一个字符t ) 用户及用户组管理/etc/passwd/etc/group/etc/shadow存储用户账号存储组账号存储用户账号的密码/etc/gshadow 存储用户组账号的密码useradd用户名userdel用户名adduser用户名groupadd 组名groupdel 组名passwd root 给root设置密码su rootsu - root/etc/profile 系统环境变量bash_prof
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- GB/T 45826-2025光刻用掺钛石英玻璃
- 2025年行政能力测验考试真题及答案
- 2025年小学语文教师资格考试卷及答案
- 2025年文化遗产保护师资格考试试题及答案
- 2025年数据科学专业毕业生考试题及答案
- 2025年市场营销战略考试试卷及答案
- 2025年社会福利与社会保障基础知识考试试题及答案
- 2025年流行病学与公共卫生政策考试试卷及答案
- 2025年法学与社会学交叉理论考试卷及答案
- 家乡的小河美丽的自然景观描写5篇范文
- 预应力混凝土方桩施工方案
- 2024年新人教版五年级数学下册《教材练习27练习二十七附答案》教学课件
- 《剪映专业版:短视频创作案例教程(全彩慕课版)》 课件 第6章 创作生活Vlog
- 人工智能与信息社会学习通超星期末考试答案章节答案2024年
- 临建集装箱项目施工部署方案
- 11ZJ311地下室防水图集
- 土地整治实施操作手册
- 深圳市引导基金管理办法
- 10以内连加练习题完整版51
- 机场建造行业投资机会与风险识别及应对策略报告
- 统编版语文一年级下册第四单元整体解读
评论
0/150
提交评论