[comp.windows.ms] Win3 8086 Virtual Machine, again

pcb@gator.cacs.usl.edu (Peter C. Bahrs) (06/13/90)

>
>From: markg@cbnewsk.att.com (mark.r.gibaldi)
>In article <9906@rouge.usl.edu> pcb@gator.cacs.usl.edu (Peter C. Bahrs) writes:
>>Round 2 of questions/comments:
>>
>>In general WIN 3.0 is awesome! (wrt win386, and all of my X envts.)
>>
>>1) Does win3 give each dos application a virtual 8088 machine when in
>>   enhanced mode?
>>   I have 9 mb memory (2 real and 8 swap) available and can only
>>   run 1 copy of edix and 1 procomm...then is says out of memory,
>>   ......
>
>Hmm...  In systems (OS) that use paged virtual memory as does Win 3.0, virtual
>memory on disk does have limitations.  Programs have a certain number of
>memory pages which MUST be held in RAM in order for the processing to
>continue, or be continuable.  This is called a "working set".  If the
>working set of your active programs exceed the amout of RAM that you have,
>all the virtual memory in the world won't do you much good.  The above
>example does not prove that Windows 3.0 does or does not use virtual machines
>as advertised......
>

Well I solved the problem (I think).  For Edix and Procomm   .exe's I ran
exehdr.  I think I got this with DOS or MS C compiler.  It listed
the amout of memory needed, static I think.  I added 5 to this and
used it in the PIF settings.  FINE.!!  I pulled up 5 edix and 3 procomm
just to see.

But I think this logic does not hold for files with overlays????  
Quick C listed only 5k needed which definitely did not work.  

I don't believe Edix and Procomm use overlays.  

Is this the best approach to determine a PIF amount setting?


/*----------- Thanks in advance... --------------------------------------+
| Peter C. Bahrs                                                         |
| The USL-NASA Project                                                   |
| Center For Advanced Computer Studies      INET: pcb@gator.cacs.usl.edu |
| 2 Rex Street                                                           |
| University of Southwestern Louisiana      ...!uunet!dalsqnt!gator!pcb  | 
| Lafayette, LA 70504                                                    |
+-----------------------------------------------------------------------*/

rspangle@jarthur.Claremont.EDU (Randy Spangler) (06/14/90)

In article <9983@rouge.usl.edu> pcb@gator.cacs.usl.edu (Peter C. Bahrs) writes:
>
>Well I solved the problem (I think).  For Edix and Procomm   .exe's I ran
>exehdr.  I think I got this with DOS or MS C compiler.  It listed
>the amout of memory needed, static I think.  I added 5 to this and
>used it in the PIF settings.  FINE.!!  I pulled up 5 edix and 3 procomm
>just to see.
>
>But I think this logic does not hold for files with overlays????  
>Quick C listed only 5k needed which definitely did not work.  
>
>I don't believe Edix and Procomm use overlays.  
>
>Is this the best approach to determine a PIF amount setting?
>

To determine the appropriate amount of memory for a PIF file, I usually
start by pulling up the full program in an exclusive command processor
with a full 640KB memory.  Then I shell out from the program to DOS
(most programs can do this - I'm sure Procomm can) and use MAPMEM, a program
from TSRCOM29.ZIP (available at fine ftp sites like Simtel20) to determine
the amount of free memory in the shell.  You could also use chkdsk to 
determine this number.  The difference between this number and 640K 
is how much memory the program requires.  I usually add 16-32K just to be safe.  

Example: (Telix)

1. Run exclusive command processor

		PIF file set to 640K

2. From exclusive command processor, run Telix

3. From Telix, shell to DOS

		memory free = 384K

640K - 384K = 256K required

256K + 32K 'safety margin' = 288K desired



-- 
 --------------------------------------------------------------------------
|    Randy Spangler                    |    The less things change, the    |
|    rspangle@jarthur.claremont.edu    |    more they remain the same      |
 --------------------------------------------------------------------------

jmerrill@jarthur.Claremont.EDU (Confusion Reigns) (06/15/90)

In article <7469@jarthur.Claremont.EDU> rspangle@jarthur.Claremont.EDU (Randy Spangler) writes:
>To determine the appropriate amount of memory for a PIF file, I usually
>start by pulling up the full program in an exclusive command processor
>with a full 640KB memory.  Then I shell out from the program to DOS
>(most programs can do this - I'm sure Procomm can) and use MAPMEM, a program
>from TSRCOM29.ZIP (available at fine ftp sites like Simtel20) to determine
>the amount of free memory in the shell.  You could also use chkdsk to 
>determine this number.  The difference between this number and 640K 
>is how much memory the program requires.  I usually add 16-32K just to be safe.  

Or, if you have QEMM 5.0, run LOADHI.COM with the /GS switch; when you exit
the program, QEMM will tell you how much memory it took up (and how much it
left TSR, if any).

--
Jason Merrill				jmerrill@jarthur.claremont.edu