// Mem_Map.cpp,v 1.2 2004/01/03 22:31:20 shuston Exp #include "ace/OS.h" #include "ace/Mem_Map.h" #include "ace/Log_Msg.h" // Listing 1 code/ch17 int ACE_TMAIN (int, ACE_TCHAR *argv[]) { ACE_HANDLE srcHandle = ACE_OS::open (argv[1], O_RDONLY); ACE_ASSERT(srcHandle != ACE_INVALID_HANDLE); ACE_Mem_Map srcMap (srcHandle, -1, PROT_READ, ACE_MAP_PRIVATE); ACE_ASSERT(srcMap.addr () != 0); ACE_Mem_Map destMap (argv[2], srcMap.size (), O_RDWR | O_CREAT, ACE_DEFAULT_FILE_PERMS, PROT_RDWR, ACE_MAP_SHARED); ACE_ASSERT(destMap.addr () != 0); ACE_OS::memcpy (destMap.addr (), srcMap.addr (), srcMap.size ()); destMap.sync (); srcMap.close (); destMap.close (); return 0; } // Listing 1