[net.research] Should Universities Explore... Re: 'toy OS'

flamer@omsvax.UUCP (Jim Trethewey) (04/03/84)

For those who are interested and haven't heard, there is a 'toy'
operating system on the PC available for college students to poke
to death.  (In my senior level OS class we used 2.8 BSD on an 11/44,
but they discontinued the project where the machine was brought down
for a week so students could crash it.)

Brinch Hansen (of P and V fame) at one of those colleges in S. California 
(was it USC?) has a PC OS called "Edison", specifically designed to be 
used in a Computer Science OS class.  There was an article on it in the 
Communications of the ACM last year.  If anyone is excited about this,
reply to me and I'll get the issue and post the info (and I'm sure there
are others on the net who know more about this than I).

aaw@pyuxss.UUCP (Aaron Werman) (04/04/84)

[Impenitent, we meet again,]

I have read Per Brinch-Hansens' 'Programming a Personal Computer' or
somesuch. It is an inarticulate users manual for the Edison system,
despite the title. Other than choice of a subset of Pascal for the
Edison language, no Comp. Sci. issues were addressed. Edison is a
minimal toy OS all written in a structured language (although some was
hand compiled rather than interpreted) and might be used for a
Software Engineering or OS course, but only because students could
review (and rewrite components of) the entire code (~10k lines) in one
term.

CP/M and its' look alikes MS-DOS, etc. would not be useful for an OS
course because they are fundamentally jump tables for system routines
rather than OSs. As such they could be used for writing device drivers
(a very common OS application traditionally left out of OS courses
because big OSs don't like switching drivers.) Most OS course material
is not relevant to MS-DOS: e.g. virtual memory, multiprogramming,
multiprocessing, swapping, tasking, device allocation algorithms,
deadlock prevention/detection, job mix... about 95% of the material is
reduced in a single user single task OS to the trivial case. While
these are valuable skills a student will get no feel for tradeoffs,
which are real issue in OS design
			{harpo,houxm,ihnp4}!pyuxss!aaw
			Aaron Werman

norskog@fortune.UUCP (Lance Norskog) (04/06/84)

The amount of detail that you have to learn to muck about with OS
internals is such that only the very hot students will really get much
out of the course, and the rest will flounder around learning assembler
syntax and such-like.  A good toy OS for teaching purposes would be
just a very simple interpreted machine, that way you could build a 
nice assembler/debugger and a very simple interrupt model, etc.,
and have more time free for students to experiment.

Lance C. Norskog
Fortune Systems, 101 Twin Dolphin Drive, Redwood City, CA
{cbosgd,hpda,harpo,sri-unix,amd70,decvax!ihnp4,allegra}!fortune!norskog