1.

Solve : Optimizing ms-dos shell in Win xp?

Answer»

Can someone send me a link explaining the options page for ms-dos shell in Windows XP? I can't seem to find one

I have a Video store POS running through a dos shell running very fast but still not instant response (I'm finicky) - I'm just trying to tweak it as much as possible. When I would wright a config.sys file in the past for stand alone dos 6.22, I would specify buffers and read ahead buffers (usually set at 50, 0) But this was on a system running a Pentium 25mhz with like 4mb of ram. Now I have it running on AMD 2500+ BUS 512mb ram 150mb/s SATA NTFS, and It is way, way faster! What I want to know is how to fully take advantage of a faster system that is solely used for an ms-dos shell and nothing else but should still take advantage of XP's NTFS and 512mb of ram for a Point of Sale system consisting of ~5000 clients, ~52000 movie titles and so on (all very very small files - just a lot of them) Under the options for an ms-dos shortcut I see "Command History" with "buffer size" and "Number of buffers" under that is a check box "Discard old duplicates". Next to these there are two check boxes for "QUICK edit mode" and "insert mode" Would someone help me to utilize this computer for the fastest possible ms-dos shell experience on a computer used for nothing else except sharing a local drive with a terminal PC connected to a stand alone hub? ThanksOk, to simplify my question - is there anyway I can tell cmd.com to go hog wild with my ram? or does windows xp let it do that already?Quote from: nitsudm

is there anyway I can tell cmd.com to go hog wild

Can you simplify the query a little more - are you opening your program in Command.com or Cmd.exe
I'm using a shortcut to cmdThat would be CMD.EXE

And about your question, you want CMD to just hog up as much RAM as possible or just control it to use a limited or user specified amount of RAM?Quote
That would be CMD.EXE

I believe you are right - I hadn't payed attention to that detail - If I had the option I would like to try both, but I guess having control over a specified amount would be the way to go. There isn't a option that is made specifically to alter the amount of RAM that CMD uses but you can change the Command Buffer(It holds all the recently entered commands) to a low value, this wouldn't change it by much but that seems to be all that I can think of for changing the amount of RAM that CMD uses.

To do this:
Right Click on the Title Bar for CMD and hit Properties, a dialog will appear and under a frame that says "Command History" there is the buffer size, just change that size however you want and hit OK.

Hope this helps
,Nick(macdad-)I believe that its set to default - size:50 and 4 buffers - what would your recommendation be? higher size? more buffers? less...not sure which way to go. Cmd.exe is a Dos emulator program i.e. it runs in a Window and emulates (copies) the functions of Dos. It is not an operating system in any form ALTHOUGH it looks, performs and sometimes smells like a Dos version. Windows will allocate available resources to Cmd.exe as required/available.

Quote from: nitsudm
Can someone send me a link explaining the options page for ms-dos shell in Windows XP

The syntax for Cmd.exe is here..

Quote from: nitsudm
Under the options for an ms-dos shortcut I see "Command History" with "buffer size" and "Number of buffers" under that is a check box "Discard old duplicates". Next to these there are two check boxes for "quick edit mode" and "insert mode"

In Command History, Buffer Size and Number of Buffers refer only to the collection and storage of commands which are entered at the Command Prompt, if you don't use such info then ignore the entries. Quick Edit Mode and Insert Mode refer only to the editing modes allowed at the Command Prompt.

Open Windows Task Manager Processes tab to see how much ram has been allocated to Cmd.exe and/or your program at any time.Great - I just wanted to make sure that it was taking advantage of all the resources available. Thanks a lotQuote from: Dusty on May 26, 2009, 10:40:07 AM
Cmd.exe is a Dos emulator program i.e. it runs in a Window and emulates (copies) the functions of Dos.

Isn't that COMMAND.COM? Which runs old 16-bit MS-DOS programs? Where you can edit Config.nt and autoexec.nt? To set EMS/XMS etc?

(cmd.exe is the Win32 command interpreter, which looks like MS-DOS but isn't.)

I think we need to get this clear.
I'm am definitely running cmd.exe from the system32 folder which also contains command.com - I know it's not really dos, but my dos application runs flawlessly when run through cmd. When I run the app through command.com it's performance is choppy at best. They seem to both look identical in appearance and yet I receive different results between the two. Regardless, the emulation works great - the app is fast, I can print to usb, and even open a cash drawer through COM1 - so I'm happy. I'm just trying to tweak it as much as I can to get the best performance out of it - but I think I'm done. I just have a small mapping inconsistency to work out with a network drive and the terminal PC - which I think I may post later to get some help with if I can't work it out myself.To the question "is there anyway I can tell cmd.com to go hog wild with my ram?"
My personal answer is no, and I believe many I.T. professionals would agree.
You can get alternative "YES" answers if you look for them.
GOOGLE gives 265,000 results when searching "ram defragmenter"
Google gives 476,000 results when searching "ram optimiser"
Both sets of results include "free" products, they also include things to hit your credit card.
Google gives 1,2500,000 results when searching "snake oil", and I think that is as useful as the "ram ..." improvers above ! ! !

If you want to make it run faster, I suggest using the Processes tab in Windows Task Manager and clicking on the CPU column so the highest CPU usage is at the top.
So long as CMD.EXE is using far more than anything else ( other than "System Idle Process" which merely shows how much is spare - in excess of present needs ) then your program is probably going as fast as its little legs will take it.

BUT watch out for any anti-virus or firewall activity, or any "phone-home" internet actions, which may slow down your program, or even delay for authorisation.


Quote from: Dusty on May 26, 2009, 10:40:07 AM
Open Windows Task Manager Processes tab to see how much ram has been allocated to Cmd.exe and/or your program at any time.

Perhaps "how much ram has been allocated" may be misunderstood.

To me "allocated" implies a specific reservation for a specified person/purpose,
and such an interpretation is totally false in the context of this thread.

My credit card statement shows :-
The credit limit allocated (which is permanently fixed until they alter it) ;
The credit balance available (the more I spend the less is available) ;
Credit used total;
and each of the items that have been charged.

Similarly Windows Task Manager => Performance shows me
Physical Memory :-
Total 1292720 K (This is a permanent allocation that never changed since I added 1 GB.)
Available 810400 K (new different number every other second)
Most of the physical memory that is NOT available is in
System Cache 396104 (new different number every other second)
The rest of what is NOT available is what each of the Processes are using at any instant in time.

Windows Task Manager => Processes shows me
Commit charge 307M / 1478M (quite stable, but both increased 1% when I launched another instance of Firefox, and both leapt up another 10% when I opened a web-based email account.

Windows Task Manager will show many things for each process.
For Firefox I did see :-
Mem Usage = 98,008 K (twitching up and down)
Peak Mem = 116,704 K (stable)
VM Size = 85,844 K (twitching up and down)
BUT after adding a second instance of Firefox, and launching email
Mem Usage = 117,204 K
Peak Mem = 123,364 K
VM Size = 106,560 K

Regards
Alan

Quote from: Dusty
Cmd.exe is a Dos emulator program i.e. it runs in a Window and emulates (copies) the functions of Dos.

Quote from: Dias de verano on May 26, 2009, 12:44:02 PM
Isn't that COMMAND.COM? Which runs old 16-bit MS-DOS programs? Where you can edit Config.nt and autoexec.nt? To set EMS/XMS etc?

(cmd.exe is the Win32 command interpreter, which looks like MS-DOS but isn't.)

Who am I to argue? Following quote from Wiki

Quote
Technically, cmd.exe is a Windows program that acts as a DOS-like command line interpreter. It is generally compatible, but provides extensions which address the limitations of COMMAND.COM:

Quote from: ALAN_BR
Perhaps "how much ram has been allocated" may be misunderstood.

To me "allocated" implies a specific reservation for a specified person/purpose,
and such an interpretation is totally false in the context of this thread.

The important "at any time" has been omitted. Allocated, in this context, is meant to show the ram being used by the process at the time the query is initiated. This value can change as and when other processes are started/stopped.The History Buffer seems like the logical choice here since it stores the previously entered commands in RAM(I believe), but what else could be adjusted to change the amount of RAM that CMD uses?


Discussion

No Comment Found