470 likes | 785 Views
Embedded Linux Systems Development. 交流: fascination.org@163.com Website for : http://code.google.com/p/s3c6410-conferencing/downloads/list. Agenda. 1. Linux Introduction 2. E.Linux Introduction 3. E.Linux Development process Introduction. Agenda. 1. Linux Introduction
E N D
Embedded Linux Systems Development 交流: fascination.org@163.com Website for : http://code.google.com/p/s3c6410-conferencing/downloads/list
Agenda 1. Linux Introduction 2. E.Linux Introduction 3. E.Linux Development process Introduction
Agenda 1. Linux Introduction 2. E.Linux Introduction 3. E.Linux Development process 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 /发行商版本
LinuxApplication LinuxShell System calls Linux Kernel Device drivers Hardware 1. Linux Introduction • Linux的构成
1. Linux Introduction • Linux的构成
Linux Introduction • Linux的构成
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 Introduction 2. E.Linux Introduction 3. 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 Linuxoperating 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 Introduction 2. E.Linux Introduction 3. E.Linux Development process Introduction
Host 环境搭建 Bootloader 移植 configuring the storage devices by using the cross environment Kernel 移植和配置 Root 文件系统 开发 应用程序开发 3. E.Linux Development process Introduction • 流程示范图
3. E.Linux Development process Introduction • 流程示范图:Ref
3. E.Linux Development process Introduction Root File System
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 • Step5 • Make • Gcc
3. E.Linux Development process Introduction • Step6 • 利用烧写/下载软件 • 第一个部件的烧写/下载 • 其他部件的烧写/下载
This is the end Any Questions ?