嵌入式系统及其操作系统移植

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
File System Networking
Kernel
Application
Browser / GUI
Application
Java Advanced Interconnect
Windows API
Advanced Networking
Networking Utility Memory Management
创建帐号及密码文件 创建profile文件 创建fstab文件
。。。
THANKS
谢谢!
件件,它之是间嵌的入中式间系层统次(。包括硬、软件
Boot Loader
I/O System系硬统件)抽极象为层重通要过的特组RT定成O部S l分ibr,ar通ies常 包的括上与层硬接件口相与关操的作底系层驱动软件、
系统统进内行核交、互设,备向驱操动作接口、通信协
File SystemHardware AbstracRtiToOn SLaKyeer议Brn:er系信、olBw统息图SsP提,形e&r供并D等界e底根面vic层据、e 的操标Dr硬作准ivTe件系化Cr P浏/IP览S器tack
所有的智能手 机 PAD 小米手环
四旋翼飞机 扫地机器人 机械义肢
Chapter
2
硬件构成及运行原理
2.0
CPU
01
INTERFACE
WORKING PRINCIPLE
03
05
02
04
MEM
DEVICE
2.1 CPU
CPU是一个嵌入式系统的 核心,对系统的性能有很 大的影响。
ARM/MIPS: S3C24xx,STM32,Raspberry Pi
•Skyeye skyeye-1.2-RC8-3.tar.bz2
•toolchain cross-2.95.3.tar.bz2,也可以使用gcc,gdb,glibc,binutils等工具自己编译产生。 •binuils binutils-2.16.tar.gz
•gcc gcc-3.4.4.tar.bz2
每种不同的CPU体系结构都有不同的BootLoader。 启动加载(Boot loading)模式 下载(Downloading)模式
BootLoader 01
02 Kernel
rootFS 03
• 修改Makefile • 设置PATH环境变量,使其可以找到交叉编译工具链 • 设置flash分区 • 。。。
Linux 内核
设备驱动的编写
BLOB 引导程序
嵌入式Linux系统软件平台结构图
Linux内核的组成
虚拟文件系统 逻辑文件系统 硬件驱动程序
内存管理 硬件无关 硬件相关
进程调度
网络 网络协议 硬件驱动程序
进程间通讯
图示符号 子系统 子系统层 依赖关系
用户应用程序(GUI)
QT图形界面的建立
Rootfs 根文件系统
嵌入式系统及其操作系统移植
目录
1
嵌入式系统定义
2
硬件构成及工作原理
3
软件构成
4
移植概述
Chapter
1
嵌入式系统
什么是嵌入式系统?
• 嵌入到特定对象体系中 的专用计算机系统
集成度高 非标准化 接口复杂多样
典型应用 工控
服务 业
PDA
机器 人
飞控 机控 监测
导航终端 Smarthom e 远程呼叫
配置内核产生.config文件 。。。
make menuconfig 。。。 编译内核,生成zImage
。。。
下载zImage到开发板
BootLoader 01
02 Kernel
rootFS 03
• 建立一个目标板的空根目录 • 建立Linux目录树 • 创建linuxrc文件
挂载/etc为ramfs, 并从/mnt/etc下拷贝文件到/etc目录当中 挂载/proc为proc文件系统 挂载/sys为sysfs文件系统 。。。 挂载其他文件系统 。。。 • 相关配置文件的创建

t-linux.diff 作用:修改gcc一处bug
•其他工具 busybox-1.1.3.tar.gz
4.2 移植三部曲
BootLoader 01
02 Kernel
rootFS 03
•BootLoader是系统加电启运行的第一段软件代码,PC机中的引导加载程序由BIOS(其本质就是一段固件 程序)和位于硬盘MBR中的引导程序一起组成。BIOS在完成硬件检测和资源分配后,将硬盘MBR中的引导 程序读到系统的RAM中,然后将控制权交给引导程序。引导程序的主要运行任务就是将内核映象从硬盘上 读到RAM中 然后跳转到内核的入口点去运行,也即开始启动操作系统。
SCSI Driver
Flash Driver
MMU Driver
Cache 统的要Se求ria完l 成对E硬the件rnet
Driver
D的ri直ve接r 操作Driver
Device Drivers
2021/1/27
3.2嵌入式操作系统的演变
Application Kernel
10%*
Application
MCU: AT89xx,STC89xx FPGA: Cyclone
DSP: EPM7128
运算器
控制器 CPU 寄存器
数据总线 地址总线
ROM
RAM
2.2 MEM
RAM: SRAM,DRAM
ROM: EPROM,EEPROM
FLASH: Nor FLASH,Nand FLASH
运算器
控制器 CPU 寄存器
流程是解释任务的;
程序(高级语言)是解释 流程的;
指令是解释程序的;
微程序是解释指令的; 而门电路直接反映了微程序的意志。
2.5.3 接口技术/三总线的应用
这是一个8086利用3-8译码器控制DA芯片输出特定波形的系统。从图中可以看出,74LS138对 于8086来说,端口地址是C0H~C3H(地址线)。
控制线IO/M参与地址译码,地址线A0,A1悬空,导致 地址复用。(C0H~C3H都对应74LS138)
将74LS138的地址改为C0H
A1 A0
Chapter
3
软件构成
嵌入式应用程序运行于操作系统之上,利用操作系统提供的机制完
3.1 嵌入式系统结构成特定功能的嵌入式应用,不同的系统需要设计不同的嵌入式应用
免费,实时性 好,方便移植
双内核改进方案
Red-Linux KURT
MV-Linux
RTAI-Linux
RT-Linux
开源 免费 支持剪裁
用户应用程序(GUI)
QT图形界面的建立
Rootfs 根文件系统
JFFS2,YAFFS,TMPFS
Linux 内核
设备驱动的编写
BLOB 引导程序
嵌入式Linux系统软件平台结构图
运算器
控制器 CPU 寄存器
数据总线 地址总线
ROM
RAM
SRAM接口电路 ——IS61LV25616
➢ 容量:512K字节; ➢ 数据宽度:16位; ➢ 工作电压:3.3V;
IS61LV25616
2.4 DEVICE
传感器是直接与物理世界接触的感知器件,连接了片内数字世界与外部的 物理世界。是嵌入式系统的“感官”。
3.4主流嵌入式操作系统
价格较贵,实 时性一般
嵌入式操作系统的选择
价格昂贵,实 时性好
免费,实时性较差
性能稳定,硬件
需求小 ,可剪裁 免费,实时性 好,过于简单
WinCE
Vxworks
价格较贵,实时性 好,不方便移植
单内核改进方案
Linux
µ C/OS-Ⅱ
进行实时性改进
不免费,实时性 好,方便移植
3.3嵌入式操作系统分类
➢ 从应用领域来分 实时嵌入式操作系统的种类繁多,大体上可分为两种:
面向信息家电的嵌入商式用型操和作免系费型统。
面向智能手机的嵌入式操作系统,如SymbianOS、MS 操作系M统 ob的 ile分O类 S、:P按al实 ml时 O商S性用、分 型E的m实b时e操dd作e系d统L功in能u稳 x等定、可靠,有完善的技术支持
和售后服务,但往往价格昂贵。
按实➢时从性 面面的 实向向强汽工时弱车业性分电控的类子制:角的的度嵌嵌来入入目、式式分前Pa商l操操m用作作O型S、系系的O操S统统-作9、系L统yn主xO要S、有QVNxXW、orLkYsN、X等Wi;ndows CE 、Psos
Ø 强 机(床硬)); 实 实N时u时系c…l统 嵌ea…, 入r、其 式…O系 操.S统作E响 、系应 D统F 且e时优:l提t间 a点具供O在:了 S有毫 功 、如强秒 能各图实或 稳形 种时微 定用IT特、 秒户R点可 级 O界靠 N,( 面,O数 如和有 S控 网 V等完 x络W。善支o的持rk技等s术 、高支Q端持 N嵌X和入、售式后系服统务要,求而的
从嵌入式系统的商业模式来分类 Ø 一 , 询般 其 )➢实 实 。时 时 非系 性实统 的要 , 时求 其 嵌比 系 入强 统 式实 响操时 应作系 时系许 F统 间缺统多要 在点:高差 毫:级 一一 秒 价功般些 - 格能只( 几 昂; 具电 秒 贵有且 子 的弱源 菜 数代 实谱 量码的 级 时封查 上 特闭点性,,如这W大i大nC限E制、了版开发者的积
数据总线 地址总线
ROM
RAM
寄存器
高速缓存 SRAM
主存储器 DRAM
本地存储器 Flash、 ROM、磁盘
网络存储器 Flash、 ROM、磁盘
0

钟 周
1—10

50—100
20000000
2.3 INTERFACE/BUS
BUS三总线解构: Dbus:数据总线 Abus:地址总线 Cbus:控制总线
•glibc glibc-2.3.5.tar.gz glibc-linuxthreads-2.3.5.tar.gz
•gdb gdb-5.2.tar.bz2
•u-boot u-boot1.1.4.tar.bz2 •Batch(补丁)

ioperm.c.diff 作用:打修正ioperm()函数

flow.c.diff 作用:该补丁用于产生crti.o和crtn.o文件
程序。它是整个系统功能中的间体件现位,于系操统作的系能统力和总应是用通软过件应之用间程,序表
现出来。一个嵌入式系统屏可蔽简了单各的种没操有作支系撑统软提件供,不甚同至应没用有程操序作系
统,但却不能没有应用软接件口,的否事则实它,就向不应能用成程为序一提个供系统统一。的接
Hardw口也ar,使e I从应nd而用ep便程en于序支de有是用具持nt时一户有嵌S也o个开跨入ft叫介发平w式a板于应台系re级硬用的统支件程特应持与序性用包软,。的,同操时作系统软
Ø 弱 程(机软械)) 实 本商时众系 用统 多型, 的:其 嵌功系 入统能式响L稳i应n极定u时x性间 、、。约P可a为l靠m数O,十S秒 有等或。完更善长的(工技术支持和售后服
1
务,开发费用+版税。
开源型:开放源码,只收服务费,没有版税。 如 Embedded linux,RTEMS,eCOS。 1
BootLoade r
Vivi
Uboot
Redboot
Blob
支持串口下 载功能,代
码量小
支持串口,网 络下载功能,
代码量大
支持串口,网 络下载功能, 代码量最大
支持串口, 网络下载功 能,代码量

用户应用程Fra Baidu bibliotek(GUI)
QT图形界面的建立
Rootfs 根文件系统
JFFS2,YAFFS,TMPFS
地磁传感器
温度传感器
湿度度传感器 加速度传感器
2.5运行原理
2.5.1 cpu内部运行原理
注意: (1)这幅图使用于 CISC解构的冯·洛伊 曼机。 (2)此时的程序是 编译后的机器码,可 以理解为汇编指令。 (3)微程序控制方 式
2.5.2 微程序控制的指令运行
微程序是计算机里 面的“第一推动力”。
JFFS2,YAFFS,TMPFS
Linux 内核
设备驱动的编写
BLOB 引导程序
嵌入式Linux系统软件平台结构图
ARM上Linux的文件系统设计
根文件系统:CRAMFS 用户文件系统:YAFFS 临时文件系统:Ramfs
Chapter
4
移植概述
4.1准备阶段
•linux kernel linux-2.6.14.1.tar.gz
Distributed Objects Fault Tolerance
90%*
Multiprocessing 75%* Multiprocessing
30%*
File System Networking
File System Networking
Kernel
Kernel
*Percent of total software supplied by RTOS vendor in a typical embedded device
相关文档
最新文档