Solved

Why is DOS slow on a Pentium?

Posted on 1999-01-02
3
250 Views
Last Modified: 2012-06-27
My workhorse PC is a 486DX2-66 with h/w disk cache running DRDOS6.  I program in MS "QuickBasic" (compiled) for DOS and for a 486 my PC is very fast.  I also have a P100 laptop (Toshiba 210CS).  In DOS this is much slower than the 486.  I think any instruction that writes to the text screen slows a program down.

Worse I now find that some (if not all) Pentiums have a more sinsiter speed problem.  I have written a QuickBasic front end controlling an interrupt-driven serial-port driver written in assembler.  Works fine on my 486.  On some Pentiums (e.g. a 166MHz) it misses great chunks of date e.g. incoming on COM1 at 9600 baud - often over 20 bytes in succession, so cant be solved by invoking 16550 16-byte buffer.  This makes my software unusable on Pentiums.  Does anyone know why this is?

Surely the 166MHz P cannot be inherently slower than a 486? It can't be anything simply if it affects an interrupt routine.  Is it some goblin put into modern BIOS's that aartificially slow down DOS software in an attempt to kill it dead?
0
Comment
Question by:microlit
  • 2
3 Comments
 
LVL 2

Accepted Solution

by:
Laphroaig earned 100 total points
Comment Utility
Pentium Processor architecture is somewhat different from 486 architecture. Do you have a copy of Intels Programming Reference Manual and Instruction Sets for Pentium Processors.

If you are writing code purely based on 486's, then you are not taking advantage of newer, faster routines that Pentiums provide in their Instruction sets for trapping interupts etc. Pentiums provide faster routines for doing everything that previous *86's could do, but there is a trade off in speed against backward compatability.

At machine level, the faster the processor, and the faster the bus speed, then the faster your program will run. It does'nt matter about operating systems because you are writing code specifically for the processor.

Code compiled from Basic is clumsy to say the least. C++ is better, but Assembly is best of all because it is processor specific.

If you go to Intel's website then you can download their Programmers Reference Manual. It will give you all the info that you need to know.
0
 

Author Comment

by:microlit
Comment Utility
Thanks for a starting point: I find it hard to believe that optimising the P for its "own code" leaves it so very much slower in backwards compatible X86 code, but I will do as you suggest and consult the Intel Prog Ref.  
0
 

Author Comment

by:microlit
Comment Utility
having uploaded some stuff from Intel, and searched around their site, I regret I can find no info explaining my problem.

Intel do claim all thier chips are fully backward compatible as surely they must be.

I repeat, what I am bugging about is a GROSS reduction in speed that cannot I think be because a P is optimised for something else.  We are talking about a P166 going an estimated 10x slower than a 486-66.
0

Featured Post

How to improve team productivity

Quip adds documents, spreadsheets, and tasklists to your Slack experience
- Elevate ideas to Quip docs
- Share Quip docs in Slack
- Get notified of changes to your docs
- Available on iOS/Android/Desktop/Web
- Online/Offline

Join & Write a Comment

Suggested Solutions

I recently purchased an HP EliteBook 2540p notebook/laptop. It has two video ports on it – VGA and DisplayPort. HP offers an optional docking station for the 2540p that also has both a VGA port and a DisplayPort. There are numerous online reports do…
The Rasberry PI is a low cost piece of hardware that you can have a lot of fun with through experimenting and building/working on projects like media players, running a low cost computer, build data loggers etc. - see: https://www.raspberrypi.org
In this seventh video of the Xpdf series, we discuss and demonstrate the PDFfonts utility, which lists all the fonts used in a PDF file. It does this via a command line interface, making it suitable for use in programs, scripts, batch files — any pl…
You have products, that come in variants and want to set different prices for them? Watch this micro tutorial that describes how to configure prices for Magento super attributes. Assigning simple products to configurable: We assigned simple products…

772 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

Need Help in Real-Time?

Connect with top rated Experts

12 Experts available now in Live!

Get 1:1 Help Now