Re: HEADS UP: Win32/OS2/BeOS native ports
Bruce Momjian <pgman@candle.pha.pa.us>
From: Bruce Momjian <pgman@candle.pha.pa.us>
To: Igor Kovalenko <Igor.Kovalenko@motorola.com>
Cc: Tom Lane <tgl@sss.pgh.pa.us>, mlw <markw@mohawksoft.com>, "Marc G. Fournier" <scrappy@hub.org>, pgsql-hackers@postgresql.org
Date: 2002-06-03T00:47:35Z
Lists: pgsql-hackers
Igor Kovalenko wrote: > It does not have to be anonymous. POSIX also defines shm_open(same arguments > as open) API which will create named object in whatever location corresponds > to shared memory storage on that platform (object is then grown to needed > size by ftruncate() and the fd is then passed to mmap). The object will > exist in name space and can be detected by subsequent calls to shm_open() > with same name. It is not really different from doing open(), but more > portable (mmap() on regular files may not be supported). Actually, I think the best shared memory implemention would be MAP_ANON | MAP_SHARED mmap(), which could be called from the postmaster and passed to child processes. While all our platforms have mmap(), many don't have MAP_ANON, but those that do could use it. You need MAP_ANON to prevent the shared memory from being written to a disk file. -- Bruce Momjian | http://candle.pha.pa.us pgman@candle.pha.pa.us | (610) 853-3000 + If your life is a hard drive, | 830 Blythe Avenue + Christ can be your backup. | Drexel Hill, Pennsylvania 19026