Embedded Linux Systems Development
description
Transcript of Embedded Linux Systems Development
Embedded Linux Systems Development
Website for : http://code.google.com/p/s3c6410-conferencing/downloads
/list
Agenda
1. Linux Introduction2. E.Linux Introduction3. E.Linux Development process
Introduction
Agenda
1. Linux Introduction2. E.Linux Introduction3. E.Linux Development process
Introduction
1. Linux Introduction
1. Linux Introduction Linux 的产生和发展
UNIX 操作系统 MINIX 操作系统 GNU 计划 POSIX 标准 Internet 网络
1. Linux Introduction Distribution 的选择
某个发行商的 自己完成: LFS :( Linux From Scratch )
http://www.linuxfromscratch.org/lfs/
1. Linux Introduction Linux 的版本
内核版本 Distribution / 发行商版本
1. Linux Introduction Linux 的构成
Linux ShellSystem calls
Linux KernelDevice drivers
Hardware
Linux Application
1. Linux Introduction Linux 的构成
1. Linux Introduction1. Linux 的构成
1. Linux Introduction
1. Linux Introduction Linux 的特点
Open source and free under GPL(General Public License)
Monolithic kernel Preemptive kernel supporting for modules Kernel thread Filesystem and Multi filesystems support
Agenda
1. Linux Introduction2. E.Linux Introduction3. E.Linux Development process
Introduction
2. E.Linux Introduction E.Linux 的概念
From BELS : An embedded Linux system simply designates an embedded system based on the Linux kernel and does not imply the use of any specific library or user tools with this kernel.
2. E.Linux Introduction E.Linux 的概念
From Wiki : Embedded Linux is the use of a Linux operating system in embedded computer systems such as mobile phones, personal digital assistants, media players, set-top boxes, and other consumer electronics devices, networking equipment, machine control, industrial automation, navigation equipment and medical instruments.
2. E.Linux Introduction Linux 之于 ES 的优点
Modern OS (eg. memory management, kernel modules, etc.) Open source and so can be customized as what you can Hardware support : has already been ported to many
different CPU architectures and other H/W
2. E.Linux Introduction Linux 之于 ES 的优点( cont. )
Available tools Community support Industry support Vendor independence Cost Licensing Strong networking support Relatively small for its feature set Huge application base
2. E.Linux Introduction Linux 之于 ES 的劣点
Size : 32bits CPU ,单片机 MMU GPL License Real-time Toolchain
2. E.Linux Introduction 产品举例 1
SAMSUNG GALAXY Tab P7500 Moto 手机 Amazon Kindle
2. E.Linux Introduction 产品举例 2
Skype 电话 网络版硬盘录像机 Koala 嵌入式教学机器人
2. E.Linux Introduction 产品举例 3 : BELS 的 1.2.2 节
2. E.Linux Introduction 产品举例 4 :
2. E.Linux Introduction E.Linux 产品的分类: From BELS : 4 个角度
Size Time constraints Networkability User interaction
2. E.Linux Introduction E.Linux 所支持的硬件: From BELS 的 chap3
Processor Architectures Buses and Interfaces I/O Storage General Purpose Networking Industrial Grade Networking
2. E.Linux Introduction E.Linux 的参与者: Players of the Embedded
Linux Scene Free software and open source community Industry Organizations
2. E.Linux Introduction E.Linux 的参与者 :
Industry Red Hat MontaVista LynuxWorks Timesys IBM Intel HP Oracle Sun 其他消费电子制造商 。。。
2. E.Linux Introduction Cross/ 交叉开发环境
Why ? What is cross ?
2. E.Linux Introduction Cross/ 交叉开发环境
Host :一般是 PC 机 Target
2. E.Linux Introduction Cross/ 交叉开发环境:链接的可能选择:
串口 以太网 JTAG USB Wireless
2. E.Linux Introduction Cross/ 交叉开发环境的过程:
根据需求制作 Target 硬件 设置 Host
2. E.Linux Introduction Cross/ 交叉开发环境
Agenda
1. Linux Introduction2. E.Linux Introduction3. E.Linux Development process
Introduction
3. E.Linux Development process Introduction
流程示范图 Host
环境搭建 Bootloader
移植 Kernel
移植和配置 Root 文件系统 开发 应用程序开发
configuring the storage devices
by
using the cross environment
3. E.Linux Development process Introduction
流程示范图: Ref
3. E.Linux Development process Introduction
Root
File System
3. E.Linux Development process Introduction
3. E.Linux Development process Introduction
3. E.Linux Development process Introduction
Step1 选择系统:
Linux/Unix/ Windows
选择组件和服务 开发 / 调试环境 搭建
3. E.Linux Development process Introduction
Step2 什么是 loader 什么是 Bootloader X86 的启动过程
Ref pdf: write Boot
3. E.Linux Development process Introduction
Step3 移植 配置 编译链接得到 Image
3. E.Linux Development process Introduction
Step4 必要性:
Init 进程 系统运行需要的 module
Why root ?
3. E.Linux Development process Introduction
3. E.Linux Development process Introduction
Step5 Make Gcc
3. E.Linux Development process Introduction
Step5
3. E.Linux Development process Introduction
Step6 利用烧写 / 下载软件 第一个部件的烧写 / 下载 其他部件的烧写 / 下载
3. E.Linux Development process Introduction
总结图
This is the end
Any Questions ?