home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
ARM Club 3
/
TheARMClub_PDCD3.iso
/
hensa
/
documentation
/
documents
/
a252taos
< prev
next >
Wrap
Internet Message Format
|
1999-04-27
|
11KB
From: birger@sdata.no (Birger A. Wathne)
Subject: New OS on ARM?
Date: Tue, 1 Jun 93 13:01:50 GMT
I found this in Unigram, X, The weekly UNIX newspaper.
+ JAPAN BACKS UK FIRM TAO's COMPACT
PARALLEL OBJECT OPERATING SYSTEM
An object-oriented parallel operating system that is completely
portable between all widely used processors, so much so that
applications do not even need to be recompiled is the creation of
a British company - Tao Systems Ltd of Belsize Park, London NW -
which has substantial financial backing from Japan. Taos relies
on a Virtual Processor - a 32-bit machine with 16 registers and
support for standard data types and addressing modes, for which
all applications are written. The run-time code is loaded onto a
real processor and translated on the fly into the chip's native
instruction set. It is currently up on the Transputer and the
80386, with 68000 family, ARM RISC and MIPS R3000 processors a
few months away. The most significant feature of Taos is that
the kernel takes up just 13Kb of memory - and is blindingly fast
on complex applications such as graphics ray tracing. Details of
the operating system below.
+ TAOS: THE PARALLEL OBJECT- ORIENTED OPERATING SYSTEM
THE WORLD IS WAITING FOR?
By Chris Rose
Imagine an operating system that is suitable for everything from
photo copiers to games consoles to video-graphics work to
transaction processing. It is completely parallel and can
intelligently farm bits of itself and applications across
multiple processors, or alternatively sit on just one. Now
imagine that it is processor-independent and is already running
on 80386 and 80486, and Transputers, with the 68000 family, ARM
RISC and MIPS R3000 processors a few months away. Now say that
the applications are completely processor-independent too - that
you don't even have to re-compile them to move them from one
machine type to another, and indeed bits of them may even wander
from processor type to processor type in the course of execution.
Why not add network support so that if you plug an extra personal
computer into the local network, everyone's applications will
automatically run a bit faster (and they already run very quickly
indeed)? Finally, for good measure, let's say that the operating
system kernel takes up just 13Kb of RAM and the entire executive
and developers code will fit onto a single 720Kb floppy when
compressed.
This is not fantasy, this is a real-life operating called Taos
from Tao Systems Ltd, a small company based in North London.
Moreover Tao claims to have found substantial funding and board-
level interest from some of the biggest Japanese computer and
electronics companies, the identities of which will be announced
this summer. Chris Hinsley, Tao Systems chief executive and the
operating system's architect claims without a blush that the
Japanese computer industry will completely steam-roll the US and
Europeans, and that Taos will be the fuel. Funding is being
provided by a separate marketing company, TK Suppliers, based in
Tokyo. This has paid for the first phase of development and is
entirely owned by a group of Japanese businesspeople plus Francis
Charig, formerly head of trading systems business at the London
Stock Exchange, who acts as managing director and the link
between TK and Tao Systems. In this way Tao gets money, but also
retains its independence: Charig says that Tao Systems has turned
down a number of buy-out bids from the US in the last few months.
The European Commission didn't prove that helpful either: Hinsley
makes no secret of his frustration with the Esprit parallel
processing projects, which he sees as obsessed with making Unix
parallel - a quest that he sees as fundamentally misguided and
doomed to failure in the long term. In the end, too, it was the
Japanese that turned out to be most amenable to the idea of
throwing away and starting from scratch; which is what Taos does.
Heritage
Chris Hinsley started off as a successful commercial author of
arcade games for home computers, and many of Taos's concepts
spring from his original need to produce code that would transfer
easily between a plethora of machines. The approach he took was
to develop a Virtual Processor - a 32-bit machine with 16
registers and support for standard data types and addressing
modes, which didn't actually exist. All applications, and the
bulk of Taos itself is written in Virtual Processor code, so that
at run-time the code is loaded onto a real processor and
translated on the fly into the chip's native instruction set.
The practical upshot is that, as long as you have the right
translator, the Virtual Processor code will run without
modification on any chip. The 80386-80486 translator is the
latest to be finished after the original Transputer
implementations and Hinsley says that now they have first couple
under their belts, it will only take a month or two to write each
additional processor implementation. Moreover you can have
heterogeneous networks of different processors all running
co-operatively. Taos' games-based heritage brings other benefits
too. Games tend to be inherently object-oriented, says Hinsley
(all those sprites moving about and interacting) and games
authors often have to cram a lot into a tiny amount of memory
while stretching hardware to its limits. As a result Taos is
object-oriented at a very fine level and it takes the idea of
dynamic linking to its logical conclusion. This means that
instead of being a monolithic operating system running monolithic
applications, the program just calls in bits of code as they are
needed from libraries of routines - rather the same way that ICL
Plc's VME mainframe operating system works.
Load-balancing
This accounts for the small size of the Taos microkernel, which
provides memory and process management, load balancing and
precious little else. Even the Virtual Processor translator is
retrieved only when needed, and it is Hinsley's boast that no
piece of code is ever loaded onto the processor that isn't about
to be run. As a result, load-balancing also becomes virtually
trivial, he says. Each processor on the network runs its own
copy of the 13Kb microkernel and when a new thread is started,
the kernel on that chip compares its loading with its immediate
neighbours. The calculation takes account of processing power
and the speed of communication links, and then the request to
start the thread is handed on to the processor with the least to
do. This processor carries out exactly the same load balancing
process until the thread finds a home, is translated by the
chip's translator and begins to run.
Fancy graphics
All this talk of bits of code being pulled out of disk and cache,
being translated on the fly and wandering around networks sounds
horrendously slow, but appears in practice to be blindingly fast.
A personal computer with a single 66MHz 80486 will render a
broadcast quality, full screen, complex piece of ray-tracing in
less than a minute. That is with no fancy graphics chips and
using a standard VESA video adapter board. The 80486 translator
floating point code is still being optimised and in a couple of
weeks Charig says that time will be cut to between 20 and 30
seconds. This summer the company will have a board, costing
around #1,500 containing four MIPS R3050 RISC processors. This
will slot into a personal computer and enable the 80486 and the
MIPS processors run code cooperatively, bringing our same ray
trace example down to less than 10 seconds. Exactly where all
this speed comes from is difficult to pin down; obviously Virtual
Processor code is pretty low level stuff and assembler code tends
to run quickly by its very nature, however Hinsley is optimistic
that the kind of performance seen today will be preserved even
when applications are written using the C++ and Parallel Basic
compilers that are currently nearing completion - compilers that
produce Virtual Processor code, of course. Programmers do not
need to worry about the fact that their applications may be
running in parallel, Hinsley says, they merely need to think
about the appropriate size of object and Taos will do the rest.
Four markets
A product's quality or degree of innovation is never a guarantee
of success and a lot will depend on just how hefty these
forthcoming Japanese backers turn out to be. So will Taos
succeed? There are four markets in which its designers say it
will do equally well: graphics, we have already outlined; then
there are games consoles - Taos' original home territory; and
embedded applications: it may sound odd to have Taos running in a
photocopier or a drinks machine, but the tiny kernel makes it
ideal, says Hinsley. It may also seem improbable that the
world's transaction processing systems will suddenly switch to
Taos, but on the other hand the company is already hard at work
building SQL interface objects and others that will confer Posix
compliance, it has even chatted to a bank about payroll
applications. Its acceptance will be helped by the pragmatic
approach that Tao Systems is taking in integrating its baby with
existing systems. So, for example with the 80386 and 80486
implementations, the company has decided to stick with the MS-DOS
file system. Installing Taos then, is as simple as copying the
files to your hard disk, typing TAOS and you're in. Similarly,
there will be a variant of the 68000 family translator tweaked to
make use of the Macintosh file system. The trouble is that both
the product and the claims made for it are so unusual that it is
impossible to predict whether it will disappear, never to be seen
again, or become the biggest thing since MS-DOS. Towards the end
of the demonstration, Hinsley leant back and said "of course
there's no reason why the fridge shouldn't be doing a bit of your
mandelbrot." And he wasn't really joking...
---
Birger A. Wathne
Email : birger@sdata.no | Until Sept. 9. 1993 From Sept. 9.
Private: Fjoesangervn. 133, N-5032 Minde | Tel: +47 5 200062 (+47 55 20 00 62)
Work : Skrivervik Data A/S | Tel: +47 5 543740 (+47 55 54 37 40)
Thormoehlensgt 55, N-5008 Bergen| Fax: +47 5 322853 (+47 55 32 28 53)