[comp.sys.ibm.pc] OS/2 versus UNIX

madd@bu-cs.BU.EDU (Jim Frost) (04/02/89)

In article <13449@steinmetz.ge.com> davidsen@crdos1.UUCP (bill davidsen) writes:
|In article <8029@chinet.chi.il.us> randy@chinet.chi.il.us (Randy Suess) writes:
|However, having clarified the
|situation, I thought that OS/2 was a multi-tasking o/s. Since the BIOS
|routines seem to stop the CPU while i/o takes place, does OS/2 *really*
|use them? No wonder it's slower than UNIX, the CPU is waiting most of
|the time...

OS/2 cannot make use of a blocking BIOS, which is the normal one in
PC's.  There are two simple approaches to getting around this: the
first is to put in a non-blocking BIOS (in addition to the normal one)
and the second is to specially code for the hardware, preferably by
writing a lot of drivers which are loaded in at boot time so you can
do configurations.  It's likely that different vendors do it different
ways.  I haven't been following PCs enough lately to say which way (if
either) is more common.

As for speed comparisons, they differ depending on what tests you do.
Disk accesses tend to be about equal; OS/2 has a simpler filesystem
but UNIX is better designed.  If anyone is using the Berkeley fast
file system, I believe that UNIX would consistently outperform OS/2,
but I haven't seen such tests.  The UNIX filesystem is also
considerably more robust, especially using Berkeley FFS.  Except for a
complete hard-disk loss (low-level format or tossing the disk out), I
have yet to loose a file under UNIX.  fsck is pretty good at putting
disks back together, more so with human intervention.

In memory management OS/2 looses badly to UNIX.  Once OS/2 starts
paging, execution as we know it stops.  This is in comparison to UNIX
where you often have 50% or more overload without problems.  If your
UNIX uses a better memory management scheme than generic System V
does, UNIX wins even larger.  I haven't seen anything besides SunOS on
the 386i that does very good memory management, but on that machine I
habitually overload by 60-90% with no apparent loss of performance.

OS/2's dynamic linking helps in the memory area but some UNIX's (such
as SunOS) also have this feature.

In terms of security, UNIX wins hands down.  Under OS/2 there is no
such thing.  UNIX isn't terribly secure most of the time, but some is
better than none.

In terms of reliability, UNIX usually wins.  This depends on version
and often some portions of UNIX's aren't too reliable (eg high-speed
serial support), but in general UNIX is more reliable just because
it's been there awhile.  Your results may vary depending on
application.

The biggest problem with UNIX on the PC is there is no single version.
Different versions came from different sources and perform (pardon my
repetitiveness) differently.  I've used XENIX, plain System V, System
V with Berkeley enhancements, and SunOS (Berkeley with enhancements,
basically).  The latter performs the best of all of them (easily
outperforming OS/2), but most of them outperformed OS/2 once any real
load developed.

I honestly believe that OS/2 will be much of a disappointment.  It is
just starting to make an impact on 80286 machines even though the
80386 hs been out for awhile and the 80486 will be out Real Soon Now.
UNIX can run on the 80286 (however painfully), runs nicely on the
80386, there are packages to allow execution of MS-DOS programs under
it (at least on 80386's, to say nothing of RISC workstations like the
Silicon Graphics Personal Iris), and will be running on the 80486
before those machines are even publicly available.  Worse for OS/2,
IBM seems to be moving to support UNIX from the higher-end PS/2's
straight to the 3090's instead of pushing OS/2 as the OS for the PS/2
as many people expected.  As a developer I'd invest the time and money
into UNIX applications which can run on anything from the PC to the
Cray, not on OS/2 with its limited user base and hardware.  Flipping
through UNIX rags, I see more and more PC application vendors doing
just this.

The next five years will be interesting, I bet.

jim frost
Associative Design Technology
madd@bu-it.bu.edu