home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1992 #16 / NN_1992_16.iso / spool / comp / os / mswindo / programm / win32 / 359 < prev    next >
Encoding:
Internet Message Format  |  1992-07-30  |  2.4 KB

  1. Path: sparky!uunet!mcsun!uknet!yorkohm!minster!martin
  2. From: martin@minster.york.ac.uk
  3. Newsgroups: comp.os.ms-windows.programmer.win32
  4. Subject: Re: Running NT with more than 16MB
  5. Message-ID: <712530785.27982@minster.york.ac.uk>
  6. Date: 30 Jul 92 21:13:06 GMT
  7. Organization: Department of Computer Science, University of York, England
  8. Lines: 55
  9.  
  10. jvert@microsoft.com (John Vert) says:
  11. > >My question concerns what happends on an ISA machine with disk controllers
  12. > >or other expansion boards which might try to access memory above the
  13. > > 16Mb limit of the ISA expansion bus. Does this even happend in todays
  14. > >systems?
  15. > Yes, it happens all the time.  However, Windows NT will take care of the
  16. > messy details and you can use all your memory just fine.
  17.  
  18. OS/2 v2.0 *still* has trouble with this! I believe - perhaps they should
  19. have done less of the OS/2 v2.0 development on PS/2s :-)
  20.  
  21. > >
  22. > >For instance, what if some software wants to DMA a block of memory to a disk
  23. > >or video or other type of card? If the source or destiation of the DMA
  24. > >transfer is above 16Mb what happends? Do the DMA controllers automaticall
  25. > >handle this case? Is there some system software which will detect this and
  26. > >possibly do a transfer to low memory (below 16Mb) and then transfer it
  27. > >above 16Mb to its destination?
  28. > The disk driver requests DMA transfers through the HAL (Hardware Abstraction
  29. > Layer)  The HAL figures out that the DMA controller cannot see the memory
  30. > above 16Mb, performs the DMA into a buffer below the 16Mb line, then copies
  31. > the result to its final destination.  (and vice-versa when memory above
  32. > 16Mb is the source of the DMA))
  33.  
  34. What is the performance penalty of
  35. 1)    The extra copying
  36. 2)    The (presumably) limited size of the intermediate buffer
  37. ?
  38.  
  39. In particular, if I'm using the *wonderful* CreateFile option which does
  40. the I/O directly into my address space, without going through the cache
  41. (that is the FILE_FLAG_NO_BUFFERING option), with big reads (>100Kbytes, say)
  42. and the memory happens not to be in the low 16Mbytes, will there be a
  43. horrendous (and rather unpredictable) penalty?
  44.  
  45. (Actually, this *is* quite important to me!)
  46.  
  47. Thanks,
  48.  
  49. Martin
  50. PS
  51.   Microsoft is going to regret calling it `CreateFile'... :-)
  52.  
  53. INTERNET: martin@minster.york.ac.uk
  54. surface:
  55.         Dr. Martin C. Atkins
  56.         Dept. of Computer Science
  57.         University of York
  58.         Heslington
  59.         York YO1 5DD
  60.         ENGLAND
  61.