The Unix Heritage Society mailing list
 help / color / mirror / Atom feed
From: rochkind@basepath.com (Marc Rochkind)
Subject: [TUHS] Algol68 vs. C at Bell Labs
Date: Thu, 30 Jun 2016 17:16:14 -0600	[thread overview]
Message-ID: <CAOkr1zWVuxgeMDHO+6=-X7QzQRS2RR5y7VPjT_Ofmk+4CC44Zw@mail.gmail.com> (raw)
In-Reply-To: <CAJfiPzy+J=AWbhjrdxNBCLg=g0eMbeONwFDUeVTpd8uHjnsPZA@mail.gmail.com>

Clem Cole: "IBM allowed the system to be cloned"

I never looked at it that way. To discourage cloning, IBM published and
copyrighted the BIOS source code. Most serious programmers were very
familiar with it, because one had to know details of the BIOS to program
the computer, for many applications (such as ours). That reduced the number
of programmers who could work on a BIOS clone, as such people would have to
be recruited from outside the world of the IBM PC. A few outfits sprang up
to do clean-room BIOS clones, including an outfit called Phoenix, which had
the best. Compaq's internal BIOS was also excellent.

As for the computer hardware, it was just Intel parts along with
off-the-shelf floppy disk controllers and drives and other such stuff. IBM
had built the PC almost entirely from existing parts, and had no exclusive
on any of it.

For the clones, no copyrighted code was used, the programmers had never
seen the code, and the function of the BIOS wasn't copyrightable. So, IBM
really had no way to prevent the clones.

There were a lot of PCs in the early 1980s that weren't clones. They had
8088 or 8086 CPUs, and looked liked PCs, but they weren't identical, so we
had to port our software. Sometimes companies gave us machines, including
AT&T, whose PC was made by Olivetti. I remember many conversations with
computer vendors in which I was just trying to get the memory address and
layout for the screen. They never could even understand the question. DEC,
which had their own weird version of a PC, was the worst.

Within a few years all these went away, and only identical clones existed,
for which we didn't need to develop a special version.

A few people here have said that IBM could have produced a more
sophisticated OS. Actually, I would have been against anything that took up
more resident memory. Initially, I think the most memory IBM would supply
was 384K, and most serious applications needed it all. Multiprogramming or
sophisticated system calls of any sort would have sucked up valuable
memory. I was able to design the EDIX editor to be entirely memory
resident, even with multiple active files, with no floppy swapping at all.

As someone mentioned, we pretty much used MS-DOS only for its file
management. Access to all other facilities was through the BIOS or directly
to the hardware. With such a completely unprotected system, running more
than one application at a time was out of the question.

One might ask why we had such a primitive system with 384K, when UNIX had
been developed over 10 years before on a smaller system. Simple: UNIX had
swapping. With no hard drive, and floppies being inserted and removed,
everything had to be resident in RAM. In addition, as I've mentioned
already, screen speed is what distinguished PC software, ever since Apple
games and Visicalc. Traditional UNIX screen speed was ridiculously slow,
until the workstations came along, but for many times the price of a PC. To
get the screen speed on a PC, the application had to own the hardware. UNIX
insists on standing between the application and the hardware. In PC land
that would be unacceptable.

--Marc

On Thu, Jun 30, 2016 at 2:57 PM, Nemo <cym224 at gmail.com> wrote:

> On 30 June 2016 at 15:21, Diomidis Spinellis <dds at aueb.gr> wrote:
> [...]
> > Two factors might had made the choice of 8088 a more practical one for
> IBM.
> >
> [...]
> > In addition, the 8086 architecture was an extension of the 8080 one,
> which
> > made it easier to make the MS-DOS API compatible with the CP/M one, which
> > was used by many popular programs.  This would simplify their porting.
> (A
> > lot of early IBM PC software was written in assembly language.)
>
> I heard that a lot of the BIOS was a simple-minded translation of
> corresponding 8080-assembler.  I believe that; if you look at the
> horrible assembler, which was actually printed in the IBM Technical
> Manual, you could see that most 8086 extensions were not used.
>
> N.
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://minnie.tuhs.org/pipermail/tuhs/attachments/20160630/e6c206e9/attachment.html>


  parent reply	other threads:[~2016-06-30 23:16 UTC|newest]

Thread overview: 77+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-06-29 15:17 scj
2016-06-30  5:06 ` Dave Horsfall
2016-06-30  5:08 ` John Cowan
2016-06-30 11:18 ` arnold
2016-06-30 11:45   ` arnold
2016-06-30 13:22 ` Clem Cole
2016-06-30 14:05   ` Marc Rochkind
2016-06-30 14:33     ` William Cheswick
2016-06-30 14:43       ` Ronald Natalie
2016-06-30 14:57       ` Joerg Schilling
2016-06-30 15:07         ` Ori Idan
2016-06-30 23:07           ` Dave Horsfall
2016-07-01  3:27           ` Jesus Cea
2016-06-30 15:32     ` Dan Cross
2016-06-30 15:49       ` Larry McVoy
2016-06-30 16:32         ` Clem Cole
2016-07-04  5:08         ` [TUHS] OS for IBM PC (was: Algol68 vs. C at Bell Labs) Greg 'groggy' Lehey
2016-06-30 17:07       ` [TUHS] Algol68 vs. C at Bell Labs John Cowan
2016-06-30 17:57         ` Marc Rochkind
2016-06-30 18:31           ` Dan Cross
2016-06-30 19:21             ` Clem Cole
2016-06-30 19:51               ` Dan Cross
2016-06-30 19:55                 ` Clem Cole
2016-06-30 20:04                   ` Dan Cross
2016-06-30 18:26         ` Steve Nickolas
2016-06-30 19:21       ` Diomidis Spinellis
2016-06-30 19:43         ` Dan Cross
2016-06-30 19:53           ` Clem Cole
2016-06-30 19:47         ` Clem Cole
2016-06-30 20:57         ` Nemo
2016-06-30 23:11           ` Random832
2016-06-30 23:16           ` Marc Rochkind [this message]
2016-06-30 23:38             ` Random832
2016-07-01  0:38             ` Clem Cole
2016-07-01  1:21               ` Marc Rochkind
2016-07-01  1:34               ` John Cowan
2016-07-04 19:23                 ` Dave Horsfall
2016-07-04 19:56                   ` Ronald Natalie
2016-07-01  2:35               ` Nemo
2016-07-01  3:01                 ` Kurt H Maier
2016-07-01  3:52               ` Lyndon Nerenberg
2016-07-01 12:47                 ` [TUHS] MS-DOS William Cheswick
2016-07-01 13:43                   ` Marc Rochkind
2016-07-01 21:58                     ` John Cowan
2016-07-01 22:27                       ` Jacob Ritorto
2016-07-01 22:54                         ` Jacob Goense
2016-07-01 23:44                         ` John Cowan
2016-07-02  0:08                           ` Steve Nickolas
2016-07-02  1:09                           ` Kurt H Maier
2016-07-02  2:59                         ` Dave Horsfall
2016-07-02  3:27                         ` Greg 'groggy' Lehey
2016-07-02 23:21                           ` Dave Horsfall
2016-07-01 23:49                     ` Dave Horsfall
2016-07-02  1:12                       ` Steve Nickolas
2016-07-02  4:37                       ` SZIGETI Szabolcs
2016-07-02  9:53                         ` Brantley Coile
2016-07-01 13:47                   ` Clem Cole
2016-07-01 15:13                     ` Steve Nickolas
2016-07-02 15:25                       ` Ronald Natalie
2016-07-02 15:32                         ` Steve Nickolas
2016-07-02 19:46                           ` Nemo
2016-07-03  1:18                             ` Steve Nickolas
2016-07-03 13:33                               ` Nemo
2016-07-01 17:39                     ` John Cowan
2016-07-02 15:17                       ` Ronald Natalie
2016-07-03 22:07                   ` Derek Fawcus
2016-07-02 23:32         ` [TUHS] Algol68 vs. C at Bell Labs Peter Jeremy
2016-06-30 15:52     ` Joerg Schilling
2016-06-30 20:47     ` Lawrence Stewart
     [not found] <mailman.19.1467287486.30583.tuhs@minnie.tuhs.org>
2016-06-30 13:15 ` David
2016-06-30 13:18   ` William Cheswick
2016-06-30 13:39     ` Clem Cole
2016-06-30 13:44 Noel Chiappa
2016-06-30 14:28 ` William Cheswick
2016-06-30 19:23 ` John Cowan
2016-06-30 17:17 Nelson H. F. Beebe
2016-07-01  9:32 ` Brantley Coile

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='CAOkr1zWVuxgeMDHO+6=-X7QzQRS2RR5y7VPjT_Ofmk+4CC44Zw@mail.gmail.com' \
    --to=rochkind@basepath.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).