嵌入式Linux应用开发编程基础教案任务9:管道通信编程.docxVIP

  • 0
  • 0
  • 约1.74千字
  • 约 5页
  • 2026-02-04 发布于湖南
  • 举报

嵌入式Linux应用开发编程基础教案任务9:管道通信编程.docx

长春职业技术学院课程教案首页

No.9

授课题目

任务9:管道通信编程

教学单元

学时

2[]4[√]

教学目标

[知识目标]:

1.Linux下进程间通信;

2.无名管道;

3.有名管道;

[能力目标]:

1.会无名管道系统调用;

2.会编写流管道程序;

3.会编写有名管道程序;

[素质目标]:

1.培养学生分析及解决问题能力;

2.培养学生具备嵌入式Linux开发的能力;

重点

难点

重点:管道通信

难点:有名管道

教学方法

讲解法、演示法

能力训练

(作业)

教学体会

授课班级

授课时间及地点

年月日(星期)第节,楼室

年月日(星期)第节,楼室

年月日(星期)第节,楼室

年月日(星期)第节,楼室

注:教学体会一般在课后填写,授课时间须按上课先后顺序依次填写。

长春职业技术学院课程教案用纸

教学环节

教学内容

备注

课程导入

复习提问:

Fork()函数的作用?

什么是守护进程?

什么是僵尸进程?

宣布本节课的主容:任务9:管道通信编程

1.Linux下进程间通信;●

2.无名管道;

3.有名管道;★

(●为重点内容★为难点内容)

15’

复习提问

讲与听

一、Linux下进程间通信概述

1、继承Unix平台上进程通信手段

集合SystemVIPC(贝尔实验室)和socket的进程间通信机制(BSD)的优势

2、常用的进程间通信方式

传统的进程间通信方式

无名管道(pipe)、有名管道(fifo)和信号(signal)

SystemVIPC对象

共享内存(sharememory)、消息队列(messagequeue)和信号灯(semaphore)

BSD

套接字(socket)

二、管道通信

(1)无名管道特点

它只能用于具有亲缘关系的进程之间的通信(也就是父子进程或者兄弟进程之间)。

它是一个半双工的通信模式,具有固定的读端和写端。

管道也可以看成是一种特殊的文件,对于它的读写也可以使用普通的read()、write()等函数。但是它不是普通的文件,并不属于其他任何文件系统,并且只存在于内存中

(2)有名管道特点

它可以使互不相关的两个进程实现彼此通信。

该管道可以通过路径名来指出,并且在文件系统中是可见的。在建立了管道之后,两个进程就可以把它当作普通文件一样进行读写操作,使用非常方便。

FIFO严格地遵循先进先出规则,对管道及FIFO的读总是从开始处返回数据,对它们的写则把数据添加到末尾,它们不支持如lseek()等文件定位操作。

2、无名管道系统调用

只有在管道的读端存在时,向管道写入数据才有意义。否则,向管道写入数据的进程将收到内核传来的SIGPIPE信号(通常为Brokenpipe错误)。

3、标准流管道

与Linux的文件操作中有基于文件流的标准I/O操作一样,管道的操作也支持基于文件流的模式。这种基于文件流的管道主要是用来创建一个连接到另一个进程的管道,这里的“另一个进程”也就是一个可以进行一定操作的可执行文件。

4、有名管道(FIFO)

FIFO读写

40’

讲授法,演示法

练与做

互动交流

学生实训

实训1:无名管道实验P136

教师巡视指导,改错。

80’实验法

结与拓

学生总结实验结果。

(1)学生完成习题,各小组阐述相关内容,提问。

(2)教师着重解决普遍存在的问题,答疑;学生反思,整理笔记。

(25分钟)

课堂总结

由学生发言进行总结,之后老师点评:

1.本次课程需要涉及的知识点

2.本次课程需要达到的目标

总结引申

(20分钟)

文档评论(0)

1亿VIP精品文档

相关文档