[课程描述]
    详细介绍嵌入式开发流程、交叉编译环境搭建与开发工具的使用、Bootloader的原理与配置、嵌入式Linux内核的移植与根文件系统构建、高级应用编程开发技巧、嵌入式数据库系统构建与应用编程、嵌入式图形系统构建与应用编程,并通过大量实例演示使学员快速掌握嵌入式Linux开发流程及与应用相关的编程方法和技巧。
[质量保证]
  ·所有课程内容均可免费重听,直到学员完全掌握为止。
  ·凡是亚嵌学员,在以后工作中遇到课程相关问题,可得到免费技术支持。
  ·雄厚的师资力量、经典的课程体系、丰富的教学经验确保教学质量。
  ·成绩优秀的学员可优先推荐到亚嵌合作单位实习、就业。
[培养对象]
  有志从事嵌入式Linux开发的工程技术人员、本科二年级以上相关专业的在校大学生;
  有兴趣深入了解嵌入式Linux开发的技术爱好者、以及从事ARM相关工作的技术人员。
[行业需求]
  工业控制,军工企事业,电信/网络/通讯,航空航天,汽车电子行业,医疗仪器,仪器仪表与电子。
[基础要求]
  熟练掌握C语言编程。
[课程教材]
  《亚嵌嵌入式Linux应用实验班讲义》、《亚嵌嵌入式Linux应用实验班指导书》
[教学环境]
  ARM6410 (人手一块)
 
[推荐教材]
  《源码开放的嵌入式系统软件分析与实践》.陈渝、李明、杨晔. 北京航空航天大学出版社.2004年9月.
  《ARM嵌入式MiniGUI初步与应用开发范例》.周立功等. 北京航空航天大学出版社.2005年12月.
[教师简介]
    康烁老师,清华大学硕士,亚嵌高级讲师,SkyEye嵌入式开源项目核心开发成员,7年嵌入式系统开发经验,4年嵌入式行业教学经验。精通嵌入式系统移植、驱动开发,对Linux操作系统、网络、电源管理有深入的研究。曾任ADI嵌入式系统高级研发工程师,主要负责Blackfin平台上的Linux系统移植。
[开课情况]
  开课时间: 2011年09月25日 4天 (24学时)
  上课地点: 中科院校区
  学    费: 2008元(优惠)
             为保证教学质量,本班为小班授课,15人为满,报满15人即停止报名或顺延下一期,如您决定上课请
  及时填写报名表并办理报名手续。(报名时需携带本人身份证复印件1张及本人一寸照片3张)
   课程安排 课程内容
第一天上午
理论课
3学时
交叉编译工具介绍与Bootloader启动代码分析
      1 嵌入式Linux综述
          Linux的由来及现状、嵌入式操作系统分类
          嵌入式linux的典型应用及分类
          RTLinux、ARMlinux、 uClinux
          嵌入式开发的硬件平台:ARM、PPC、MIPS、X86 体系结构
      2 嵌入式Linux开发基本概念
          启动代码、 内核代码、根文件系统
          驱动程序、 设备文件、文件系统
      3 嵌入式Linux开发工具介绍
          嵌入式Linux开发环境搭建
          交叉编译器的使用和安装
          嵌入式Linux开发中的常用工具
          嵌入式开发的调试环境:Jtag、KGDB、SkyEye模拟器等
      4 分析各种典型的bootloader(uboot、armboot、redboot)
          常用的几种bootloader介绍(uboot、armboot、redboot)
          Bootloader的基本启动流程和架构开发注意事项
          嵌入式Linux系统的内存地址分配和内核加载
          开发实例分析 u-Boot 的架构、命令用法及其扩展
第一天下午
实验课
3学时
实验一:嵌入式linux开发环境建立
  实验目的:掌握交叉编译环境的建立;掌握内核的交叉编译;掌握redboot的操作
  实验要求:要求完成内核编译,上载,运行,直到hello world程序在目标板上运行成功
  实验内容:在S3C2410开发板上运行Linux。
第二天上午
理论课
3学时
嵌入式Linux移植与根文件系统
      1 Linux 与 uClinux 的目录结构
          Linux的目录分布
          移植Linux需要做的修改
          uClinux的目录分布
          uClinux不同的编译选项
      2 内核编译和配置
          内核菜单选项
          内核编译选项
          内核的裁减
      3 构建根文件系统
          Busybox编译
          最小文件系统搭建
          常用的几种文件系统格式
          根文件系统常用文件分析
          Linux的启动文件
          Linux的分区加载
          构建动态库的文件系统
第二天下午
实验课
3学时
实验二:根文件系统的建立
  实验目的:掌握根文件系统的建立。掌握静态编译,动态编译应用程序
  实验要求:要求独立完成根文件系统的建立,编写一个hello world程序在S3C2410
            上运行,并比较动态编译与静态编译的不同。
  实验内容:在S3C2410上运行hello world程序。
第三天上午
理论课
3学时
嵌入式图形系统的构架与开发
      1 嵌入式图形概况
      2 QT的配置和安装
      3 QT的编程
第三天下午
实验课
3学时
实验三:基于S3C2410的QT实验
  实验目的:掌握QT应用程序的编译和运行,理解QT在开发板上的移植
  实验要求:要求独立编译QT库、资源和应用程序,并通过根文件系统的方式
            在目标板上成功运行hello world程序或其他实例程序
  实验内容:在S3C2410开发板上运行QT应用程序
第四天上午
理论课
3学时
嵌入式数据库系统的构建与开发
      1 嵌入式图数据库的构架
      2 嵌入式图数据库的移植
      3 嵌入式图数据库的编程
嵌入式Linux开发与调试方法
第四天下午
实验课
3学时
实验四:基于S3C2410的sqlite实验
  实验目的:掌握sqlite应用程序的编译和运行,在开发板上的运行
  实验要求:要求交叉编译sqlite,并通过测试程序静态连接sqlite库,并通过根文
            件系统的方式在目标板上成功运行hello world程序
  实验内容:在ARM9 S3C2410开发板上运行sqlite应用程序