持续更新······

注:以下内容为博主期末复习所用,全打字输入,可能有误。内容为便于记忆,可能会有省略和简化。如有错误欢迎评论区更正

选择填空判断

嵌入式系统的定义和特点

  • 定义:以应用为中心,计算机技术为基础,软硬件高度定制,适用于对功能、能耗、成本、体积、可靠性有严格要求的专用计算机系统
  • 特点:
    • 专用性
    • 可靠性
    • 实时性
    • 低功耗
    • 可裁剪

嵌入式系统的组成结构、存储设备的分类

  • 结构:
嵌入式应用软件
嵌入式操作系统
嵌入式处理器(嵌入式系统核心) 嵌入式外围设备
  • 嵌入式处理器分类:

    • 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. 单元或模块测试
  2. 集成测试
  3. 外部功能测试
  4. 回归测试
  5. 系统测试
  6. 验收测试
  7. 安装测试
    记忆:嵌入式软件的测试阶段有:单块(1)炸鸡(集),外公(3)回(4)去(系 5),验收(6)安装(7)
测试策略
  1. 单元测试——主机环境上进行
  2. 集成测试——主机环境上进行
  3. 系统测试和确认测试——目标环境上进行

嵌入式系统的应用

共享单车、电动牙刷、手机、智能手环、智能手表等

Flash的分类

NOR Flash
NAND Flash

嵌入式系统与通用计算机系统的区别

什么是ARM

Advanced RISC Machines。微处理器行业知名企业,设计RISC(精简指令集)处理器,不生产。
实验箱所用:ARM9(S3C2410处理器)

典型的嵌入式操作系统的类型和特点

  • 类型

    • 响应时间:实时操作系统、非实时操作系统
    • 系统类型:商用系统、专用系统、开源系统
    • 软件结构:单体结构、分层结构、微内核结构
  • embedded linux 特点:
    • 开放源码,免费使用
    • 对 Linux 进行了剪裁,内核小,可以固化到几百kB 的存储器中
    • 功能强大,API丰富,易于定制
    • 支持绝大多数处理器和其他硬件
    • 完善的网络通信和文件管理策略
    • 开发资源丰富

核心板

----最小系统组成的电路开发板成为核心板

  • 微处理器单元
  • 存储单元
    • SDRAM
    • Flash(存储程序)
  • 接口单元
    • UART接口电路(与外界通信)
    • JATAG调试接口(系统软件的下载和烧写)

微处理器的重要指标

  1. 主频、外频、倍频
    主频 = 外频 * 倍频
    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
区别:

  1. Thumb没有协处理器指令,64位乘法指令,访问状态寄存器的指令。
  2. Thumb状态下,单个数据加载/存储指令只能访问寄存器R0-R7Thumb指令的操作结果需放入其中一个操作数寄存器内。
  3. 实现特定功能,需要给您更多的Thumb指令。
  4. 系统能只支持Thumb,还需要ARM。
  5. 编译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开发流程

  1. 建立宿主机环境
  2. 配置宿主机
  3. 建立引导装载程序BootLoader
  4. 下载别人移植好的Linux操作系统
  5. 建立根文件系统
  6. 建立Flash分区
  7. 开发应用程序
  8. 烧写内核、根文件系统、应用程序
  9. 发布产品

串行通信软件的配置和网络配置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. 嵌入式系统期末复习知识点整理(一)

    1.嵌入式系统三要素: 2.嵌入式系统是嵌入到对象体系中的.用于执行独立功能的__ 3.实时系统的定义:__,嵌入式实时系统分为: 强实时性:响应时间__级,一般实时:响应时间__级,弱实时:响应时间 ...

  3. 南邮操作与系统期末复习重点及习题汇总

    文章目录 第一章--操作系统概论 多道批处理系统 概念 第三章--进程管理与调度 进程的状态与转换(三态模型) 概念 进程的三种基本状态 创建状态和终止状态 挂起操作 进程控制块 概念 进程描述信息 ...

  4. 软件测试期末复习重点

    1.软件测试的定义以及软件测试的目的/意义. (1)定义: 软件测试就是一个过程或一系列过程,用来确定计算机代码完成了其应该完成的功能,不执行其不该有的操作. 或:软件测试是由"验证(Ver ...

  5. c语言static. volatile,嵌入式系统C语言重点语法const、volatile、static、堆栈等的意义及用法...

    原标题:嵌入式系统C语言重点语法const.volatile.static.堆栈等的意义及用法 在单片机应用中,堆栈是个特殊的存储区,主要功能是暂时存放数据和地址,通常用来保护断点和现场. 要点:堆, ...

  6. 金融学期末复习重点准备

    金融学期末复习重点准备 前言 记一下金融学期末复习重点准备. 主要是把重点点到,刨去了铺垫和逻辑. 我好像想明白为什么我写<<管理学>期末第一次复习>的时候总感觉怪怪的. 我应 ...

  7. 北邮嵌入式linux开发,北邮嵌入式系统实验报告完整版

    北邮嵌入式系统实验报告完整版 北京邮电大学 嵌入式系统实验 实验报告 学院:电子工程学院 专业:电子信息科学与技术 班级:班 学号: 姓名: 2013年11月13日 一.实验目的 1.基本实验 搭建P ...

  8. 计算机文化基础的重点,计算机文化基础期末复习重点.doc

    计算机文化基础期末复习重点 计算机文化基础复习重点~~大家自己打印下来,常看看~~ 来源: HYPERLINK "/GetEntry.do?id=702112705&owner=34 ...

  9. 大学c语言项目,项目大学C语言程序设计期末复习重点.doc

    期末复习课 笔试试卷基本情况 1.单项选择(本题共15个小题,每题2分.30分) 在四个备选答案中选择一个正确的.答案唯一. 2.阅读程序选择运行结果(本题共有8个小题,每个题3分.24分) 考核基本 ...

最新文章

  1. android 继承ListView实现滑动删除功能.
  2. c# 建立到数据源的连接 以及获取项目配置文件的属性
  3. 百度网站打不开了,百度被黑了?最新证实:百度遭黑客劫持,手段类似于12月被劫持的twitter(截图)...
  4. 轻操作动作休闲单机游戏《狂斩三国2》评测
  5. 好像博问不能回复了,看似是某个脚本错误阻止了提交。可有此事?
  6. java jtextfield 居中_有什么办法可以使JFrame的中心居中吗? - java
  7. Java开发笔记(一百三十)Swing的选择框
  8. (转)C#Interface简介
  9. linux 报警级别,linux PMBus总线驱动设计分析
  10. java7jdk官网下载安装,JDK官方网站下载、安装教程及环境配置,jdk官方网站
  11. 用eviews做svar模型_SVAR操作步骤Eviews教程分析.ppt
  12. 微信小程序使用有道翻译接口的方法
  13. 虚拟机ruc_sched Self-detected stall on cpu{4}(t=60001)
  14. 【历史上的今天】4 月 27 日:Tumblr 上线;施乐推出了 Star 工作站;第一台安德伍德打字机诞生
  15. html页面线条走动特效,html5 canvas绘制随机游动线条动画特效
  16. Flex 学习笔记之一:Flex 简介
  17. 计算机英语造句简单的,简短的英语情话句子 经典英文简短情话
  18. linux 通过lvm合并磁盘
  19. 安徽工业大学计算机学硕,安徽工业大学计算机科学与技术学院几年制
  20. Atcoder abc257 E

热门文章

  1. 支付宝支付,当面付二维码支付
  2. P21图像边缘发现(锐化):二阶导
  3. 肖像转素描:AI小素的前世今生
  4. openGL应用复杂度评价
  5. 分享几个我常用的私活接单渠道
  6. 垃圾分类,一场输不起的世界大战--20190711
  7. char与varchar的区别?
  8. 【PATB1041】考试座位号(题解+拓展)
  9. 30张地图看懂世界格局,用大数据说话
  10. python获取指定端口流量_python如何查看系统网络流量的信息