第20章进程间通信 主要内容 本章包括网络编程的部分内容,即进程间的通信。主要内容 有进程间通信的基本概念和原理,几种典型的进程间通信的 方法,如剪贴板、窗口消息、消息队列、 Sockets等,以上述 方法为例,讲解了它们的编程模型和编程原理,侧重于数据 的发送和接收,并给出了实例
第20章 进程间通信 主要内容 本章包括网络编程的部分内容,即进程间的通信。主要内容 有进程间通信的基本概念和原理,几种典型的进程间通信的 方法,如剪贴板、窗口消息、消息队列、Sockets等,以上述 方法为例,讲解了它们的编程模型和编程原理,侧重于数据 的发送和接收,并给出了实例
20.1进程间通信 ■20.1.1基本概念 程序是为了完成某项任务编排的语句序列,它告诉计算机如何执 行,因此程序是需要运行的。 进程能描述程序的执行过程而且可以作为共享资源的基本单位。 所谓进程通信是指进程之间可直接以较高的效率传递较多数据的 信息交换方式。这种方式中采用的是通信机构,如消息发送和消 息接收、邮箱结构等,在进程通信时往往以信件形式(或称消息) 传递信息。 所谓信件是指进程之间相互传递的赖以发生交互作用的有结构的 数据
20.1 进程间通信 ◼ 20.1.1 基本概念 程序是为了完成某项任务编排的语句序列,它告诉计算机如何执 行,因此程序是需要运行的。 进程能描述程序的执行过程而且可以作为共享资源的基本单位。 所谓进程通信是指进程之间可直接以较高的效率传递较多数据的 信息交换方式。这种方式中采用的是通信机构,如消息发送和消 息接收、邮箱结构等,在进程通信时往往以信件形式(或称消息) 传递信息。 所谓信件是指进程之间相互传递的赖以发生交互作用的有结构的 数据
20.1.1基本概念 进程通信的一般模型 进程P 进程P 消息发送 消息发送机构 管理 发送机构 管理 消息发送 信道 接收机构 消息接收 肖息接收 图20.1进程通信的一般模式
20.1.1 基本概念 ◼ 进程通信的一般模型 发送机构 接收机构 消 息 管理 消 息 管理 发送机构 接收机构 消息发送 信道 进程Pi 操作系统范围 进程Pj 消息接收 消息发送 消息接收 图20.1 进程通信的一般模式
20.1.2 Windows下进程间的通信 PC机制 机制 否 命令行 剪贴板 网络DDE 窗口消息 命名管道 DDE 串行/并行通信 匿名管道 远程过程调用 动态连接库 分布式COM 邮件槽 COM Windows Sockets 消息队列 否 连接? Datagram Sockets Stream Sockets 图202 Windows的IPC机制
20.1.2 Windows下进程间的通信 ◼ IPC机制 机制 图20.2 Windows的IPC 机制 是 否 共享内存和 文件映射 动态连接库 匿名管道 DDE 窗口消息 剪贴板 命令行 COM 消息队列 串行/并行通信 命名管道 网络 DDE Windows Sockets 远程过程调用 分布式COM 邮件槽 网络 通信? Stream Sockets Datagram Sockets 是 面向 否 连接?
20.2窗口消息(1 ■202.1 COPYDATASTRUCT结构 typedef struct tag COP YDATASTRUCT DWORD dwData DWORD cdAta PVOID IpData 3 COPYDATASTRUCT, * PCOPYDATASTRUCT ■2022 WM COPYDATA消息
20.2 窗口消息(1) ◼ 20.2.1 COPYDATASTRUCT结构 typedef struct tagCOPYDATASTRUCT { DWORD dwData; DWORD cbData; PVOID lpData; } COPYDATASTRUCT, *PCOPYDATASTRUCT; ◼ 20.2.2 WM_COPYDATA消息