home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1992 #16 / NN_1992_16.iso / spool / vmsnet / internal / 1104 next >
Encoding:
Text File  |  1992-07-21  |  3.5 KB  |  68 lines

  1. Newsgroups: vmsnet.internals
  2. Path: sparky!uunet!zaphod.mps.ohio-state.edu!caen!nic.umass.edu!amherst!amherst.edu!sysproj
  3. From: sysproj@amherst.edu
  4. Subject: VMS Memory Management/PGFLQUOTA question
  5. Message-ID: <1992Jul21.223333.1@amherst.edu>
  6. Lines: 56
  7. Sender: usenet@amhux2.amherst.edu (USENET News System)
  8. Nntp-Posting-Host: amh.amherst.edu
  9. Organization: Amherst College, Amherst Mass.
  10. Date: Wed, 22 Jul 1992 02:33:33 GMT
  11.  
  12. OK, I have a question for all you VMS memory management types out there:
  13.  
  14. What I would like to do is reserve a large (VERY large) segment of virtual
  15. address space for my exclusive use in an image.  We're talking a quarter of a
  16. gigabyte or so here.
  17.  
  18. If possible, I would like to simply reserve this address range without actually 
  19. creating pages in it, since then I won't need to have a humongous page file
  20. quota.  I will have to jack VIRTUALPAGECNT way up since my page tables will
  21. have to be large enough so that I can create pages within the range as I wish,
  22. but I can live with that.
  23.  
  24. Now, as far as I can tell, when I issue an $EXPREG to create some virtual
  25. memory in P0, the system service looks at PCB$L_FREP0VA to see where it can
  26. create the virtual memory.  This suggests that a way to reserve space is to
  27. look at FREP0VA, add the amount of memory I want to allocate to that address,
  28. and then create ONE PAGE just beyond that. This will cause my page table to be
  29. expanded, and will force FREP0VA past that one page, thus reserving the desired
  30. address range.  I can then create/delete memory within that address space at
  31. will (using $CRETVA with specific addresses), without worrying that any other
  32. well-behaved facility (such as LIB$GET_VM or anything else that calls $EXPREG)
  33. will go and create pages in there.
  34.  
  35. In theory this looks good to me.  In practice, however, I am clearly assuming
  36. that the rest of the system is well-behaved in that it won't create memory
  37. based anywhere other than beyond where FREP0VA points.  Also, I am assuming
  38. that $EXPREG's ONLY look at FREP0VA and won't do some kind of best fit on holes
  39. in the page table space on subsequent calls.
  40.  
  41. My question for y'all then, is how does this strike you?  Is this an accident
  42. waiting to happen?  Do any of you know of any facility which is not
  43. well-behaved in this respect? Is VMS/ALPHA likely to completely screw me in the
  44. future, or what?  Thoughts?  Comments?
  45.  
  46. If this doesn't seem like a good idea, the obvious other approach is to simply
  47. create all the memory I need.  This will require a huge page file quota (though
  48. not real page file space, since I don't expect to be touching many of these
  49. pages), so I'm wondering what the real costs of increasing page file quota are?
  50. Do any process/system data structures have sizes based on PGFLQUOTA, for 
  51. example?
  52.  
  53. And here's a gross idea.  Suppose instead of requiring any process doing this
  54. to have a huge page file quota, I wrote a user system service or something to
  55. temporarily bump up the page file quota, do the create, then drop the quota
  56. back down.
  57.  
  58. Is remaining page file quota synched to any data structures that the system
  59. might later notice are inconsistent?  Will this bite me later when some system
  60. component notices that I seem to have more pages than page file quota, or is
  61. PGFLQUOTA just a value like BYTELM, that simply gets added and subtracted from?
  62. (i.e., whose ONLY purpose is to control how much of a resource you can snag?)
  63.  
  64. Any thoughts on any or all of this would be most welcome.  Thanks!
  65.  
  66. - John W. Manly  <JWMANLY@AMHERST.EDU>  (System Manager -- Amherst College)
  67.  
  68.