嵌入式系统原理与应用末考总结

嵌入式操作系统 :
VxWorks Windows CE uC/OS-II 和嵌入式 Linux
嵌入式 GUI
X Windows Micro Windows MiniGUI
bootloader
U-boot,Blob,ARMBoot
ARM 常用 Bootloader 程序:
U-Boot Blob RedBoot vivi
嵌入式数据库:
mSQL Berkeley DB SQLite
动态 / 静态链接库:
.so .a 程序运行过程中 编译过程中
创建 根文件系统 的工具为 BusyBox
宿主机和试验箱通过 串口 来传输数据
配置 minocom (串口通信工具)时,
一般参数为波特率 115200 ,数据位 8 位,
停止位 1 位,奇偶校验位无软硬件控制流为无
Flash 存储器烧写 可以通过
编程器、串口和网络接口等不同方式。
最先被写入 Flash 存储器中的软件是 Bootloader
嵌入式 linux 内核映像 文件 zImage,
根映像 文件是 root.cramfs
大多数 Bootloader 程序 包括
启动加载和下载操作模式
Linux 驱动程序的编译 方法:
静态编译和动态编译
加载模块化驱动程 序的命令是 insmod
卸载 已安装模块化驱动程序的命令是 rmmod
查看 已安装的模块化驱动程序的命令是 lsmod
嵌入式数据库特点 :可定制性可靠性支体提
SQLilte 特性 :支持 ACID 事务零配置程序体积小
自包含 跨平台 无数据类型
(1) 计算机分为:嵌入式和通用
(2) 硬件:微处理器 外围电路 外部设备
(3) 软件:板级支持包 实时操作系统 应用编程接口 应用程序
(4) 嵌入式处理器可以分为:嵌入式处理器 微控制器 数字信号处理器
简述计算机系统的发展历程
第一阶段大致在 20 世纪 70 年代前后,可以看成是嵌入式系统的萌芽阶段;
第二阶段是以嵌入式微处理器为基础,以简单操作系统为核心的嵌入式系统;
第三阶段是以嵌入式操作系统为标志的嵌入式系统,也是嵌入式应用开始普及的阶段;
第四阶段是以基于 Internet 为标志的嵌入式系统,这是一个正在迅速发展的阶段。
简述 MCU DSP 的区别
MCU 是微控制器, DSP 是数字信号处理器。 MCU 相当于小型的电脑,
内部集成的 CPU ROM RAM I/O 总线,
所以集成度高是它的特点。
DSP 是专用的信息处理器,
内部的程序是对不同的机器和环境进行特别优化,
所以处理速度是最快的。
make Makefile 之间的关系?
make 是一种命令,是根据 Makefile 文件的规则
决定如何编译和连接程序或其他的动作。
$@ :规则的目标对应的文件名;
$^ :表示所有的依赖列表,以空格分开;
$< :依赖文件列表中的第一个文件。
$+ :所有的依赖文件
$* :不包含扩展名的目标文件名称
GCC 编译器的常用参数功能
-o 表示编译成一个可执行程序;
-I 表示指定头文件目录;
-L 表示指定库文件目录选项;
-E 表示对源代码进行预编译;
-S 表示编译成汇编代码;
-c 表示把 .c 文件转换为以 .o 为扩展名的目标文件。
#gcc –g test.c –o test
#gdb test
#gcc –o test test.c 编译,生成 test.o
简述嵌入式开发环境的搭建过程
1 、交叉编译工具链的安装;
2 、安装配置 TFTP 服务;
3 、安装配置 NFS 服务;
4 C-Kermit 的安装配置;
5 minicom 的安装配置;
6 windows 下超级终端的配置。
BootLoader 的结构功能
Stage1 :汇编语言,设备初始化;
Stage2 C 编写,增强程序的移植性和可读性。
简述生成内核映像文件 zImage 的步骤
1 make config 进入命令行;
2 make menuconfig 内核裁剪;
3 make clean 清理以前已生成的目标文件;
4 make dep 编译变量的依赖关系;
5 make zImage 生成内核镜像文件 zImage
BusyBox 工具的功能
BusyBox 工具用来精简基本用户命令和程序, 它将数以百计的常用 UNIX/Linux 命令集成到一个可执行文件中。
简述根文件系统的创建过
1 、建立基本的目录结构;
2 、交叉编译 BusyBox
3 、创建配置文件;
4 、利用 cramfs 工具创建根文件系统映像文件。
简述设备文件、驱动文件、主设备号和次设备号之间的关系
驱动程序加载到内核后有一个主设备号。
Linux 内核中,主设备号标识设备对应的驱动程序,
告诉 Linux 内核使用哪个驱动程序为该设备
( 也就是 /dev 下的设备文件 ) 服务,
而次设备号则用来标识具体且唯一的某个设备。
简述字符设备驱动程序提供的常用入口点及各自的功能
open 入口点:对将要进行的 I/O 操作做好必要的准备工作,如清除缓冲区等。如果设备是
独占的,即同一时刻只能有一个程序访问此设备,则 open 子程序必须设置一些标志以表示
设备处于忙状态。
close 入口点:当设备操作结束时,需要调用 close 子程序关闭设备。独占设备必须标记设
备可再次使用。
read 入口点:当从设备上读取数据时,需要调用 read 子程序。
write 入口点:向设备上写数据时,需要调用 write 子程序。
ioctl 入口点:主要用于对设备进行读写之外的其他操作,比如配置设备、进入或退出某种
操作模式等,这些操作一般无法通过 read write 子函数完成操作。
简述信号与槽的作用
信号
当某个信号对其客户或所有者发生的内部状态发生改变,
信号被一个对象发射。
只有定义过这个信号的类及其派生类能够发射这个信号,
当一个信号被发射时,与其相关联的槽将会被立刻执行。
槽: 槽是普通的 C++ 成员函数,可以被正常调用,
它们唯一的特殊性就是很多信号可以与其相关联。
当与其相关联的信号被发射时,这个槽就会被调用。
槽可以有参数,但槽的参数不能有缺省值
嵌入式 GUI 的特点
1 、轻型,占用资源少。嵌入式 GUI 要求是轻量型的,这主要是受限于嵌入式硬件资源。
2 、可配置。由于嵌入式设备的可定制性,要求相应的 GUI 系统也是可以定制的,所以嵌入
GUI 一般都具有可裁剪性。
3 、高性能。耗用系统资源较少,能在硬件性能受限的情况下、尤其是 CPU 资源较少的情
况下达到相对较快的系统响应速度,同时减少能源消耗。
4 、高可靠性。系统独立,能适用于不同的硬件,在高性能的同时保证高可靠性。
简述 Qt/X11 Qtopia Core 的异同点。
答:相同点:都是嵌入式 GUI
也就是在嵌入式系统中为特定的硬件设备
或环境而设计的图形用户界面系统。 区别在于 Qt/X11 依赖于 X Window Server Xlib
Qtopia Core 是直接访问帧缓存。
它们所依赖的底层显示基础是不同的,
从而导致了体系结构上的差异。
常见的嵌入式数据库 有哪些? 区别 是什么?
mSQL Berkeley DB SQLite
数据处理方式,程序驱动式,引擎响应式。
逻辑模式的不同,关系 网状模型或两者的结合体。
优化重点不同, 其他数据 由于面向通用的应用,
优化的重点是:
高吞吐量、高效的索引机制、
详尽的查询优化策略。
嵌入式数据库 是面向特定应用的,
并且资源有限,
优化的重点是:实时性、开销大小、
系统性能、可靠性、可预知性和底层控制能力。
关键技术不同,嵌入式数据库的很多关键技术与其他数据库不同,
如备份恢复、复制与同步、事务和安全性等。
简述 SQLite 数据库的特点。
无需安装和管理配置,
存储在单一磁盘文件中的一个完整的数据库;
数据库文件可以再不同字节顺序的机器间自由地共享,
支持数据库大小最大为 2TB
包括 TCL 绑定,同时通过 Wrapper 支持其他语言的绑定;
独立,没有额外依赖;
支持多种开发语言,支持事件,
不需要配置、安装。
SQLite 中有哪些数据类型?
答: SQLite 支持 NULL INTERGER REAL TEXT BLOB 数据类型。

 

 

  • 19
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值