home *** CD-ROM | disk | FTP | other *** search
/ Media Share 9 / MEDIASHARE_09.ISO / utility / fumbs101.zip / FIXUMBS.DOC < prev    next >
Text File  |  1993-06-19  |  12KB  |  250 lines

  1.                                 FIXUMBS 1.01
  2.  
  3.                                      by
  4.  
  5.                                Roland Skinner
  6.  
  7.                              Copyright (c) 1993
  8.  
  9.                                 RJS Software
  10.  
  11.  
  12. FIXUMBS is a utility to aid in UMB memory management.  It  is  particularly
  13. useful  when  using  DOS  as  a   UMB-manager,   along   with   third-party
  14. memory-managers which may act as UMB providers.
  15.  
  16. FIXUMBS was developed to get the  most  out  of  a  system's  memory.  Many
  17. computers do not  have  access  to  the  full  amount  of  physical  memory
  18. installed on those machines. This is mainly due to their BIOSes  not  fully
  19. supporting the motherboards' chipsets or  because  those  chipsets  do  not
  20. support full relocation (mapping) of memory.
  21.  
  22. Often, many computers with more than 2MB of memory appear to have 384K less
  23. memory than they actually have. This is particularly common with  computers
  24. that have an AMI BIOS.  This  memory  is  usually  set  aside  for  use  as
  25. shadow ram for the systems' ROMs.  (Shadow  ram  is  RAM  that  contains  a
  26. "mirror-image" of a ROM chip's contents that is located in the position  of
  27. that ROM, which improves  system  speed  due  to  RAM  being  an  order  of
  28. magnitude faster than ROM.) Often, the amount of ROM in a computer  is  far
  29. less than 384K, and the remaining RAM set aside for shadowing does not  get
  30. used.
  31.  
  32. Many utilities have been written to map the remaining shadow ram  into  the
  33. UMB (or upper) memory regions. FIXUMBS is written to aid these utilities to
  34. manage those UMBs. FIXUMBS is probably more useful  when  one  is  using  a
  35. memory manager such as QEMM or 386MAX to provide certain regions  of  UMBs,
  36. especially with products such as QEMM v6.00 (or above) that contain stealth
  37. technology to map more UMB regions into the regions taken up by  the  ROMs.
  38. Now, these memory managers do not recognize most  chipsets,  and  therefore
  39. do not use the shadow ram of the computers that contain those chipsets.
  40.  
  41. By using these memory managers, along with a shadow ram mapping utility, in
  42. conjunction with FIXUMBS, one can achieve an optimal memory  usage  setting
  43. on one's computer system. On the author's  system,  128K  of  XMS  and  EMS
  44. memory was gained, along with the benefit of having 640000  bytes  of  free
  45. conventional memory, through the use of FIXUMBS and other utilities.
  46.  
  47. REQUIREMENTS
  48. ~~~~~~~~~~~~
  49. - DOS 5 (or above)
  50. - XMS memory manager
  51. - DOS UMB management
  52. - Shadow ram UMB provider recommended
  53.  
  54. HOW TO INSTALL FIXUMBS
  55. ~~~~~~~~~~~~~~~~~~~~~~
  56. The heart of  FIXUMBS  is  the  file  FIXUMBS.EXE.  This  file  is  both  a
  57. device-driver (installed in CONFIG.SYS) and an executable program  (run  at
  58. the command-prompt or a batch file). FIXUMBS should be run twice.  Firstly,
  59. FIXUMBS must be installed as a device-driver in one's CONFIG.SYS file,  and
  60. then be run in the AUTOEXEC.BAT file.
  61.  
  62. Installation in CONFIG.SYS
  63. ~~~~~~~~~~~~~~~~~~~~~~~~~~
  64. FIXUMBS must be installed near the  beginning  of  one's  CONFIG.SYS  file.
  65. It must be installed after the shadow ram UMB-provider and  after  the  XMS
  66. memory manager that provides the other UMBs. Note that DOS must be  set  as
  67. the UMB-manager.
  68.  
  69. If FIXUMBS determines that one or more of its  requirements  are  not  met,
  70. i.e. DOS is not managing UMBs, an XMS memory manager is not  installed,  or
  71. it cannot find any UMBs (or a big  enough  free  UMB),  then  it  will  not
  72. install and will display an error as to the reason for no installation.
  73.  
  74. Note that the shadow ram UMB regions must be excluded if one  is  using  an
  75. XMS memory manager to provide other UMBs. Note also that DOS 5  (or  above)
  76. is required, as it must manage the UMB-memory.
  77.  
  78. The following is an example of a CONFIG.SYS file, using UMB_DRVR to provide
  79. the shadow ram UMBs, QEMM v6+ to provide stealth technology  UMBs  and  DOS
  80. managing the UMBs:
  81.           :
  82.           :
  83.           DOS=HIGH,UMB
  84.           :
  85.           :
  86.           DEVICE=UMB_DRVR.SYS /C=xx /M=--------..--++++++++....
  87.           DEVICE=QEMM386.SYS R:2 NOSH ARAM:D000-EFFF RAM ST:M
  88.           DEVICE=FIXUMBS.EXE
  89.           :
  90.           :
  91. Note that FIXUMBS must be loaded low; it will not install if loaded high.
  92.  
  93. The above example uses to UMB_DRVR to  provide  128K  of  shadow  ram  UMBs
  94. between D0000-EFFFF, and  QEMM  to  provide  stealth  memory  for  the  EMS
  95. page-frame at C0000-CFFFF and a further (approx) 64K of stealth memory  for
  96. more UMBs between F0000-FFFFF. Note that the  ARAM:D000-EFFF  option  above
  97. excludes the shadow ram UMB-memory, as discussed above.
  98.  
  99. Installation in AUTOEXEC.BAT
  100. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  101. Installation of FIXUMBS in the AUTOEXEC.BAT file is  optional,  but  highly
  102. recommended. At the beginning of the AUTOEXEC.BAT file, one should  include
  103. a line that runs FIXUMBS.EXE. This  installation  does   not  take  up  any
  104. memory, however it provides extra security for FIXUMBS's operation.
  105.  
  106. FIXUMBS must have been installed in the CONFIG.SYS file prior to  execution
  107. from the AUTOEXEC.BAT (see previous section).
  108.  
  109. SUPPORT PROGRAMS - FUMBON.COM and FUMBOFF.COM
  110. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  111.  
  112. FUMBON.COM and FUMBOFF.COM are utilities to turn  FIXUMBS's  UMB-management
  113. on or off, respectively.
  114.  
  115. Sometimes, incompatibilities between FIXUMBS and some  other  software  may
  116. arise. These programs  may  be  executed  to  disable  FIXUMBS  operability
  117. temporarily, and then reenable it soon thereafter.
  118.  
  119. Note that these programs require FIXUMBS to be  installed  prior  to  their
  120. use.
  121.  
  122. FIXUMBS and MICROSOFT WINDOWS
  123. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  124. FIXUMBS has been  tested  thoroughly  with  Microsoft  Windows  running  in
  125. Enhanced Mode, and has been found  to  be  fully  compatible.  FIXUMBS  has
  126. built-in code to detect  the  initialization  of  Windows  and  temporarily
  127. disables itself during the execution of Windows, and then reenables  itself
  128. after exiting Windows. FIXUMBS is disabled since Windows  needs  to  manage
  129. all memory itself during its execution.
  130.  
  131. However, Windows running in Standard Mode has had some problems.  Executing
  132. Windows in standard mode  will  cause  one's  system  to  hang  if  special
  133. precautions are not made prior  to  its  use.  Simply  execute  FUMBOFF.COM
  134. before running standard-mode Windows, and all will be  fine.  FIXUMBS  will
  135. reenable itself automatically after Windows is exited.
  136.  
  137. The incompatibility with standard mode could be corrected if FIXUMBS  could
  138. detect  the  initialization  of   standard-mode   Windows,   as   it   does
  139. enhanced-mode. If anyone knows of such a method, the author  would  greatly
  140. appreciate it.
  141.  
  142. BENEFITS OF USING FIXUMBS
  143. ~~~~~~~~~~~~~~~~~~~~~~~~~
  144. FIXUMBS's major benefit comes from its ability to  emulate  UMB  allocation
  145. and deallocation of an XMS-server, when DOS 5+ is the primary  UMB-manager.
  146. Often, when DOS is managing UMBs, many programs do not use DOS's method  of
  147. allocating UMBs, and thus don't load themselves high. Furthermore,  if  one
  148. is using an XMS manager such as  QEMM,  and  DOS  is  managing  UMBs,  many
  149. programs detect the XMS manager and try to use its UMB allocation  methods,
  150. yet fail because they should have used DOS's methods.
  151.  
  152. FIXUMBS has been found particularly useful  with  4DOS  (JP  Software)  and
  153. DOSMAX (Philip B. Gardner), in setups that have DOS  UMB  management  along
  154. with third-party UMB providers/managers (where DOS  does  the  management),
  155. where these programs fail to allocate UMBs. These and  other  programs  use
  156. documented methods of allocating UMB memory, yet fail since these  sort  of
  157. setups cause the XMS-server to report  no  available  high-memory.  FIXUMBS
  158. reports the free high-memory as free (when it is free).  Furthermore,  some
  159. programs detect the presence of  third-party  memory-managers,  and  assume
  160. that these memory-managers are managing the UMBs, when in fact they aren't.
  161.  
  162. Use of FIXUMBS will aid in better UMB management, since it tries to  ensure
  163. that UMBs are their maximum sizes (one large free UMB instead of many small
  164. UMBs), to provide more availability of memory for other programs.
  165.  
  166. ALREADY TESTED...
  167. ~~~~~~~~~~~~~~~~~
  168. FIXUMBS has been thoroughly tested with DOS 6.0, QEMM  v6.02,  4DOS  v4.02,
  169. WINDOWS v3.1, and with UMB_DRVR v5.22. It is assumed that it will work with
  170. DOS 5.0 and  previous  versions  of  the  above  software.  Numerous  other
  171. software has been found  to  work  fine  with  FIXUMBS,  including  certain
  172. protected mode software.
  173.  
  174. The only known problem (so far) occurs with  running  Windows  in  standard
  175. mode. See above for discussion of correcting  this  problem.  In  a  future
  176. version, it is hoped that FIXUMBS will  be  able  to  detect  standard-mode
  177. Windows automatically,  and  thus  be  able  to  circumvent  any  potential
  178. problems before they occur.
  179.  
  180. If anybody finds any problems  with  FIXUMBS  and  other  software,  please
  181. contact the author or RJS Software (see below).
  182.  
  183. LICENSE and DISCLAIMER
  184. ~~~~~~~~~~~~~~~~~~~~~~
  185. FIXUMBS is public domain software. It has been found to achieve the task it
  186. has been written to do. However,  due  to  the  technical  nature  of  this
  187. program, it is near impossible for  all  system  setups  to  be  completely
  188. error-free. The author does not accept any responsibility for any  loss  or
  189. damage that arises out of the use of  this  software,  due  to  correct  or
  190. incorrect use.
  191.  
  192. The programs and distributed here must be kept together, and should not  be
  193. distributed without this documentation. These files are:
  194.  
  195.        FIXUMBS.EXE, FUMBON.COM, FUMBOFF.COM, FIXUMBS.DOC, FILE_ID.DIZ
  196.  
  197. If you find FIXUMBS useful, a donation of $5 (US)  or  R10  (SA)  would  be
  198. appreciated. All donations, correspondence, wish-lists, etc. can be sent to
  199. the address(es) below.
  200.  
  201. The author reserves the right to discontinue support or development of this
  202. software, at any time.
  203.  
  204. I hope that users of FIXUMBS will find it useful.
  205.  
  206. Roland Skinner
  207.  
  208. ---------------------------------------------------------------------------
  209.  
  210. COPYRIGHT INFORMATION
  211. ~~~~~~~~~~~~~~~~~~~~~
  212. The author and RJS Software acknowledge  all  copyrights  of  the  software
  213. mentioned here, and also of other software that performs the same tasks  as
  214. the software mentioned here.
  215.  
  216. ---------------------------------------------------------------------------
  217.  
  218. History of FIXUMBS
  219.  
  220. -  v1.00 Public release.
  221.          First official public release.
  222. -  v1.01 Public release.
  223.          Maintenance release.
  224.          Corrected problem with too big a  base-memory  being  reported  by
  225.          INT 12h.
  226.  
  227. ---------------------------------------------------------------------------
  228.  
  229. Any correspondence may be forwarded to the address below.
  230.  
  231. Send  your  recommendations,  bug-reports,  requests,  donations,  etc.  to
  232. Roland Skinner, or RJS Software, at:
  233.  
  234.                            P.O. Box 14134
  235.                            Bredell
  236.                            1623
  237.                            Republic of South Africa
  238.  
  239. Users requesting faster replies, etc. may send an Email message  to  Roland
  240. Skinner on one of the echomail  conferences  in  South  Africa,  preferably
  241. "RsaSOFT", or netmail me. Also, messages may be sent to  me  in  the  ILink
  242. "SHAREWARE" conference. My personal Email addresses are:
  243.  
  244.   FIDONET:    Roland Skinner @ 5:7101/55.1
  245.   InterNet:   roland.skinner@p1.f55.n7101.z5.fidonet.org
  246.               roland@concave.cs.wits.ac.za
  247.  
  248. Roland Skinner
  249.  
  250.