On 2017-04-11, at 12:47, Jesse 1 Robinson wrote: > > Part of the problem, I learned some time back at SHARE, is that there is no > mechanism to 'reclaim' page slots that no longer need to remain on disk. Once > storage gets paged out, it sits there like a sandbag until the owning task is > stopped. ... > My understanding, ancient, probably outdated, and certainly naive is that there is little communication between GETMAIN/FREEMAIN and the paging subsystem. If a program touches a page that was never GETMAINed no error occurs; simply a page slot is allocated up to the limit of the REGION parameter. Conversely, on FREEMAIN the page slots are not released.
Programmers with a strong UNIX/C background loathe this. They are accustomed to do needed malloc()s up front and handle errors at that point; their code is not designed to handle out-of-storage conditions that occur unexpectedly, later when a page is touched. From the other point of view, traditional OS programmers are accustomed to code enormous fixed GETMAINs in case they need the storage years in the future -- just adjust the REGION and the program works again. Culture clash. Repairing this to make paging substem aware of FREEMAIN and release the slots would be an enormous and risky design change. -- gil ---------------------------------------------------------------------- For IBM-MAIN subscribe / signoff / archive access instructions, send email to [email protected] with the message: INFO IBM-MAIN
