15.2 System Services 15.2.1 Enhanced Services The following system services have been enhanced to rec- ognize the new shared memory global section flag SEC$M_SHMGS: * SYS$CRMPSC_GDZRO_64 * SYS$CREATE_GDZRO * SYS$MGBLSC_64 * SYS$DGBLSC The following system services were enhanced to work with shared memory but no interfaces were changed: * SYS$DELTVA * SYS$DELTVA_64 * SYS$CREATE_BUFOBJ * SYS$CREATE_BUFOBJ_64 * SYS$DELETE_BUFOBJ 15.2.2 New Section Flag SEC$M_READ_ONLY_SHPT The new section flag SEC$M_READ_ONLY_SHPT is rec- ognized by the SYS$CREATE_GDZRO and SYS$CRMPSC_ GDZRO_64 services. When this bit is set, it directs the system to create shared page tables for the section that allow only read access. This feature is particularly useful in an envi- ronment where a memory resident or Galaxy shared section is used by many readers but only a single writer. When you map a Galaxy shared or memory resident section that has an associated shared page table section, you have the following options: Desired ac- Shared page tables cess READ ONLY: READ AND /OR WRITE: none created Do not set the SEC$M_WRT Set the flag in the map request. SEC$M_ Private page tables will al- WRT flag ways be used, even if you arein the specifying a shared page ta- map ble region into which to map re- the section. quest. Private page tables will always be used, even if you are speci- fying a shared page table region into which to map the sec- tion. write access Do not set the SEC$M_WRT Set the flag in the map request. SEC$M_ WRT Ensure that private page flag tables will be used. Do not in the specify a shared page table region into which to map the map section. If you do, the errore- quest. status SS$_IVSECFLG is returned. The shared page table section will be used for map- ping if you spec- ify a shared page table region into which to map the sec- tion. read access Do not set the SEC$M_WRT Set the flag in the map request. TheSEC$M_ shared page table section wilWRT be used for mapping if you flag specify a shared page table in the region into which to map the map section. re- quest. Ensure that private page tables will be used. Do not spec- ify a shared page table region into which to map the sec- tion. If you do the error status SS$_ IVSECFLG is re- turned. Notes Shared page tables for Galaxy shared sections are also implemented as Galaxy shared sections. This im- plies that they allow either read access only on all OpenVMS instances connected to this section or they allow read/write access on all instances. The setting of the SEC$M_READ_ONLY_SHPT flag as requested by the first instance to create the section is used on all instances. Using the SYS$CRMPSC_GDZRO_64 service always implies that the SEC$M_WRT flag is set and that you want to map the section for writing. If you want to use this service to create a section with shared page tables for read only access, you must use private page tables and you cannot specify a shared page table region into which to map the section.