曙海教育集团
上海:021-51875830 北京:010-51292078
西安:029-86699670 南京:4008699035
成都:4008699035 武汉:027-50767718
广州:4008699035 深圳:4008699035
沈阳:024-31298103 石家庄:4008699035☆
全国统一报名免费电话:4008699035 微信:shuhaipeixun或15921673576 QQ:1299983702
首页 课程表 报名 在线聊 讲师 品牌 QQ聊 活动 就业
   课程目标        Linux应用开发班

        课程特色:理论和实战相结合,突出实战技巧,让学员在动手实验中学到知识,详细讲解嵌入式Linux环境的搭建和在环境下进行程序开发的过程。掌握Linux下网络、QT、数据库的开发技能。
        课程目标包括:
        a)掌握嵌入式Linux环境的搭建,学会操作Linux系统
        b)掌握嵌入式Linux环境下进行程序开发的过程。
        c)了解嵌入式Linux进程的概念以及进程间通信知识
        d)掌握编写Linux应用程序(包括网络、QT、数据库)的技巧。

   培养对象

        有意向掌握在Linux系统环境下开发应用程序的人。

   入学要求
        ★有C语言基础
        ★了解Linux基本操作
   班级规模及教学环境

        为严控教学质量,让学员有充分的提问机会,我们坚持超级小班教学,每个班级的人数限定为5人,多余人员安排到下一期。人手一套开发板和实验用的PC主机。 

   上课时间和地点

             上课地点:【上海】:同济大学(沪西)/新城金郡商务楼(11号线白银路站) 【深圳分部】:电影大厦(地铁一号线大剧院站)/深圳大学成教院 【北京分部】:北京中山学院/福鑫大楼 【南京分部】:金港大厦(和燕路) 【武汉分部】:佳源大厦(高新二路) 【成都分部】:领馆区1号(中和大道) 【沈阳分部】:沈阳理工大学/六宅臻品 【郑州分部】:郑州大学/锦华大厦 【石家庄分部】:河北科技大学/瑞景大厦 【广州分部】:广粮大厦 【西安分部】:协同大厦
             最近开课时间(周末班/连续班/晚班):
Linux应用开发:2020年3月16日

    本课程每期班限额5名,报满即停止报名,请提前在线或电话预约

   课时
        时间:请咨询在线客服
☆注重质量 ☆边讲边练
        ☆合格学员免费推荐工作
        ★实验设备请点击这儿查看★
   最新优惠
       ◆团体报名优惠政策:两人95折优惠,三人或三人以上9折优惠 。注意:在读学生凭学生证,即使一个人也优惠500元。
  教学质量保障

        1、学习中如有部分授课内容理解不透或消化不好,可免费在下期培训班中重听;
        2、培训结束后,授课老师留给学员联系方式,保障培训效果,免费提供课后技术支持。
        3、合格学员可免费享受推荐就业的机会。

   师资团队
【孟 斌】

金牌讲师,具有十多年嵌入式技术从业经验,对于嵌入式Linux的实现和应用有深入研究,主持开发过多个大型嵌入式项目,涉及网络,通讯,控制,信息终端等各行各业,例如基于cdma的车载监控防盗与快速响应系统、主持天长市塑料机械公司的“圆织机控制器”嵌入式软件开发。发表过文章: 1.《汽车无线视频传输系统的设计与实现》2005年数字安徽博士论坛,已发表。第一作者。 2.《基于Video4Linux的USB摄像头图像采集实现》在X86/ARM/XSCALE/PowerPC/MIPS等各种体系结构平台上移植Linux内核;对于嵌入式Linux的实时性和uCLinux的特点有深入研究。

【赵老师】

具有丰富的嵌入式Linux系统、应用软件开发经验,资深开发工程师、项目经理。一直致力于嵌入式Linux开发和研究,精通Unix/Linux操作系统和Linux下C/C++语言编程,擅长QT,Android的开发。熟悉Linux的各种应用编程接口和机制,熟悉Linux内核,精通嵌入式Linux下的驱动开发和系统移植。
精通嵌入式Linux应用程序开发方法和系统集成,具有丰富的产品开发经验,成功支持多个客户产品进入量产,涉及网络,视频处理,控制和消费类电子等行业。开发过大型家庭智能监控系统,多款手持POS机等。

【刘金杰】

同济大学教授,熟悉包括嵌入式Linux在内的多种嵌入式操作系统,熟悉ARM体系结构,主讲实时操作系统,嵌入式系统,嵌入式Linux等课程。

更多师资力量请见端海师资团队

   教学进度安排
课程大纲

第一阶段

目标:掌握嵌入式Linux的开发流程,掌握诸如tftp、nfs等Linux下服务器的配置方法。

1.Linux的发展历史
2.Linux的发展前景
3.LINUX快速入门和基本命令
4 嵌入式Linux开发工具和环境

      4.1 搭建嵌入式LINUX开发环境
      4.2 嵌入式开发平台详解
      4.3 嵌入式LINUX开发工具(编辑器,Make,GNU等)
      4.4 LINUX下的调试技巧
      4.5 MAKE工程管理器
      4.6 交叉编译

【实践部分】
      1.练习LINUX系统常用命令
      2.学会配置TFTP服务
      3.学会配置NFS服务
      4.掌握嵌入式开发环境建立的方法
      5.烧写Linux内核到开发板
      6.下载根文件系统
      7.Make工具的使用
      8.编写第一个应用程序,学习应用程序下载开发板上的方法

第二阶段

目标:掌握Linux系统中的进程的概念,从内核的角度了解进程的原理和实现。掌握Linux下进程,了解Linux下几种进程间通讯的方法,掌握编写进程间通讯编程的方法。

5 嵌入式LINUX进程及进程间通讯


      5.1 进程的属性和状态,pid及其生成,信用状,文件系统用户标识符
      5.2 进程的控制和调度,建立使用限制
      5.3 进程的创建、执行、消亡
      5.4 进程的管理
      5.5 进程的相关系统调用
      5.6 进程运行
      5.7 守护进程,进程组
      5.8 进程间通信基本概念
      5.9 管道(PIPE)
      5.10 信号(SIGNAL)
      5.11 内存映射(MAPPED MEMORY)
      5.12 消息队列(MESSAGE QUEUE)
      5.13 信号量(SEMAPHORE)
      5.14 共享内存(SHARE MEMORY)

【实践部分】
      1.练习用PROC文件系统查看进程信息
      2.练习用PS命令查看进程信息
      3.练习使用文件操作命令
      4.掌握系统调用实例
      5.练习嵌入式Linux典型命令的使用

第三阶段

教学目标:了解网络的基础知识,了解Linux下的网络结构和套接字编程,掌握Linux下网络程序开发技巧。

6 嵌入式Linux下的网络开发


      6.1 ISO/OSI七层协议模型与IP网络四层模式
      6.2 TCP/IP协议簇
      6.3 基于嵌入式LINUX的TCP/IP网络结构
      6.4 基于嵌入式LINUX的SOCKET编程
      6.5 UDP与TCP的区别
      6.6 UDP开发要点

【实践部分】

      1、SOCKET套接字编程

      2、分析并加强PING使用

第四阶段

教学目标:掌握QT程序设计技巧。掌握嵌入式数据库的配置与开发。

7 嵌入式GUI
开发
      7.1 嵌入式LINUX GUI介绍及QT介绍

      7.2 QT介绍及其信号插槽机制

      7.3 QT图形界面编程技术

      7.4 QT开发要点

      7.5 QT在实际开发中具体应用

【实践部分】

      1、基于QT实现HELLO WORLD对话框程序

      2、建立嵌入式开发环境

第五阶段
8.嵌入式GUI与数据库开发
目标:通过今天课程的学习,学员能够了解嵌入式Linux下的几种常见GUI及其特点,重点能掌握QT的有关内容,具备QT程序设计能力。了解嵌入式数据库的配置与开发。
?? 8.1?嵌入式LINUX GUI介绍及QT/MINIGUI之间比较
?? 8.2?QT介绍及其信号插槽机制
?? 8.3?QT图形界面编程技术
?? 8.4?QVFB虚拟帧缓存的建立和模拟开发调试
?? 8.5?QT程序移植技术
?? 8.6?QT在实际项目中具体应用
?? 8.7?嵌入式数据库的概念
?? 8.8?嵌入式数据库的移植与编程
实验:
?? 1、基于QT实现HELLO WORLD对话框程序
?? 2、建立主机虚拟帧缓存实验
?? 3、基于QT图形界面的温度计的实现
第六阶段

9 综合实践

     9.1 基于QT实现HELLO WORLD对话框程序

     9.2 建立嵌入式开发环境

     9.3 编写按键程序

     9.4 编写LCD背光控制程序

     9.5 编写LED控制程序

10.综合项目实践“基于QT的网络通信系统”
目标:经过前前面的学习,学员基本上掌握了嵌入式linux常用的应用编程方法,现在通过一个综合项目案例巩固、加深前面的知识,并使学员了解嵌入式Linux项目开发流程。

?? 10.1?项目实现的功能
?????? 10.1.1?QT界面设计
?????? 10.1.2?网络消息传输功能
?????? 10.1.3?网络文件传输功能
?????? 10.1.4?系统管理功能
?? 10.2?项目涉及到的技术
?????? 10.2.1?项目流程及项目管理方法
?????? 10.2.2?QT界面开发
?????? 10.2.3?QT多线程
?????? 10.2.4?QT网络编程
?????? 10.2.5?Linux文件操作
?????? 10.2.6?Qt移植(软件移植到FS_S5PC100开发平台)
?????? 10.2.7?程序优化、测试(包括:内存泄漏、系统调用跟踪、函数执行时间及频率检测、core dump处理等)