[comp.os.msdos.misc] Multitasking?

brucen@CSUFresno.EDU (Bruce Nelson) (12/13/90)

I've heard alot about multitasking but not quite sure what true 
multitasking is (according to IBM).

Is there anyone in netland that might be able to tell me what
"true" multitasking is, which microproccessors (8088, 80286,
80386sx, 80386, 80486) are able to multitask, and what type of
software allows multitasking.

Thanks

Bruce Nelson
internet: brucen@zimmer.CSUfresno.edu

josef@nixpbe.nixdorf.de (josef Moellers) (12/14/90)

In <1990Dec13.033748.18606@CSUFresno.EDU> brucen@CSUFresno.EDU (Bruce Nelson) writes:

>I've heard alot about multitasking but not quite sure what true 
>multitasking is (according to IBM).

>Is there anyone in netland that might be able to tell me what
>"true" multitasking is, which microproccessors (8088, 80286,
>80386sx, 80386, 80486) are able to multitask, and what type of
>software allows multitasking.

This sounds like the question about life and the reason for being B-{)
I'll try and give an explanation about "multitasking":
Simply stated, "multitasking" means that You can run "multi"ple "task"s
more or less in parallel on a machine.
A "task" being described not only by "physical" things like
- a memory image (i.e. program code and it's data)
- processor registers
but also by "administrative" things like
- task priority
- access rights to various parts of the machine (HW & SW).
This data is usually kept in a descriptor sometimes referred to as a "task
descriptor block". The multitasking runtime system then "simply" switches
between these descriptors thereby activating the tasks.

I once implemented a simple multitasking system on a Z8. I.e. You can
implement multitasking on just about every microprocessor,
but You'll need more advanced processors to implement things like
protection. Also these processors sometimes have special instructions to
implement key features of multitasking, like task switching.

--
| Josef Moellers		| c/o Siemens Nixdorf Informationssysteme AG |
|  USA: mollers.pad@nixdorf.com	| Abt. STO-XS 113			     |
| !USA: mollers.pad@nixdorf.de	| Heinz-Nixdorf-Ring			     |
| Phone: (+49) 5251 104662	| D-4790 Paderborn			     |

lsalomo@hubcap.clemson.edu (lsalomo) (12/15/90)

From article <1990Dec13.033748.18606@CSUFresno.EDU>, by brucen@CSUFresno.EDU (Bruce Nelson):
> I've heard alot about multitasking but not quite sure what true 
> multitasking is (according to IBM).
> 
> Is there anyone in netland that might be able to tell me what
> "true" multitasking is, which microproccessors (8088, 80286,
> 80386sx, 80386, 80486) are able to multitask, and what type of
> software allows multitasking.

With the proper software, any of those CPUs could multitask.  However, it isn't
so much the multitasking, but the other features that need to be provided, like
protection of address space (, etc.) that only the 80286 (and later CPUs) can
provide (note that this deals only with the 80x86 line of CPUs.  Many others
are also used in multitasking OSs).

Cheers,
Q - the "Q"uestor for knowledge (, a degree, etc.)

lsalomo@hubcap.clemson.edu
ibmman@clemson.clemson.edu
=============================================================================
"Gee Wally, I think there's something wrong with the Beaver."
=============================================================================

ralf@b.gp.cs.cmu.edu (Ralf Brown) (12/15/90)

In article <12273@hubcap.clemson.edu> lsalomo@hubcap.clemson.edu (lsalomo) writes:
}From article <1990Dec13.033748.18606@CSUFresno.EDU>, by brucen@CSUFresno.EDU (Bruce Nelson):
}> Is there anyone in netland that might be able to tell me what
}> "true" multitasking is, which microproccessors (8088, 80286,
}> 80386sx, 80386, 80486) are able to multitask, and what type of
}> software allows multitasking.
}
}With the proper software, any of those CPUs could multitask.  However, it isn't
}so much the multitasking, but the other features that need to be provided, like
}protection of address space (, etc.) that only the 80286 (and later CPUs) can

Address space protection is NOT required for multitasking, although it does
make the system more robust.  Memory protection also makes a single-tasking
system more robust....  Even an 8088, 6502 or Z80 can multitask given the
proper OS (and an external timer interrupt if pre-emptive multitasking is
desired).
-- 
{backbone}!cs.cmu.edu!ralf  ARPA: RALF@CS.CMU.EDU   FIDO: Ralf Brown 1:129/3.1
BITnet: RALF%CS.CMU.EDU@CMUCCVMA   AT&Tnet: (412)268-3053 (school)   FAX: ask
DISCLAIMER?  Did  | Everything is funny as long as it is happening to
I claim something?| someone else.  --Will Rogers

Greg.Smith@p11.f477.n104.z1.METRONET.ORG (Greg Smith) (12/20/90)

To: brucen@CSUFresno.EDU

In a message to All <18 Dec 90 01:47> Bruce Nelson wrote:

 BN> I've heard alot about multitasking but not quite sure what true
 BN> multitasking is (according to IBM).

 BN> Is there anyone in netland that might be able to tell me what
 BN> "true" multitasking is, which microproccessors (8088, 80286,
 BN> 80386sx, 80386, 80486) are able to multitask, and what type of
 BN> software allows multitasking.
True multitasking can only be achieved on the 80386 and up (486, soon 586 etc..)  There is a virtual mode which allows the 386 to act like 4 8088s, and on the 486, I believe this mode can be extended even further.  To use these modes, OS/2 is a good operating system for it, or DESQview '386, Windows 3.0 '386.  These are the most common multitaskers that I know of.  

                                   Greg





--- XRS 4.00
 * Origin: Greg Makes His Point. (Quick 1:104/477.11)

--  
=============================================================================
Greg Smith - via MetroNet node 200:5000/301 
The Bohemia BBS System, Boulder Colorado (303)449-8946
UUCP:  Greg.Smith@p11.f477.n104.z1.METRONET.ORG
 or :  ...!boulder!bohemia.METRONET.ORG!1!104!477.11!Greg.Smith
=============================================================================

silver@xrtll.uucp (Hi Ho Silver) (12/23/90)

Greg, have you ever considered putting linefeeds at the end of your lines?

In article <35.2771BC36@bohemia.metronet.org> Greg.Smith@p11.f477.n104.z1.METRONET.ORG (Greg Smith) writes:
$In a message to All <18 Dec 90 01:47> Bruce Nelson wrote:
$ BN> Is there anyone in netland that might be able to tell me what
$ BN> "true" multitasking is, which microproccessors (8088, 80286,
$ BN> 80386sx, 80386, 80486) are able to multitask, and what type of
$ BN> software allows multitasking.
$True multitasking can only be achieved on the 80386 and up (486, soon 586
$etc..)  There is a virtual mode which allows the 386 to act like 4 8088s,
$and on the 486, I believe this mode can be extended even further.  To use
$these modes, OS/2 is a good operating system for it, or DESQview '386,
$Windows 3.0 '386.  These are the most common multitaskers that I know of.  

   Yes and no.  You can multitask on basically any processor; however, trying
to do it on a CPU which lacks support for it is far more difficult to do
and if the CPU lacks memory protection (e.g. the 8088), a poorly-written or
malicious program can easily take the whole system down.

   The 80286 has two modes.  Real mode basically simulates an 8086, while
protected mode is designed for multitasking.  It provides memory protection
so that each program can be prevented from doing anything antisocial (such
as clobbering someone else's memory, doing I/O, etc.)  It also provides
hardware support for switching between tasks.  Real mode on the 286 was
never really designed to be a fast 8086 (keep in mind that the 286 was
designed before the PC came along); rather, it was designed to provide a
way of initializing a multitasking system before jumping into protected
mode.  The 80286 doesn't provide an instruction to return from protected
mode to real mode; instead you have to reset the CPU.

   The 80386, in addition to the two modes above, adds two more:  virtual
8086, which allows any number (not just 4) of processes to be multitasked
while each thinks it's running on an 8086, plus another protected mode
that uses the features of the 80386.  In addition to the protection and
multitasking that came with the 80286, the 80386 also adds support for
virtual memory.  VM allows the computer to think it has more memory than
it really has.  The extra memory is actually the hard drive; areas of
memory which are not currently needed are swapped out to the hard drive,
freeing up main memory for other programs to use.  This happens trans-
parently to the application; the only difference is that obviously the
more you have to access the hard drive, the slower your program will run.

   The 80386SX is identical internally to the 80386DX.  It runs all the
same software and provides all the same operating modes.  The difference
is that externally, the SX has only a 16-bit wide data bus (as opposed
to 32 bits on the DX) and that it can't address as much physical memory.
The 80486 is basically an 80386, an 80387 and an 8K cache rolled into one
chip, with some fine-tuning done as well.

   As for operating systems ... DOS is purely an 8086 operating system.  The
only way it runs on higher machines is in modes which simulate an 8086.
The eventually-to-be-released DOS 5 will be aware of the 80286 and 80386
and will use those features to decrease the amount of conventional memory
(your usual 640K) it eats up, but other than that it's still an 8086 O/S.
The most common operating systems for 80286 machines are OS/2 version 1.xx
and Xenix 286; Coherent is also an 80286 operating system.  You can run a
single DOS task in the foreground in OS/2's DOS compatibility box; enough
said about that.  For the 80386, you can get numerous Unix implementations,
plus the eventually-to-be-released OS/2 2.0.  This will be an 80386 operating
system, including the ability to use more than the 16M of memory available
on the 80286 and a greatly improved DOS compatibility box (thanks the the
virtual 8086 mode, it will be able to be multitasked, run in the background,
etc.)  You can also get products for many 386 Unix-type systems that provide
the ability to run DOS programs as tasks under Unix.

   Other multitasking solutions are available which are based, in one way
or another, on DOS.  Windows and Desqview both run on DOS machines.  There
are also programs such as PC-MOS which allow you to run multiple DOS
sessions on a machine.
-- 
 __            __  _  | ...!nexus.yorku.edu!xrtll!silver |  always
(__  | | |  | |_  |_) >----------------------------------< searching
 __) | |_ \/  |__ | \ | if you don't like my posts, type |    for
_____________________/  find / -print|xargs cat|compress |   SNTF

userAKDU@mts.ucs.UAlberta.CA (Al Dunbar) (12/24/90)

In article <35.2771BC36@bohemia.metronet.org>, Greg.Smith@p11.f477.n104.z1.METRONET.ORG (Greg Smith) writes:
>
>To: brucen@CSUFresno.EDU
>
>In a message to All <18 Dec 90 01:47> Bruce Nelson wrote:
>
> BN> I've heard alot about multitasking but not quite sure what true
> BN> multitasking is (according to IBM).
>
> BN> Is there anyone in netland that might be able to tell me what
> BN> "true" multitasking is, which microproccessors (8088, 80286,
> BN> 80386sx, 80386, 80486) are able to multitask, and what type of
> BN> software allows multitasking.
>True multitasking can only be achieved on the 80386 and up (486, soon 586 etc..)  There is a virtual mode which allows the 386 to act like 4 8088s, and on the 486, I believe this mode can be extended even further.  To use these modes, OS/2 is a good oper
 
I have done multitasking on both a Data General Nova 2 (with
32K!) and a Data General microEclipse S/120. I guess this
must have been false multitasking.
 
-------------------+-------------------------------------------
Al Dunbar          |
Edmonton, Alberta  |  "this mind left intentionally blank"
CANADA             |          - Manuel Writer
-------------------+-------------------------------------------

kls30@duts.ccc.amdahl.com (Kent L Shephard) (01/04/91)

In article <35.2771BC36@bohemia.metronet.org> Greg.Smith@p11.f477.n104.z1.METRONET.ORG (Greg Smith) writes:
>
>To: brucen@CSUFresno.EDU
>
>In a message to All <18 Dec 90 01:47> Bruce Nelson wrote:
>
> BN> I've heard alot about multitasking but not quite sure what true
> BN> multitasking is (according to IBM).
>
> BN> Is there anyone in netland that might be able to tell me what
> BN> "true" multitasking is, which microproccessors (8088, 80286,

True multitasking is just the ability to run several programs at once.
Providing each with a portion of the available resources either in a round
robin fashion or on demeand when a task needs those resources (preemtive).

 
> BN> 80386sx, 80386, 80486) are able to multitask, and what type of
> BN> software allows multitasking.
>True multitasking can only be achieved on the 80386 and up (486, soon
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

This is not true DESQview multitasks on all 80x86 processors you just have
no process protection on less than a 386.  On less than a 386 an ill
behaved program can write anywhere in memory, including over the OS.
On a 386 and up you get process protection and virtual 8086s so all
processes have what they think is their own register set etc. On a
386 an ill behaved program will cause an exception when it tries to
do something weird. Any processor is capable of multitasking.  You
need hardware for process protection.

>586 etc..)  There is a virtual mode which allows the 386 to act like 4
                        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
This is limited by you OS and memory not CPU

>8088s, and on the 486, I believe this mode can be extended even further.
>To use these modes, OS/2 is a good operating system for it, or
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Wrong OS/2 is a memory hog and a resource hog.  It only runs one DOS prog.
in the compatibility box, and does a pretty poor job of that.

OS/2 sucks.  If you want preemtive multitasking then get DESQview.  If you
want/need a graphical interface get MS WIN 3.0 (not preemtive program has
to give up control).

>DESQview '386, Windows 3.0 '386.  These are the most common multitaskers

If you want a graphical interface, preemtive multitasking, etc.  Get out
of the DOS world and go UNIX.

>that I know of.
>
>                                   Greg
>
>
>
>
>
>--- XRS 4.00
> * Origin: Greg Makes His Point. (Quick 1:104/477.11)
>
>--  
>=============================================================================
>Greg Smith - via MetroNet node 200:5000/301 
>The Bohemia BBS System, Boulder Colorado (303)449-8946
>UUCP:  Greg.Smith@p11.f477.n104.z1.METRONET.ORG
> or :  ...!boulder!bohemia.METRONET.ORG!1!104!477.11!Greg.Smith
>=============================================================================


--
/*  -The opinions expressed are my own, not my employers.    */
/*      For I can only express my own opinions.              */
/*                                                           */
/*   Kent L. Shephard  : email - kls30@DUTS.ccc.amdahl.com   */