*BSD News Article 17890


Return to BSD News archive

Xref: sserve comp.os.minix:22433 comp.os.386bsd.misc:566 comp.os.386bsd.questions:3493 comp.os.linux:46179
Path: sserve!newshost.anu.edu.au!munnari.oz.au!news.Hawaii.Edu!ames!haven.umd.edu!umd5.umd.edu!elea.umd.edu!mark
From: mark@elea.umd.edu (Mark Sienkiewicz)
Newsgroups: comp.os.minix,comp.os.386bsd.misc,comp.os.386bsd.questions,comp.os.linux
Subject: Re: Choosing a Unix like OS for a pc (plan 9 compilation time)
Date: 2 Jul 1993 20:15:14 GMT
Organization: University of Maryland
Lines: 59
Message-ID: <21250i$lnm@umd5.umd.edu>
References: <FOX.93Jun29142638@graphics.cs.nyu.edu> <741438841.9926@minster.york.ac.uk> <20sscl$brc@usenet.mcs.kent.edu>
NNTP-Posting-Host: elea.umd.edu

In article <20sscl$brc@usenet.mcs.kent.edu> delozier@condor.mcs.kent.edu (Greg Delozier) writes:

>By the way, DOS/Oberon currently ships as a 32-bit operating system/
>compiler/GUI toolkit/DOS extender/painting package/document editor/
>techical illustrator/scripting system in well under a megabyte of files.
>I had someone ask how many floppies he should bring in to get a copy
>of Oberon, and when I told him just one, he nearly dropped.

The last DOS machine that I got has 2.1 meg of just DOS.  Plus 2 "EISA
config and utilities" disks...  Are you refering to DOS + Oberon is < 1 meg
or just the Oberon part?

>So *my* wish (requirement) list for a 32-bit OS goes like this:
>
>1. 32-bit flat address space for all processes.
>2. Heirarchical directory system
>3. Reasonable windowing system with low overhead and simple image model
>4.   "        printing   "      "    "    "       "    "      "     " 
>5. Interrupt driven serial i/o (and maybe print spooler)
>6. C (maybe C++) or Oberon compilers. (Oberon is a clean, small OOP language)
>7. Small enough for one person to understand.

You don't want much.  Seriously.  I want all these things too:

8. OS protects itself from user programs (this means user processes can't
	write into OS memory, disable interrupts, mess with IO directly)
9. preemptive multi-tasking
10. OS protects user processes from each other
11. Exchanges mail and news over UUCP.
12. able to maintain high throughput on serial ports while also performing
    other tasks.
	[ note that the netbsd kernel I'm running right now doesn't do
	this.  I can only maintain 9600 with no serious load on the machine.]
13. multiple concurrent users ( not the same as multi-tasking )
14. Able to run code from the net written for Unix-like systems.  (This
	could mean you implemented Xlib functions without actually using
	the network, but I'm not sure why you would bother.)
15. good performance for file I/O, with disk scheduling and concurrent
    operation of multiple disks
16. occasional TCP support

I would say Netbsd meets 1-2, 4-11, 13-16.  It misses 3 only because you
ask for a _simple_ image model.  X is complicated, but it does a lot.

I belive that it _does_ meet 7- simple enough for one person to understand.
This is probably because we have different standards of what it means to
"understand" the system.  I can't go into any random line of locore.s and
tell you what is going on there, but I don't think there is any part of the
system where my level of understanding interferes with my use of the system.

I think a major key point in what you said is this:

>On a Sparcstation, maybe you can lose this overhead in sheer processor
>performance, but on my 386, for instance, X-window calls are just
>not going to do convincing 3-d animation. Oberon does.

You are willing to give up items 8-16 so you can have 3D animation.  I'm
willing to give up 3D animation so I can have all this other stuff.