课程培训
高级嵌入式Linux编程培训课程

嵌入式Linux高级编程培训课程

 

培训大纲

第一部分IO接口高级编程

系统功能调用接口

无缓存方式I/O

open/close ,read/write

dup/dup2, fcntl/ioctl

标准I/O库接口

缓存方式I/O

字符流I/O,比特流I/O

格式化I/O

高级I/O

无阻塞I/O,记录加锁

内存映射I/O

 

第二部分 进程高级编程

进程控制

进程环境

fork/vfork, wait/waitpid, exec

进程间的关系

进程组,会话(session)

Job控制

信号(signal)

信号的概念

Signal, kill/raise, alarm/pause, sigaction

 

第三部分 线程高级编程

进程与线程

Posix线程

线程的创建与结束

Pthread_create, pthread_join

竞争和临界区概念

线程同步

互斥,pthread_mutex_*

信号量 (semaphore), sem_*

条件变量 , pthread_cond_*

 

第四部分 IPC高级编程

线程间通信与进程间通信

posix IPC system V IPC

消息传递

无名管道(pipes)

有名管道(fifos)

消息队列(mg_*, mg*)

同步

互斥, 条件变量, 信号量

共享内存

 

第五部分 网络基础知识

网络基本概念

路由概念

TCP/IP各个层次的主要协议和功能

如何抓包并分析内容

 

第六部分 客户端/服务器编程

客户端与服务器概念

字节顺序与网络编程常用函数

htons,htonl,ntohs,ntohl,inet_aton inet_ntoa,inet_pton inet_ntop

socket概念及使用

Bind,connect,listen,accept,recv,send

recvfrom,sendto,select,setsockoption

 

第七部分socket网络高级编程

最简单的TCP C/S

添加错误处理

处理SIGPIPE信号

使用fork进行并发处理

使用select

 

第八部分Web服务器编程

socket处理

http请求处理

文件请求处理

 

实验部分课程安排

 

第一部分I/O实验

open/close/read/write综合实验

fcntl/ioctl综合实验

select练习

 

第二部分 进程实验

fork/wait/exec综合练习

mysh:简化实现的shell

mysh增强:支持重定向和管道

 

第三部分 线程实验

圆周率的近似计算

Producer_consumer问题

管程的C++实现

 

第四部分 IPC实验

pipe/fifos综合实验

消息队列

信号量

共享内存

 

第五部分 网络编程实验

C/S编程

1.实践代码,修改代码。

2.动手写自己的服务器。

Web服务器

3.web服务器代码实践。

4.动手修改web服务器代码。

 

第六部分 网络设备驱动程序开发

1. 网卡设备介绍

◆ 常见网卡

◆ 网卡芯片所实现的协议层功能

cs8900网卡芯片手册导读

cs8900网卡硬件电路分析

2. Linux网络驱动结构

Linux TCPIP网络结构概述

Linux网络设备结构

◇ 网络设备的注册

net_device结构分析

◇ 网络设备驱动的发送,接收和中断处理

3. 网卡设备介绍

◆ 常见网卡

◆ 网卡芯片所实现的协议层功能

cs8900网卡芯片手册导读

cs8900网卡硬件电路分

【实验】

1.实验一:ifconfig等命令实验

2.实验二:字符设备的网卡驱动实现()

3.实验三:字符设备的网卡驱动实现()

4.实验四:驱动的测试程序编写运行

 

第七部分 Linux下的TCP/IP协议栈--队列层(Queuing Layer

1. 基本数据结构和初始化

softnet data

ptype记录表

◆队列层初始化

2. 数据包的接收

NAPI接口

netif rx接口

3. 数据包的发送

◆队列规则(Queuing Discipline

◆发送流程.




如果您想学习本课程,请预约报名
如果没找到合适的课程或有特殊培训需求,请订制培训
除培训外,同时提供相关技术咨询与技术支持服务,有需求请发需求表到邮箱soft@info-soft.cn,或致电4007991916
技术服务需求表点击在线申请

服务特点:
海量专家资源,精准匹配相关行业,相关项目专家,针对实际需求,顾问式咨询,互动式授课,案例教学,小班授课,实际项目演示,快捷高效,省时省力省钱。

专家力量:
中国科学院软件研究所,计算研究所高级研究人员
oracle,微软,vmware,MSC,Ansys,candence,Altium,达索等大型公司高级工程师,项目经理,技术支持专家
中科信软培训中心,资深专家或讲师
大多名牌大学,硕士以上学历,相关技术专业,理论素养丰富
多年实际项目经历,大型项目实战案例,热情,乐于技术分享
针对客户实际需求,案例教学,互动式沟通,学有所获
报名表下载
联系我们 更多>>

咨询电话010-62883247

                4007991916

咨询邮箱:soft@info-soft.cn  

 

微信号.jpg

  微信咨询

随时听讲课

聚焦技术实践

订制培训 更多>>