北林嵌入式系统期末复习重点
持续更新······
注:以下内容为博主期末复习所用,全打字输入,可能有误。内容为便于记忆,可能会有省略和简化。如有错误欢迎评论区更正
选择填空判断
嵌入式系统的定义和特点
- 定义:以应用为中心,计算机技术为基础,软硬件高度定制,适用于对功能、能耗、成本、体积、可靠性有严格要求的专用计算机系统
- 特点:
- 专用性
- 可靠性
- 实时性
- 低功耗
- 可裁剪
嵌入式系统的组成结构、存储设备的分类
- 结构:
嵌入式应用软件 | |
嵌入式操作系统 | |
嵌入式处理器(嵌入式系统核心) | 嵌入式外围设备 |
- 嵌入式处理器分类:
- MCU:微控制器:也叫单片机。MCS551、P51XA、MCS-251。
- MPU:微处理器:ARM、MIPS、PowerPC
- DSP:数字信号处理器:TMS320、DSP56000/消费电子产品
- SoC:片上系统:TCP-IP,GSM,Bluetooth、Accelerometer(sensor)
- 嵌入式外围设备:
- 存储设备:
- SRAM 静态易失型存储器:
- DRAM 动态存储器:
- ROM、EPROM、EEPROM、FLASH 非易失型存储器
- 通信设备
- 显示设备
- 存储设备:
嵌入式软件的测试阶段和测试策略
测试阶段
- 单元或模块测试
- 集成测试
- 外部功能测试
- 回归测试
- 系统测试
- 验收测试
- 安装测试
记忆:嵌入式软件的测试阶段有:单块(1)炸鸡(集),外公(3)回(4)去(系 5),验收(6)安装(7)
测试策略
- 单元测试——主机环境上进行
- 集成测试——主机环境上进行
- 系统测试和确认测试——目标环境上进行
嵌入式系统的应用
共享单车、电动牙刷、手机、智能手环、智能手表等
Flash的分类
NOR Flash
NAND Flash
嵌入式系统与通用计算机系统的区别
什么是ARM
Advanced RISC Machines。微处理器行业知名企业,设计RISC(精简指令集)处理器,不生产。
实验箱所用:ARM9(S3C2410处理器)
典型的嵌入式操作系统的类型和特点
- 类型
- 响应时间:实时操作系统、非实时操作系统
- 系统类型:商用系统、专用系统、开源系统
- 软件结构:单体结构、分层结构、微内核结构
- embedded linux 特点:
- 开放源码,免费使用
- 对 Linux 进行了剪裁,内核小,可以固化到几百kB 的存储器中
- 功能强大,API丰富,易于定制
- 支持绝大多数处理器和其他硬件
- 完善的网络通信和文件管理策略
- 开发资源丰富
核心板
----最小系统组成的电路开发板成为核心板
- 微处理器单元
- 存储单元
- SDRAM
- Flash(存储程序)
- 接口单元
- UART接口电路(与外界通信)
- JATAG调试接口(系统软件的下载和烧写)
微处理器的重要指标
- 主频、外频、倍频
主频 = 外频 * 倍频
2.缓存- 一级缓存:数据缓存和指令缓存
- 二级缓存:内部缓存和外部缓存
- 三级缓存:早期外置,现在内置
嵌入式微处理器的流水线技术
通过多个功能部件并行工作缩短执行时间,提高MPU运行效率和吞吐率。
简单地说:几个指令并行执行。
步骤:取指、译码、执行
ARM精简指令集的体系结构特点
- 长度固定
- 单周期指令,便于流水线操作
- 大量使用寄存器
ARM体系结构特别技术: - 所有指令课根据前一个执行结果决定是否被执行,提高效率。
- 可用加载/存储指令批量传输数据,提高数据传输效率。
- 可在一条指令集中同时完成移位和逻辑处理。
- 循环处理中使用地址自动增减提高效率。
嵌入式系统中存储设备的分类(RAM、SRAM、DRAM 、FLASH)及其特点
- RAM:内存。断电丢。
- SRAM:静态存储器。不刷新,晶体,贵
- DRAM:动态存储器。刷新,电容器,便宜
- FLASH:U盘。非易失型。断点不丢,按整体/扇区擦除,按字节编程,低功耗,小体积,高密度。
NOR FLASH和NAND FLASH的特点
NOR FLASH | NAND FLASH | |
价格 | 昂贵 | 便宜 |
读速度 | 快(直接在芯片中处理) | 慢(取出芯片) |
写速度 | 慢(擦除一个扇区) | 快(擦除速度快) |
芯片容量 | 小 | 大 |
访问方式 | 顺序读写 | 随机访问 |
单元尺寸 | 大 | 小 |
使用寿命 | 100万次 | 10万次 |
处理器与存储器
JTAG接口功能
简易JTAG接口直接烧写嵌入式系统Flash存储器
ARM各版本的特点
- 早期ARM架构:ARM11处理器、ARM9处理器、ARM7处理器
- 32位ARMv7架构:Cortex-A15处理器、Cortex-A9处理器、Cortex-A8处理器、Cortex-A7处理器、Cortex-A5处理器
- 64位ARMv8架构:Cortex-A57处理器、Cortex-A53处理器
ARM7处理器:冯·诺伊曼结构,多数ARMv4架构。首次加入19-bit的Thumb指令集。 32-bitRISC处理器。
ARM9处理器:哈佛架构,ARMv5架构。实验时所用试验箱为ARM9的S3C2410。
ARM11处理器:ARMv6架构。S3C6410处理器
ARM指令和Thumb指令的特点和区别
ARM->Thumb:状态寄存器最低位设置为1
Thumb->ARM:状态寄存器最低为设置为0
区别:
- Thumb没有协处理器指令,64位乘法指令,访问状态寄存器的指令。
- Thumb状态下,单个数据加载/存储指令只能访问寄存器R0-R7Thumb指令的操作结果需放入其中一个操作数寄存器内。
- 实现特定功能,需要给您更多的Thumb指令。
- 系统能只支持Thumb,还需要ARM。
- 编译C时,可以选择编译为Thumb还是ARM。
哈佛总线结构和冯·诺依曼结构各自的特点
- 哈佛总线:指令存储器和数据存储器分开,因此两条独立总线,提高并行处理能力。
- 冯·诺伊曼:指令存储器和数据存储器合并在一起,两者长度相等
大小端模式
- 小端:小小小——小端低(小)地址放低(小)位数据
- 大端:大小小——大端低(小)地址放低(小)位数据
从应用上讲,Linux的主要组成部分( 即Linux的基本操作系统结构)
- 内核
- shell
- 实用工具
- 文件系统
Linux文件系统目录存放的内容
- /bin:存放基本操作指令
- /usr:存放用户文件和应用程序
- /sbin:root用户才可以执行的操作指令
- /dev:外设的镜像文件
- /etc:系统的各种配置文件
- /lib:动态链接共享库
Linux启动时,第一个必须挂载的是根文件系统
正确。BootLoader时系统加电后运行的第一段代码。
MTD的功能
存储管理
基于FLASH的文件系统类型,基于RAM的文件系统类型
“[root@BC root]#”中各符号的含义
Linux常用命令及练习题
ls
- -a 指定目录下所有文件和目录。
- -l 长格式显示。
文件类型(d 目录 l符号连接 b块设备 字符设备)
访问权限(所属用户,同组用户,其他用户)
练习:
-rwx------ :所属者拥有所有权限,其他用户没有。
-rwxrwx—:所属者和同组用户拥有所有权限。
-rwxrwxr–:所属者和同组用户拥有所有权限,其他用户可读。
drwx------:目录文件,所属者拥有所有权限,其他用户没有。
766:所属者可读写执行,其他用户不能执行
734:所属者可读写执行,同组用户可写和执行,其他用户可读。
644:所属者不可执行,其他用户只可读。
633:所属者不可执行,其他用户不可读。
700:所属者拥有所有权限,其他用户没有。
765:所属者拥有所有权限,同组用户不能执行,其他用户不能写。cd
练习
假设当前在/root目录下([root@BC root]),请写出实现以下功能的命令
进入/usr/etc:cd /usr/etc
进入上一级目录:cd …
进入根目录:cd /
进入/home:cd /home
显示当前路径:pwd
- mkdir
练习
假设当前在/root目录下,写出实现以下功能的命令
在/home目录下新建一个目录etc:mkdir /home/etc
在/etc目录下新建一个目录exc1:mkdir /etc/exc1
- cp
cp 原 目标
假设当前目录是/root,请写出实现以下功能的命令
在/home目录下,新建一个子目录mysub,并将/usr/src目录下的所有文件复制到mysub目录下:
mkdir /home/mysub cp /urs/src/* /home/mysub
在/home目录下,新建一个子目录test,并将/usr/test目录下的所有扩展名为.c的文件复制到test目录下。
mkdir /home/test cp /usr/test/ *.c /home/test
其他:略
Vi的模式
- 命令行模式:最初进入的模式
- 底层模式
- 插入模式
GCC的基本用法
gcc [options] [filenames]
- 预处理:gcc -E hello.c -o hello.i
- 编译:gcc -S hello.i -o hello.s
- 汇编:gcc -c hello.s -o hello.o
- 连接:gcc hello.o -o hello
-I 路径选择
GDB本地调试的命令
gcc编译要有 -g 选项
- file :加载可执行文件exec
- list :显示程序第linenum行的周围的源程序
- list :显示函数名为function的函数周围的源程序
- list :显示当前行后面的源程序
- list - :显示当前行前面的源程序
- set listsize n:设置一次显示源代码的行数
- break:进入指定函数时停住。
- break:在指定行号停住
- delete [breakpoints] [range]:
- 删除指定的断点,breakpoints为断点号,range表示断点号的范围(如:2-4)。如果不指定断点号,则表示删除所有的断点。其简写命令为d
- disable断点,disable了断点,gdb不会删除,当还需要时,enable即可
- run ( r ):从程序开始运行程序
- continue ( c ):恢复程序运行,直到程序结束,或是下一个断点到来。
- step (s):单步执行,进入调用的函数的内部
- next (n):单步执行,不会进入调用的函数内部
- finish (f):如果已进入了某函数,而想退出该函数返回到它的调用函数中
- print :查看当前程序的运行数据。为格式。
- quit(q) 退出GDB
基本Makefile结构
Make工具的使用
Makefile变量
Makefile规则
Makefile应用和注意事项
ARM目标板采用的编译器(armv4l-unknown-linux-gcc)
嵌入式Linux开发流程
- 建立宿主机环境
- 配置宿主机
- 建立引导装载程序BootLoader
- 下载别人移植好的Linux操作系统
- 建立根文件系统
- 建立Flash分区
- 开发应用程序
- 烧写内核、根文件系统、应用程序
- 发布产品
串行通信软件的配置和网络配置mount
在进行开发调试,利用Windows上的超级终端和Linux下的minicom充当开发板的*信息输出监视器。这两个软件都是通过串口与开发板相连的,连接时需要配置相应的串口属性
交叉编译
一个平台上生成另一个平台上可以执行的代码
- 宿主机的硬件:
- 并口:烧写BootLoader
- 串口:更新软件
- 网口:更新软件
- 宿主机的软件:
- VMware Workstation
- redhat Linux 9.0
- 软件开发包
- UP-NET ARM2410-Linux 交叉编译工具
minicom和Windows XP超级终端的特点和使用注意事项
相同点:
- 都是串口通信工具
- 充当嵌入式系统的“显示器”
注意:
- Linux只能用minicom
- Windows和虚拟机两者都可用,但启动了minicom就不可以用超级终端,要重启系统。
NFS服务、Samba服务的基本概念和配置方法
NFS服务实现的原理及注意事项
原理:使网上同为Linux或Unix系统的主机共享文件系统。
注意事项:关闭防火墙,主机与客户端在同一ip网段,断掉主机网络。
将宿主机NFS服务所共享的目录/arm2410s挂载到开发板的 /mnt目录命令
mount -t nfs -o nolock 主机IP : / arm2410s /mnt
北林嵌入式系统期末复习重点相关推荐
- 嵌入式系统期末复习重点-西北大学(欧阳老师给的)
第一章 嵌入式系统概论 嵌入式系统的定义 嵌入式系统是以应用为中心,以计算机技术为基础,软件硬件可裁剪,适应应用系统对功能.可靠性.成本.体积.功耗严格要求的专用计算机系统.它具有自主的信息处理能力. ...
- 嵌入式系统期末复习知识点整理(一)
1.嵌入式系统三要素: 2.嵌入式系统是嵌入到对象体系中的.用于执行独立功能的__ 3.实时系统的定义:__,嵌入式实时系统分为: 强实时性:响应时间__级,一般实时:响应时间__级,弱实时:响应时间 ...
- 南邮操作与系统期末复习重点及习题汇总
文章目录 第一章--操作系统概论 多道批处理系统 概念 第三章--进程管理与调度 进程的状态与转换(三态模型) 概念 进程的三种基本状态 创建状态和终止状态 挂起操作 进程控制块 概念 进程描述信息 ...
- 软件测试期末复习重点
1.软件测试的定义以及软件测试的目的/意义. (1)定义: 软件测试就是一个过程或一系列过程,用来确定计算机代码完成了其应该完成的功能,不执行其不该有的操作. 或:软件测试是由"验证(Ver ...
- c语言static. volatile,嵌入式系统C语言重点语法const、volatile、static、堆栈等的意义及用法...
原标题:嵌入式系统C语言重点语法const.volatile.static.堆栈等的意义及用法 在单片机应用中,堆栈是个特殊的存储区,主要功能是暂时存放数据和地址,通常用来保护断点和现场. 要点:堆, ...
- 金融学期末复习重点准备
金融学期末复习重点准备 前言 记一下金融学期末复习重点准备. 主要是把重点点到,刨去了铺垫和逻辑. 我好像想明白为什么我写<<管理学>期末第一次复习>的时候总感觉怪怪的. 我应 ...
- 北邮嵌入式linux开发,北邮嵌入式系统实验报告完整版
北邮嵌入式系统实验报告完整版 北京邮电大学 嵌入式系统实验 实验报告 学院:电子工程学院 专业:电子信息科学与技术 班级:班 学号: 姓名: 2013年11月13日 一.实验目的 1.基本实验 搭建P ...
- 计算机文化基础的重点,计算机文化基础期末复习重点.doc
计算机文化基础期末复习重点 计算机文化基础复习重点~~大家自己打印下来,常看看~~ 来源: HYPERLINK "/GetEntry.do?id=702112705&owner=34 ...
- 大学c语言项目,项目大学C语言程序设计期末复习重点.doc
期末复习课 笔试试卷基本情况 1.单项选择(本题共15个小题,每题2分.30分) 在四个备选答案中选择一个正确的.答案唯一. 2.阅读程序选择运行结果(本题共有8个小题,每个题3分.24分) 考核基本 ...
最新文章
- android 继承ListView实现滑动删除功能.
- c# 建立到数据源的连接 以及获取项目配置文件的属性
- 百度网站打不开了,百度被黑了?最新证实:百度遭黑客劫持,手段类似于12月被劫持的twitter(截图)...
- 轻操作动作休闲单机游戏《狂斩三国2》评测
- 好像博问不能回复了,看似是某个脚本错误阻止了提交。可有此事?
- java jtextfield 居中_有什么办法可以使JFrame的中心居中吗? - java
- Java开发笔记(一百三十)Swing的选择框
- (转)C#Interface简介
- linux 报警级别,linux PMBus总线驱动设计分析
- java7jdk官网下载安装,JDK官方网站下载、安装教程及环境配置,jdk官方网站
- 用eviews做svar模型_SVAR操作步骤Eviews教程分析.ppt
- 微信小程序使用有道翻译接口的方法
- 虚拟机ruc_sched Self-detected stall on cpu{4}(t=60001)
- 【历史上的今天】4 月 27 日:Tumblr 上线;施乐推出了 Star 工作站;第一台安德伍德打字机诞生
- html页面线条走动特效,html5 canvas绘制随机游动线条动画特效
- Flex 学习笔记之一:Flex 简介
- 计算机英语造句简单的,简短的英语情话句子 经典英文简短情话
- linux 通过lvm合并磁盘
- 安徽工业大学计算机学硕,安徽工业大学计算机科学与技术学院几年制
- Atcoder abc257 E