VOGONS

Common searches


First post, by aries-mu

User metadata
Rank Member
Rank
Member

Hi there,

are you aware of any kind of TSR or driver to load in the CONFIG.SYS or AUTOEXEC.BAT that enables MS-DOS to see and use two or more CPU on old computers, even if not natively, kind of simulated-ish, to split the calculations requested by any software towards the 2 CPUs?

Maybe something like RAID software/drivers do with hard drives?

Curiosity: if not, would any of you be able to write such a software?

Thanks!

They said therefore to him: Who are you?
Jesus said to them: The beginning, who also speak unto you

Reply 1 of 18, by DosFreak

User metadata
Rank l33t++
Rank
l33t++

MS-DOS is no longer being developed and there is hardly any new DOS software being developed.

You could ask the FreeDOS devs if they have plans for such a feature.

DOSBox Compilation Guides
DosBox Feature Request Thread
PC Game Compatibility List
How To Ask Questions The Smart Way
Running DRM games offline

Reply 2 of 18, by gdjacobs

User metadata
Rank l33t++
Rank
l33t++

No.

It may be technically possible to write SMP support directly into a DOS application (that's a low-level detail I'm not sure on), but at that point you're expending a hell of a lot of work for something that could be done much easier with Unix, or later on Win NT or OS/2.

There are multitasking variants of DOS (and CP/M), but that's not the same thing.

All hail the Great Capacitor Brand Finder

Reply 4 of 18, by cyclone3d

User metadata
Rank l33t
Rank
l33t

Yeah, FreeDOS would really be the only way to do this properly (multi-processor or hyper-threading)

Could be possible to implement this is DOSBOX as well. Probably actually a lot easier.

In regular old DOS, there are threading libraries available, but it is going to be slower than single threaded programs because it is really just going to be doing task switching and the overhead of syncing everything up and the overhead of thread locks is just counter-productive.

Yamaha YMF modified setupds and drivers
Yamaha XG resource repository - updated November 27, 2018
Yamaha YMF7x4 Guide
AW744L II - YMF744 - AOpen Cobra Sound Card - Install SB-Link Header
Epstein didn't kill himself

Reply 5 of 18, by aries-mu

User metadata
Rank Member
Rank
Member
cyclone3d wrote:

Yeah, FreeDOS would really be the only way to do this properly (multi-processor or hyper-threading)

Could be possible to implement this is DOSBOX as well. Probably actually a lot easier.

In regular old DOS, there are threading libraries available, but it is going to be slower than single threaded programs because it is really just going to be doing task switching and the overhead of syncing everything up and the overhead of thread locks is just counter-productive.

Oh, I see, this is all very interesting, thanks!
Well, I guess because DOS is not multitasking, so basically the 2 CPUs wouldn't be used at the same time but switched between, correct?

They said therefore to him: Who are you?
Jesus said to them: The beginning, who also speak unto you

Reply 6 of 18, by CrossBow777

User metadata
Rank Member
Rank
Member
gdjacobs wrote:

No.

It may be technically possible to write SMP support directly into a DOS application (that's a low-level detail I'm not sure on), but at that point you're expending a hell of a lot of work for something that could be done much easier with Unix, or later on Win NT or OS/2.

There are multitasking variants of DOS (and CP/M), but that's not the same thing.

Yeap I worked with Concurrent DOS quite a bit in the later 90s. Amazing at the time I thought to have each instance of its Command.com load up and control a separate 1024k of memory in the computer and be able to switch between them on the fly with keyboard shortcuts!

Kinda miss that version....

g883j7-2.png
Midi Modules: MT-32 (OLD), MT-200, MT-90, SD-20

Reply 7 of 18, by aries-mu

User metadata
Rank Member
Rank
Member
CrossBow777 wrote:
gdjacobs wrote:

No.

It may be technically possible to write SMP support directly into a DOS application (that's a low-level detail I'm not sure on), but at that point you're expending a hell of a lot of work for something that could be done much easier with Unix, or later on Win NT or OS/2.

There are multitasking variants of DOS (and CP/M), but that's not the same thing.

Yeap I worked with Concurrent DOS quite a bit in the later 90s. Amazing at the time I thought to have each instance of its Command.com load up and control a separate 1024k of memory in the computer and be able to switch between them on the fly with keyboard shortcuts!

Kinda miss that version....

Wow man that's fantastic!
Never heard of Concurrent DOS before!

They said therefore to him: Who are you?
Jesus said to them: The beginning, who also speak unto you

Reply 8 of 18, by Jo22

User metadata
Rank l33t
Rank
l33t

There also was DESQView, a real-mode multi-tasking extension that didn't require V86 and DESQView X a protected mode environment with X11 support.
Both supported EMS, if available. In addition, there also was DoubleDOS and another 8086 application, which name I forgot..
From the Z-80 times, I also remember MP/M, the "full" version of CP/M with multi-user/-tasking abilities.

Edit: Last, but not least, there's PC-MOS/386, a true multi-user/-tasking operating system with DOS5 compatibility.
It has been released under GPL not long ago. See PC-MOS/386 released under GPL

"Time, it seems, doesn't flow. For some it's fast, for some it's slow.
In what to one race is no time at all, another race can rise and fall..." - The Minstrel

//My video channel//

Reply 9 of 18, by Azarien

User metadata
Rank Oldbie
Rank
Oldbie

I wonder if it's even possible to do without breaking compatibility with things like DOS sound cards.

Multiprocessing requires different interrupt controller to be used (APIC) which may mean that classic way of initializing and handling SoundBlaster IRQ may no longer work, requiring emulation.

My knowledge is clearly insufficient in this topic though.

Task switching on a single core vs using multiple cores are different things. One could imagine a DOS-like system running concurrently on many cores, yet without any task switching on those cores.

Reply 10 of 18, by aries-mu

User metadata
Rank Member
Rank
Member
Jo22 wrote:
There also was DESQView, a real-mode multi-tasking extension that didn't require V86 and DESQView X a protected mode environment […]
Show full quote

There also was DESQView, a real-mode multi-tasking extension that didn't require V86 and DESQView X a protected mode environment with X11 support.
Both supported EMS, if available. In addition, there also was DoubleDOS and another 8086 application, which name I forgot..
From the Z-80 times, I also remember MP/M, the "full" version of CP/M with multi-user/-tasking abilities.

Edit: Last, but not least, there's PC-MOS/386, a true multi-user/-tasking operating system with DOS5 compatibility.
It has been released under GPL not long ago. See PC-MOS/386 released under GPL

Oh wow man, thanks SO MUCH for all this info! I don't know why I missed your reply!

Azarien wrote:
I wonder if it's even possible to do without breaking compatibility with things like DOS sound cards. […]
Show full quote

I wonder if it's even possible to do without breaking compatibility with things like DOS sound cards.

Multiprocessing requires different interrupt controller to be used (APIC) which may mean that classic way of initializing and handling SoundBlaster IRQ may no longer work, requiring emulation.

My knowledge is clearly insufficient in this topic though.

Task switching on a single core vs using multiple cores are different things. One could imagine a DOS-like system running concurrently on many cores, yet without any task switching on those cores.

Thanks, interesting points... I wouldn't know either...

They said therefore to him: Who are you?
Jesus said to them: The beginning, who also speak unto you

Reply 11 of 18, by Jo22

User metadata
Rank l33t
Rank
l33t
aries-mu wrote:

Oh wow man, thanks SO MUCH for all this info! I don't know why I missed your reply!

You're welcome! 😀

PS: If you're facing issues with PC-MOS, just let me know.
My father and me used it for a long time.

"Time, it seems, doesn't flow. For some it's fast, for some it's slow.
In what to one race is no time at all, another race can rise and fall..." - The Minstrel

//My video channel//

Reply 12 of 18, by aries-mu

User metadata
Rank Member
Rank
Member
Jo22 wrote:
You're welcome! :) […]
Show full quote
aries-mu wrote:

Oh wow man, thanks SO MUCH for all this info! I don't know why I missed your reply!

You're welcome! 😀

PS: If you're facing issues with PC-MOS, just let me know.
My father and me used it for a long time.

Thank you SO MUCH brother!!! deeply appreciated.
Well, I missed that dual Pentium Pro opportunity... money money....

But thanks!!!

They said therefore to him: Who are you?
Jesus said to them: The beginning, who also speak unto you

Reply 13 of 18, by Jo22

User metadata
Rank l33t
Rank
l33t

Thanks for these kind words! Glad I could help! 😊

Best regards,
Jo22

PS: Pentium Pro sounds like a cool idea. 😎
When I started with Win XP, I always wanted one..

"Time, it seems, doesn't flow. For some it's fast, for some it's slow.
In what to one race is no time at all, another race can rise and fall..." - The Minstrel

//My video channel//

Reply 14 of 18, by aries-mu

User metadata
Rank Member
Rank
Member
Jo22 wrote:
Thanks for these kind words! Glad I could help! :blush: […]
Show full quote

Thanks for these kind words! Glad I could help! 😊

Best regards,
Jo22

PS: Pentium Pro sounds like a cool idea. 😎
When I started with Win XP, I always wanted one..

Yeah, it would definitely have been cool to have a dual cpu Pentium Pro too!

They said therefore to him: Who are you?
Jesus said to them: The beginning, who also speak unto you

Reply 15 of 18, by Jo22

User metadata
Rank l33t
Rank
l33t
aries-mu wrote:

Yeah, it would definitely have been cool to have a dual cpu Pentium Pro too!

Yes, my friend, definitely! 😀 The Pentium Pro had style and an excellent design.
Alas, the world wasn't ready yet when it debuted (too much 16-Bit code around).

To me, that processor was somehow like a mystery. Before we had internet access (just BTX/CompuServe),
I always wondered what was up with that Visual Basic 6 compiler option for this "Pentium Pro".

When we "got" Win XP, I remembered the PPro and wondered how it would perform in a dual processor configuration.
This was before dual core was a thing or hyperthreading got popular even (it was all about Pentium II/III at the time still).

"Time, it seems, doesn't flow. For some it's fast, for some it's slow.
In what to one race is no time at all, another race can rise and fall..." - The Minstrel

//My video channel//

Reply 16 of 18, by aries-mu

User metadata
Rank Member
Rank
Member
Jo22 wrote:
Yes, my friend, definitely! :) The Pentium Pro had style and an excellent design. Alas, the world wasn't ready yet when it debut […]
Show full quote
aries-mu wrote:

Yeah, it would definitely have been cool to have a dual cpu Pentium Pro too!

Yes, my friend, definitely! 😀 The Pentium Pro had style and an excellent design.
Alas, the world wasn't ready yet when it debuted (too much 16-Bit code around).

To me, that processor was somehow like a mystery. Before we had internet access (just BTX/CompuServe),
I always wondered what was up with that Visual Basic 6 compiler option for this "Pentium Pro".

When we "got" Win XP, I remembered the PPro and wondered how it would perform in a dual processor configuration.
This was before dual core was a thing or hyperthreading got popular even (it was all about Pentium II/III at the time still).

I can almost see your points from your eyes. Similar "feelings" happened to me regarding other products. Just to frame the context more clearly, I started my computer passion in 1992 (I was 12 years old), and I gained enough "confidence" to know what pieces of hardware/configurations to "desire" and to "dream about" around 1993/1994 and ahead.

About Pentium Pro, specifically, I still kind of visually remember the cover of my beloved Computer Magazine at that time (the Italian version of PC Magazine) showing the new processor: The Pentium Pro! I almost had just fallen in love with the Pentium, and it was already waaaaaay too expensive even for my dreams, and now this new beast: The Pentium Pro!!! Imagine what could it do!!! How could it run this, this, and this app or games I have which are pretty heavy! I would run this, this, and this benchmark on it if I had one on my desk! Wow!

That was the general feeling. The specific feeling was like a kind of mystical machine I will never have the pleasure to try or use or own 😀

They said therefore to him: Who are you?
Jesus said to them: The beginning, who also speak unto you

Reply 17 of 18, by dr_st

User metadata
Rank l33t
Rank
l33t
aries-mu wrote:

Hi there,

are you aware of any kind of TSR or driver to load in the CONFIG.SYS or AUTOEXEC.BAT that enables MS-DOS to see and use two or more CPU on old computers, even if not natively, kind of simulated-ish, to split the calculations requested by any software towards the 2 CPUs?

You're asking for a feature that even modern, multi-processor capable OSes don't have. Being able to schedule different processes on different cores is one thing. Automatically splitting computational tasks requested by any piece of software between multiple cores is not something that is generally possible (the ability to split computations into smaller tasks depends highly on the nature of the computations, and their dependencies), and is beyond the scope of responsibilities of a general-purpose OS.

https://cloakedthargoid.wordpress.com/ - Random content on hardware, software, games and toys

Reply 18 of 18, by aries-mu

User metadata
Rank Member
Rank
Member
dr_st wrote:
aries-mu wrote:

Hi there,

are you aware of any kind of TSR or driver to load in the CONFIG.SYS or AUTOEXEC.BAT that enables MS-DOS to see and use two or more CPU on old computers, even if not natively, kind of simulated-ish, to split the calculations requested by any software towards the 2 CPUs?

You're asking for a feature that even modern, multi-processor capable OSes don't have. Being able to schedule different processes on different cores is one thing. Automatically splitting computational tasks requested by any piece of software between multiple cores is not something that is generally possible (the ability to split computations into smaller tasks depends highly on the nature of the computations, and their dependencies), and is beyond the scope of responsibilities of a general-purpose OS.

Wow, I wouldn't have imagined that!

They said therefore to him: Who are you?
Jesus said to them: The beginning, who also speak unto you