主办单位:中国电子标准协会http://www.ways.org.cn
课程大纲:
第一天 嵌入式Linux基础
1. 嵌入式Linux概念
1) 硬件构架
2) 嵌入式Linux与普通Linux
3) 嵌入式Linux的基本结构
4) 交叉编译环境
5) 嵌入式Linux的发行版
2. 内核与驱动
1) Linux内核的基本构成
2) 内核设计原理与特点
3) Linux内核的调度器设计与中断处理
4) 内核模块
5) Linux系统里的三大驱动:字符设备、块设备、网络设备
6) 驱动框架
7) 驱动模型
3. 嵌入式Linux移植
1) Linux系统的基本启动过程
2) 启动代码(Grub或是Uboot)
3) uBoot移植
4) 内核移植
5) 组织根文件系统
6) 驱动移植
7) 源代码移植与处理
4. 部署Linux系统
1) 内核编译
2) 交叉编译环境
3) 编译系统
4) 库文件选择
5) 构建自己的嵌入式Linux系统
6) 嵌入式Linux系统的包管理
7) 嵌入式Linux系统的可升级方案设计
8) 使用QEMU部署Linux开发系统
第二天 (Linux上的系统工程)
5. 基于开源软件的工作流
1) 开源软件的开发模型
2) 版本管理(svn和git)
3) 代码Review
4) 项目管理
5) 软件质量跟踪
6) 测试与自动化测试
6. 嵌入式Linux上的软件工程
1) Linux内核在嵌入式设备上的优缺点
2) 需求分析上的特殊性
3) 系统整体设计
4) 详细设计
5) 系统实现的多重选择
6) “Zero Coding”
7) 测试上的复杂性
8) 嵌入式的特殊需求
9) 可移植性控制
10) 强化可靠性设计
7. 嵌入式Linux系统构建实例
1) 系统功能性分析
2) 可拓展性设计
3) 硬件设计
4) 开发平台的搭建
5) 项目规划
6) 组件设计
7) 实现
8) 可靠性设计
9) 性能或是后期调整
8. 嵌入式Linux上的功能性设计
1) 嵌入式上的UI交互
2) Web对嵌入式系统设计的影响
3) Web服务上的选择
4) 编程语言与框架
5) 嵌入式上的数据库环境:mysql or sqlite
6) 通过Web Service简化交互
第三天 (Linux编程)
9. 进程
1) 进程的概念
2) 进程控制
3) 进程原理
4) 进程相关的系统调用
5) 守护进程
6) 进程间通讯
7) 多进程实现上的优缺点
10. 线程
1) 线程概念
2) 线程同步
3) pthread tls
4) pthread key
5) linux里的线程实现特征
6) 进程与线程的取舍
11. 系统调用
1) 文件相关的系统调用
2) 阻塞与非阻塞
3) ioctl、fcntl
4) 取得系统状态
5) 时间操作
6) 内存操作
7) 权限
12. 网络编程
1) C/S构架
2) socket
3) TCP与UDP
4) 实现客户端
5) 实现服务器
6) C++版本
7) 本地Socket
8) 多进程式的服务器
9) 多线程服务器
第四天 (优化、调试、测试)
13. 网络深入
1) 多进程响应
2) 多线程设计
3) 线程池
4) 编译优化与SMP优化
5) select与C10K问题
6) socket属性
7) xinetd
8) ZeroConf
14. 调试与优化
1) gdb
2) 基本的性能分析手段
3) oprofile
4) perf
5) 内存分析
6) valgrind
7) prelink
8) 优化
15. 嵌入式平台上的测试
1) 代码级集成测试
2) C语言里的集成测试
3) PHP环境里的集成测试
4) 集成测试与自动化测试
5) 构建系统级测试环境
6) 系统级的自动化测试
7) 纯软件与软硬结合测试
8) 测试与质量控制
文章评论(0条评论)
登录后参与讨论