没有合适的资源?快使用搜索试试~ 我知道了~
vc内存映射文件在进程中的应用与研究毕业论文.doc
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 177 浏览量
2023-08-14
23:28:20
上传
评论
收藏 287KB DOC 举报
温馨提示
试读
32页
vc内存映射文件在进程中的应用与研究毕业论文.doc
资源推荐
资源详情
资源评论
内存映射文件在进程中的应用与研究
摘 要
随着计算机操作系统的发展,多任务多进程已经被广泛应用。为了加速应用
程序的运行,往往会在系统中建立多个进程,由这些进程相互合作去完成一个共
同的任务,经常需要在进程之间交换信息、传递数据。
Windows 提供了多种机制,使应用程序能够迅速而方便地共享数据和信息,
这些机制包括 RPC、COM、OLE、DDE、窗口消息(尤其是 WM_COPYDATA)、剪贴板、
邮箱、管道和套接字等;而这些机制均使用内存映射文件,在 Windows 系统中,
单个计算机上共享数据的最低层机制是内存映射文件。如果互相进行通信的所有
进程都在同一台计算机上的话,使用内存映射文件进行共享,系统的性能较高和
开销较小。
本文主要阐述了内存映射文件基本原理和实现方法,探讨和研究了如何在
Visual C++环境下利用 MFC 类库编写使用内存映射文件来完成进程间数据共享,
并给出了应用实例。
关键词:内存映射文件;进程通信;MFC
Application and Research of Memory-mapped Files in
Process
Abstract
With the development of computer operating system, multi-task process has been
used more widely. In order to accelerate the application of the operation, it often
creates a number of processes in the system. These processes cooperate to accomplish
a common task, often exchanging information and data transfer in the process
Windows offers a variety of mechanisms for enabling the applications to share
data and information quickly and easily. These mechanisms include the RPC, COM,
OLE and DDE, information window (especially WM_COPYDATA), the clipboard,
mailboxes, pipes and sockets. These mechanisms are used memory mapping file in
the Windows system. The memory-mapped file is used in these mechanisms of
windows. The memory-mapped file is the lowest level on the single computer for
sharing data mechanism. If the processes that are communicating with each other are
all in the same machine, the system will acquire higher function with smaller expense
by using the memory-mapping file to share data.
This paper discusses the basic principles and the methods of the memory-mapped
files mainly. We will explore and study how to use memory-mapped files for
complete inter-process data sharing by using MFC in Visual C ++. An example is
given.
Key words: Memory-mapped files; Process communication; MFC
目 录
论文总页数:28 页
1 引 言 ............................................................1
1.1 课题背景..............................................................1
1.2 本课题研究的意义......................................................1
1.3 课题研究方法..........................................................1
2 开发平台简介 ............................................................1
3 主要技术 ............................................................2
3.1 内存映射文件的基本原理和操作..........................................2
3.1.1 内存映射文件的基本原理..............................................2
3.1.2 创建内存映射文件..................................................3
3.1.3 映射文件的视图到进程的地址空间....................................5
3.1.4 FlushViewOfFile 函数 ..............................................6
3.1.5 取消文件视图的映射................................................6
3.1.6 关闭文件映射对象..................................................6
3.2 内存映射文件在进程数据共享中的应用....................................6
3.2.1 进程的相关概念....................................................6
3.2.2 共享内存的原理....................................................7
3.2.3 使用事件对象来同步进程............................................8
4 应用实例 ...........................................................10
4.1 相关技术.............................................................10
4.1.1 消息映射机制.......................................................10
4.1.2 BMP(位图)文件......................................................11
4.2 本实例实现流程.......................................................14
4.3 功能实现.............................................................15
4.3.1 MemonyShare 工程说明 .............................................15
4.3.2 MemonyShareRev 工程说明 ..........................................20
结束语 ...........................................................26
参考文献 ...........................................................26
致 谢 ...........................................................27
声 明 ...........................................................28
第 1 页 共 28 页
1 引 言
1.1 课题背景
随着计算机操作系统的发展,多任务多进程已经被广泛应用。同时也就涉及
到进程之间的通信和数据共享等问题。
在 Windows 中,在单个计算机上共享数据的最低层机制是内存映射文件。如
果互相进行通信的所有进程都在同一台计算机上的话,如 RPC、COM、OLE、DDE、
窗口消息(尤其是 WM_COPYDATA)、剪贴板、邮箱、管道和套接字等所有机制均
使用内存映射文件从事它们的烦琐工作。
所以研究内存映射文件的原理,在实际编程中实现进程的共享成了本课题的
主要研究对象。
1.2 本课题研究的意义
内存映射文件是实现进程共享通讯的基础,它也是 Windows 的一种内存管理
方法,提供了一个统一的内存管理特征,使应用程序可以通过内存指针对磁盘上
的文件进行访问,其过程就如同对加载了文件的内存的访问,非常方便和高效。
内存映射文件是多个进程间共享数据最有效的方法,通过研究内存映射原理,
熟悉方法并将其应用到实际的工程中,加以实践,掌握进程间通讯的方法。
本文主要阐述如何在 Visual C++环境下,运用 MFC 实现使用内存映射文件进
行进程间数据共享的方法。
1.3 课题研究方法
进程间的通讯类型有多种,本课题主要是研究利用内存映射文件来实现基于
共享存储区的通信方式,这样的通信方式一般适合于传输大量数据。
Visual C++是一个很好的可视化编程工具。作为 Windows 环境下最主要的应
用开发系统之一,Visual C++不仅是 C++语言的集成开发环境,而且与 Win32 紧
密相连,所以利用 Visual C++开发系统可以完成各种各样的应用程序的开发,从
底层软件直到上层直接面向用户的软件。使用 Visual C++环境来开发基于
Windows 的应用程序大大缩短了开发时间。
使用 Visual C++2005,运用 MFC 设计一个使用内存映射文件来传递 BMP 文件
到另一进程显示的实例,并分析相关代码。
2 开发平台简介
Visual C++自诞生以来,一直是 Windows 环境下最主要的应用开发系统之一。
Visual C++不仅是 C++语言的集成开发环境,而且与 Win32 紧密相连,所以利用
Visual C++开发系统可以完成各种各样的应用程序的开发,从底层软件直到上层
直接面向用户的软件。而 MFC 编程是在 Visual C++的一种编程方法。
剩余31页未读,继续阅读
资源评论
豆包程序员
- 粉丝: 2984
- 资源: 3504
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功