Still celebrating National IT Professionals Day with 3 months of free Premium Membership. Use Code ITDAY17

x
?
Solved

EMM386.EXE  and  Windows 98

Posted on 1999-07-29
4
Medium Priority
?
1,061 Views
Last Modified: 2013-12-28

 This is a multiple part question, and I'm giving all my points for a definite answer. I'm installing Windows 98 on some machines, and have always used EMM386.EXE (for extended memory) with prior versions of Windows and MSDOS. But now I'm hearing assorted views regarding its use with Windows 98, and would like to know the facts.

 Does loading EMM386.EXE before the Windows 98 GUI either increase or decrease Windows' performance? Or does it make a difference?

 I've seen references to DOS having a memory limitation of 64 MB, and EMM386.EXE taking priority over Windows 98's attempts to manage the memory. Is this true, and would that limit Windows to the use of only 64 MB?

 I've also heard cases where Windows 98 "sees" only 64 MB of RAM, when there's actually more installed. I'm at two Windows 98 machines; one with 96 MB RAM, the other with 128 MB RAM. System Properties reports the correct memory totals on both. Does this mean Windows is "seeing" and will use the full amount of memory? How can I know for sure?

 I'd like to know that EMM386.EXE is not decreasing Windows 98's performance or memory management abilities, or otherwise conflicting. Please be as informative as possible, and share any tests that could be used for verification. Perhaps this is asking a lot, and I'm sorry I don't have more points to give... But it's a significant issue here and would be highly useful information! Thanks in advance...

 
0
Comment
Question by:bydie
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 2
  • 2
4 Comments
 
LVL 25

Accepted Solution

by:
dew_associates earned 800 total points
ID: 1676036
Hi Bydie!

Let's take your questions in the order posted. You will see your question in brackets and my response beneath it.

<<Does loading EMM386.EXE before the Windows 98 GUI either increase or decrease Windows' performance? Or does it make a difference?>>

Actually it make no difference performance wise one way or the other. On some older legacy machines, socket 5 or 7, where you want to format, boot to and install your cd rom drivers and then install Win98, it will improve the file copying time, but that's it. The Windows 98 GUI (graphical user interface) eliminates the effect of EMM386 and HIMEM when it takes over memory handling. The only time that these files may come back into play would be if you were to boot directly to a MSDos prompt. In some instances, EMM386 will interfere with the Win98 hardware detection.

If your loading systems using either the Win98 Instal Diskette or the Windows 98 Startup Disk, you really don't have to do anything more than format the drive. You don't even have to transfer the system files, as the Win98 install checks for them and installs them if they're not found. I transfer them during format out of habit more than anything.

<<I've seen references to DOS having a memory limitation of 64 MB, and EMM386.EXE taking priority over Windows 98's attempts to manage the memory. Is this true, and would that limit Windows to the use of only 64 MB?>>

Again, this is a legacy hardware issue that related to Win95. If you're using current hardware with update YR2K qualified Bios's and the motherboard will support 128, 256, 768 etc, you can use it. Win98 will use anything you put in there as long as the MB and bios support it.

<<I've also heard cases where Windows 98 "sees" only 64 MB of RAM, when there's actually more installed. I'm at two Windows 98 machines; one with 96 MB RAM, the other with 128 MB RAM. System Properties reports the correct memory totals on both. Does this mean Windows is "seeing" and will use the full amount of memory? How can I know for sure?

If Windows 98 sees it, it will use it. This issue is no longer Win98 related, it is Bios related.

<<I'd like to know that EMM386.EXE is not decreasing Windows 98's performance or memory management abilities, or otherwise conflicting. Please be as informative as possible, and share any tests that could be used for verification.>>>

What I would suggest you do is visit the Microsoft Personal Support area, the Microsoft Knowledge Base and search using EMM386. This will bring up all of the current issues that involve it. Will their be instances where it needs to be in config.sys, yes. Some older programs need as much convetional memory as possible, and the Win98 kernel is still dos dependent. However, for applications that are current, there really is no need for it. Actually, the config.sys and autoexec.bat file that Win98 installs is for dos purposes.

There are many testing programs out there to use, but since the Win98 GUI does not depend on this file, the testing issue is moot.

<<Perhaps this is asking a lot, and I'm sorry I don't have more points to give... But it's a significant issue here and would be highly useful information!>>

Don't worry about the points, but a good understanding of how Win98 operates will help you more than trying to understand EMM386.

If you need more, just ask!
Dennis


0
 

Author Comment

by:bydie
ID: 1676037
Adjusted points to 200
0
 

Author Comment

by:bydie
ID: 1676038

Thanks for the detailed comments. (My apologies for not responding sooner.) I accept the answer, but waited till today and can afford to up the points a little. That'll wipe my account, i guess. Meanwhile, if you have time, could you just clear up a couple of things?

I now understand that; as long as the BIOS sees an amount of memory (and the system boots to the Windows GUI and doesn't crash) that Windows will use it. Thanks for clearing that up.

Regarding EMM386.EXE, you mentioned I should "visit the Microsoft Personal Support area, the Microsoft Knowledge Base and search using EMM386. This will bring up all of the current issues that involve it."

Actually, I did that before posting here, and also searched the web in general. After hitting lots of ambiguous opinions, I decided to let someone else do the legwork! :)  As to MS Knowledge Base; although I get numerous hits on EMM386, I find nothing on whether to use it with Windows 98. (I've noticed Windows doesn't load EMM386.EXE during install; that you have to manually add it to CONFIG.SYS if you want it. I thought that might mean something.) Anyway, could you please provide links to the articles you mentioned?

You said, "...it make no difference performance wise one way or the other."

If so, I'd like to continue setting up systems in the following manner, using EMM396.EXE to provide access to the upper memory area and extended memory in DOS sessions, and loading high everything possible. I've even noticed that VMM32 loads a big chunk into upper memory if it's available:

Name            Total                Conventional        Upper Memory

vmm32      125,264 (122K)      3,472 (3K)          121,792 (119K)


As I'm sure you know, there may be times when you haven't a choice... e.g., on a few systems, a Sound Blaster driver in the SYSTEM directory writes a line to the AUTOEXEC.BAT file every time Windows starts (comes right back if you delete it) which loads a program to set the Blaster environment in a DOS seesion. It also adds the line to DOSSTART.BAT, which makes sense, although the program isn't needed in Windows. But the deal is, the program won't run unless EMM386.EXE or some other memory manager is loaded!

For this and other reasons, I'd like to use the same basic startup files on all future systems (changing the applicable CD driver as appropriate, etc.) So do you see anything wrong with the following startup files as regards running on any new systems with Windows 98?


DEVICE=C:\WINDOWS\HIMEM.SYS /VERBOSE
DEVICE=C:\WINDOWS\EMM386.EXE /NOEMS /VERBOSE
DOS=HIGH,UMB
DEVICEHIGH=C:\WINDOWS\COMMAND\CDDRIVER.SYS /D:BYDIECD1

-----------

@ECHO OFF
PROMPT $P
PATH C:\WINDOWS\COMMAND;C:\WINDOWS;C:\
SET TMP=C:\TEMP
SET TEMP=C:\TEMP
'Various SET command environment variables removed here--
rem LOADHIGH C:\WINDOWS\COMMAND\MSCDEX.EXE /D:BYDIECD1 /V
rem LOADHIGH C:\WINDOWS\SMARTDRV.EXE /X /V
rem LOADHIGH C:\WINDOWS\COMMAND\MOUSE.COM
LOADHIGH C:\WINDOWS\COMMAND\DOSKEY.COM
CLS

-----------

And I guess that's about it... You said, "If you need more, just ask!" Bet you didn't know we were so curious. But again, the answers to these things will eliminate a lot of time and concern in future installations. Thanks again for the help!

 
0
 
LVL 25

Expert Comment

by:dew_associates
ID: 1676039
Okay, let me respond in the order of your post, if for no other reason than clarity.

<<I accept the answer, but waited till today and can afford to up the points a little. That'll wipe my account, i guess.>>

I appreciate your doing this, however for the future it isn't necessary. This site is based on sharing knowledge and helping people.

<<Anyway, could you please provide links to the articles you mentioned?>>

Here's some URL's that you might find useful.

http://users.aol.com/axcel216/secrets.htm

EMM386 switches:

http://www.jenntel.com/Jenntel/JenntelUcache/emm386.htm

These article from the MS Knowledge Base:

Q187694 02-05-1999
Q134399 01-22-1999
Q188140 02-09-1999
Q87239  01-13-1999
Q188561 02-13-1999
Q232557 05-19-1999
Q191473 01-21-1999
Q138788 03-24-1999

The above will provide you with a good cross section of how emm386 interacts with Windows 95/98.

<<You said, "...it make no difference performance wise one way or the other." If so, I'd like to continue setting up systems in the following manner, using EMM396.EXE to provide access to the upper memory area and extended memory in DOS sessions, and loading high everything possible. I've even noticed that VMM32 loads a big chunk into upper memory if it's available:>>

True, I did say it makes no difference performance wise, but don't take that out of context. When dealing with Himem.sys and emm386 called from within config.sys, your dealing with 16bit memory as opposed to 32bit memory once the Windows GUI loads. Win95/98 can load and unload upper memory areas (within reason) at will, so don't confuse the two. When you examine upper memory and see VMM32 loaded, remember your viewing it through the 16bit mode, not 32bit.

<<As I'm sure you know, there may be times when you haven't a choice... e.g., on a few systems, a Sound Blaster driver in the SYSTEM directory writes a line to the AUTOEXEC.BAT file every time Windows starts (comes right back if you delete it) which loads a program to set the Blaster environment in a DOS seesion. It also adds the line to DOSSTART.BAT, which makes sense, although the program isn't needed in Windows. But the deal is, the program won't run unless EMM386.EXE or some other memory manager is loaded!>> This is true for many of the Creative Labs products and we still haven't received an adequate answer from them as to why except that it's *their* presumption that everyone will be running MSDos based games.

<<For this and other reasons, I'd like to use the same basic startup files on all future systems (changing the applicable CD driver as appropriate, etc.) So do you see anything wrong with the following startup files as regards running on any new systems with Windows 98?>>


DEVICE=C:\WINDOWS\HIMEM.SYS /VERBOSE
DEVICE=C:\WINDOWS\EMM386.EXE /NOEMS /VERBOSE
DOS=HIGH,UMB
DEVICEHIGH=C:\WINDOWS\COMMAND\CDDRIVER.SYS /D:BYDIECD1

-----------

@ECHO OFF
PROMPT $P
PATH C:\WINDOWS\COMMAND;C:\WINDOWS;C:\
SET TMP=C:\TEMP
SET TEMP=C:\TEMP
'Various SET command environment variables removed here--
rem LOADHIGH C:\WINDOWS\COMMAND\MSCDEX.EXE /D:BYDIECD1 /V
rem LOADHIGH C:\WINDOWS\SMARTDRV.EXE /X /V
rem LOADHIGH C:\WINDOWS\COMMAND\MOUSE.COM
LOADHIGH C:\WINDOWS\COMMAND\DOSKEY.COM
CLS
=====================================================

At first blush, I see nothing wrong with either of these files presuming that the systems you are building are intended to permit immediate MSDos based gaming froma true dos prompt or Win98 booted to dos, inclusive of cd rom based games.

While I have no idea of how many systems you are building weekly, monthly etc, but if you're doing a lot of them, you may want to consider batch installs and then add the config.sys and autoexec.bat afterwards to speed the install rather than having to build these files every time you build a system.
-----------

<<You said, "If you need more, just ask!" Bet you didn't know we were so curious. But again, the answers to these things will eliminate a lot of time and concern in future installations. Thanks again for the help!>>

I enjoy the questions and I enjoy people looking for faster and better ways of doing things. AND, you are quite welcome anytime!
Dennis


0

Featured Post

Enroll in September's Course of the Month

This month’s featured course covers 16 hours of training in installation, management, and deployment of VMware vSphere virtualization environments. It's free for Premium Members, Team Accounts, and Qualified Experts!

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

This article shows how to use a free utility called 'Parkdale' to easily test the performance and benchmark any Hard Drive(s) installed in your computer. We also look at RAM Disks and their speed comparisons.
This article provides a convenient collection of links to Microsoft provided Security Patches for operating systems that have reached their End of Life support cycle. Included operating systems covered by this article are Windows XP,  Windows Server…
This video Micro Tutorial explains how to clone a hard drive using a commercial software product for Windows systems called Casper from Future Systems Solutions (FSS). Cloning makes an exact, complete copy of one hard disk drive (HDD) onto another d…
Windows 10 is mostly good. However the one thing that annoys me is how many clicks you have to do to dial a VPN connection. You have to go to settings from the start menu, (2 clicks), Network and Internet (1 click), Click VPN (another click) then fi…

715 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question