共享内存数据段
#define MAX_MAP_FILE_NUM 20 //the maximum numbers of file-mapping object you can create
#define MAP_FILE_TAG_NAME_LEN 30 //file-mapping object's tag
typedef struct tag_mapping_file_info
{
char szMapFileTag[MAX_MAP_FILE_NUM][MAP_FILE_TAG_NAME_LEN];
tag_mapping_file_info()
{
memset(&szMapFileTag, 0, MAX_MAP_FILE_NUM*MAP_FILE_TAG_NAME_LEN);
}
}MAP_FILE_INFO, *P_MAP_FILE_INFO; //file-mapping infomation
#pragma data_seg("SHARED_HANDLE") // define share data segment be entitled "SHARED_HANDLE"
MAP_FILE_INFO seg_mapInfo; // the share data should be payed attention to especially, it must be
//initialized, as variables not be initialized will be saved
//in bss data segment by the complier
volatile int seg_nMapFileNum = 0;
volatile bool seg_bInCriticalSection = FALSE; // synchronization sign
#pragma data_seg()
在这个共享段内,为什么seg_mapInfo数据,我不能在另一个进程中查看到,全是空的。而对于seg_nMapFileNum却是可以达到共享的效果?
#define MAP_FILE_TAG_NAME_LEN 30 //file-mapping object's tag
typedef struct tag_mapping_file_info
{
char szMapFileTag[MAX_MAP_FILE_NUM][MAP_FILE_TAG_NAME_LEN];
tag_mapping_file_info()
{
memset(&szMapFileTag, 0, MAX_MAP_FILE_NUM*MAP_FILE_TAG_NAME_LEN);
}
}MAP_FILE_INFO, *P_MAP_FILE_INFO; //file-mapping infomation
#pragma data_seg("SHARED_HANDLE") // define share data segment be entitled "SHARED_HANDLE"
MAP_FILE_INFO seg_mapInfo; // the share data should be payed attention to especially, it must be
//initialized, as variables not be initialized will be saved
//in bss data segment by the complier
volatile int seg_nMapFileNum = 0;
volatile bool seg_bInCriticalSection = FALSE; // synchronization sign
#pragma data_seg()
在这个共享段内,为什么seg_mapInfo数据,我不能在另一个进程中查看到,全是空的。而对于seg_nMapFileNum却是可以达到共享的效果?
...全文
相关推荐
挖掘AIX对大内存页支持的潜力
**共享内存段**:应用程序还可以请求共享内存段使用大内存页,这对于多进程之间需要高效共享大量数据的情况非常有用。通过系统调用或编程接口,应用程序可以指定在创建共享内存时使用大内存页。
操作系统进程内存手记
在操作系统中,进程是程序在执行时的一个实例,每个进程都有自己的独立内存空间,包含代码段、数据段、堆栈段和共享内存等部分。这些内存区域的管理是操作系统的重要任务。1.
面试相关整理
**进程间通信(IPC)**: - 共享内存是一种高效的数据交换方式,允许不同进程访问同一内存区域。在进程空间中,共享内存段位于数据段,最大限制通常为系统定义,如0x2000000字节。4.
Linux操作系统下的多进程编程详细解析
此外,多进程间的通信是通过各种机制实现的,如管道(pipe)、共享内存(shared memory)、信号量(semaphore)和消息队列(message queue)等。
吉林大学操作系统实验报告.docx
在这个过程中,操作系统会为新进程分配独立的内存空间,但初始时,子进程继承了父进程的数据段、堆栈段和代码段。


进程/线程/DLL
