home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1992 #31 / NN_1992_31.iso / spool / comp / os / msdos / programm / 11753 < prev    next >
Encoding:
Text File  |  1993-01-02  |  2.3 KB  |  73 lines

  1. Newsgroups: comp.os.msdos.programmer
  2. Path: sparky!uunet!usc!zaphod.mps.ohio-state.edu!pacific.mps.ohio-state.edu!pacific.mps.ohio-state.edu!davis
  3. From: davis@pacific.mps.ohio-state.edu ("John E. Davis")
  4. Subject: Re: VIRTUAL MEMORY
  5. In-Reply-To: verghese@boi.hp.com's message of Thu, 31 Dec 1992 22:55:00 GMT
  6. Message-ID: <DAVIS.93Jan2132313@pacific.mps.ohio-state.edu>
  7. Sender: news@pacific.mps.ohio-state.edu
  8. Nntp-Posting-Host: pacific.mps.ohio-state.edu
  9. Reply-To: davis@pacific.mps.ohio-state.edu  (John E. Davis)
  10. Organization: "Dept. of Physics, The Ohio State University"
  11. References: <6500.115.uupcb@cutting.hou.tx.us> <C05Bno.9K@boi.hp.com>
  12. Date: Sat, 2 Jan 1993 18:23:13 GMT
  13. Lines: 58
  14.  
  15. In article <C05Bno.9K@boi.hp.com> verghese@boi.hp.com (Phil Verghese) writes: 
  16.    Here's some info from the brochure:
  17.        PocketSoft  1-800-826-8086
  18.  
  19.    VMData is a replacement for malloc.  When you want to dynamically
  20.    allocate data, you call VMData functions instead of malloc.  The
  21.    virtual storage can be in EMS, XMS or disk.
  22.  
  23.    There's a version for DOS and Windows.  Each version has two
  24.    libraries: one for development (debugging) and one for production.
  25.    The development library does more error checking than the production
  26.    one.
  27.  
  28.    Languages/Compilers supported: MSC 5.1, 6.0 and C++ 7.0; Borland C++
  29.    2.0, 3.0, 3.1; MS Fortran 5.0,5.1
  30.  
  31. It is easy to write a program which would try to malloc space in memory and if
  32. that fails, open up space on a disk.  The problem is getting at the memoroy on
  33. disk. Consider a linked list:
  34.  
  35.  elem_1 -> elem_2 -> elem_3 ....
  36.  
  37. where elem_i is a struct of type elem_type. 
  38.  
  39. Suppose elem_1 is in memory but elem_2 is on disk.  Let p be:
  40.  
  41. elem_type *p;
  42.  
  43. Then if p = elem_1, *p is easy since it is in memory.   Then what about the
  44. statements:
  45.  
  46. p = p->next;  ...*p;   ???
  47.  
  48. Somehow the virtual memory package must interact somehow with the compiler or
  49. must have some sort of wrapper routine in its library which forbids
  50. statements like:
  51.  
  52. p = p->next;
  53.  
  54. forcing one to use a library routines such as:  p = vm_next(p);
  55. and vm_star(p);
  56.  
  57. In any case I will call call the company on Monday because I am quite
  58. skeptical.
  59.  
  60.  
  61.  
  62.  
  63.  
  64.  
  65. --
  66.      _____________
  67. #___/John E. Davis\_________________________________________________________
  68. #
  69. # internet: davis@amy.tch.harvard.edu
  70. #   bitnet: davis@ohstpy
  71. #   office: 617-735-6746
  72. #
  73.