[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Phase5 news - OS



    phase 5 News

The A\BOX Operating System strategy
A strategy paper by phase 5 digital products

In the current situation of the Amiga, one of the biggest questions 
asked
by many users is "What is the future of the Amiga OS?"
As within our A\BOX project we follow the goal to build an innovative 
computer
system which, in our opinion, can be a dignant successor of the 
Amiga, we
are very much affected by this question, as the AmigaOS is an 
important
part of the Amiga Computer, and we will be asked to offer the "next
generation Amiga OS" if we want to offer the "next generation
Amiga" by many users.
Before we discuss the OS question, we need to reinforce that while we 
do
believe that the AmigaOS is an important part of the Amiga, we don't 
believe
that the OS is it all that makes the Amiga. Many opinions commenting 
to
this issue in the public discussions - mostly from SW people - argued 
that
way. As a matter of fact, there is a significantly larger number of 
persons
who understand (more or less) the software issues than persons who 
understand
the hardware, just as there are many more software designers - 
professionals,
semiprofessionals and hobbyists - than hardware designers out there. 
It's
understandable that SW designers often don't want to deal with the 
hardware
itself and prefer to develop "hardware independent" (how does
that work?;-) ). However, as a matter of fact it is still (and will 
continue
to be) the hardware on which every software is running on. Any 
software
- OS or application - can always only reveal as much performance as 
the
hardware can offer, it actually can't make hardware faster. It is a 
myth
created by software people - who sometimes obviously don't understand 
the
hardware - that hardware would make no difference or is unrelevant. 
Just
as an example: If a grahics controller can display any image in the 
main
memory at any position of the screen just by changing a pointer, this 
is
always significantly faster than if the image data must be copied 
into the
right place of the display memory, and will save much more resources 
than
the leanest OS may do. Software developer who don't understand this - 
especially
in respect of the A\BOX hardware concepts - obviously don't see how 
significant
innovation in hardware can be.
With this being said, we want to take a look on the operation system 
issue.
It is obvious that an operation system has a major influence on the 
appearance
of a system in general. Today, an operating system must offer a 
multitude
of advanced features combined with high-speed execution, while it 
should
be safe and prooven to provide a stable system. Of course, beside a 
fast
response the user also expects a friendly and modern interface, with 
all
the comfort that she/he needs to work effciently. Especially the 
Amiga user
has expectations on the fast and flexible multitasking. However, most 
of
these expectations do not depend so much on HOW things are done 
within the
OS - as long as they are done in a way that provides powerful and 
efficient
functionality.
Looking on these issue more deeply, we can - very roughly - define 3 
levels
of interest inside an OS: the OS core, which is like Amiga Exec 
providing
the basic OS functionality, the system service/device level and the 
high-
level/GUI-level
functions. The OS core must provide the functionality which is 
expected
today from a modern OS; the system service/device level includes all 
the
functionalities like drivers for e.g. SCSI, networking, ISDN, I/O in 
general,
the file system, audio and graphic device drivers, and similar stuff. 
On
the high-level/GUI-level most of the appearance (or look-and-feel) of 
the
system is defined. As a matter of fact, for most users and also many 
developers
it is not of interest how the OS core and the device level work, as 
long
as it works fast and reliable; the look-and-feel is nearly completely 
defined
by the high-level functionality, which mostly consist of replacable 
applications
- such as e.g. the Workbench on the Amiga.
Under consideration of these aspects, and after a long time 
evaluation and
discussion about the possibilities and options we have finally 
decided to
use a modern UNIX kernel as the operating system core for the A\BOX. 
We believe
that this is the best choice available, as this solution provides a 
most
flexible, reliable and prooven way to supply a powerful OS with an 
Amiga
like, but updated and enhanced look-and-feel. As a matter of fact, 
the Amiga
Exec has always been quite similar to UNIX in some of it's basic
functionalities,
although it was missing some of it's major features like Memory 
Protection
or Virtual Memory. On the other hand, in earlier UNIX kernels the 
support
for e.g. shared libraries and reloadable devices was missing, what 
made
these UNIX versions large, resource-hungry and sluggish - the reason 
why
UNIX was considered to be the dinosaur of the operating systems quite 
often.
Merging the best of both worlds and using the latest software 
development
techniques like object-oriented system add-ons will lead to a 
powerful operating
system fullfilling all the requirements of future computing.
What will this mean for the A\BOX and for it's relation to the AMIGA? 
First
of all, we will have a OS core with the following features:
- Fast preemptive Multitasking
- Full multiprocessing support
- Multiuser support with all necessary services
- Memory Protection, a feature that is demanded by most developers
- Virtual Memory support
- Loadable Devices, a extension of the original UNIX functionality
- Shared Libraries which make the OS use much less resources and make 
it
significantly faster
With these functionalities, tested and prooven by large numbers of 
installations
worldwide, and some optimizing on the fast PowerPC CPU, the OS core 
will
be a very efficient and extremely fast OS core that provides similar
functionality
to an Amiga Exec and important features beyond it.
Around this OS core, a large quantity of system service software will 
provided,
which comes from the Unix world and is long time prooven, such as:
- SCSI drivers and Ethernet hardware drivers
- TCP/IP service and networking protocols
- ISDN drivers and services
- Graphics Device drivers
- Audio Device drivers
- All kind of I/O drivers for various purposes
On this level, once again it does not make a major difference how the 
things
work. The implementation of software on this level may or may not be 
similar
to the implementation on the Amiga; for the user as well as for the 
SW developer
it's simple important that a similar and reliable functionality is 
provided,
and that's what this level will do. As far as drivers have to support 
new
functionality of the A\BOX that hasn't been available on any hardware 
before,
the functionality of these drivers will have to be new and different 
either.
On the higher-level OS functionality, we work on a system design that 
is
similar to the Amiga in respect of the ease of use, as well as the 
look-and-
feel.
Many of the high-level functionality of the AmigaOS, which basically 
consists
of application programs running on top of the OS core and the device 
level,
can be implemeted in a modern and updated way. A device-oriented file 
system
representation will be available, as well as software components 
similar to
commodities, datatypes or REXX. A Amiga-similar CLI will also be 
provided.
With a comprehensive set of utilities and functionalities, software 
development
for this OS will be easy and comfortable. Software that will run on 
PowerUp
cards and support CyberGraphX V3 will be running on this OS with high
performance,
and a "Virtual Amiga Machine" will be able to execute even original
Amiga 68k binaries fast and safely embedded into the system.
The A\BOX will come with a preinstalled system and a lot of tools that
will make it as easy to use as the Amiga today. There won't be the 
need,
for example, to recompile or link the OS kernel and it's 
drivers/devices
in order to install updates or changes; also it won't be necessary to 
spent
major efforts into configuring the system. Of course, the user is 
free to
reconfigure the system to his likes, or go into the depths of the OS.
During late summer 1997, we plan to start alpha and beta releases of 
the
A\BOX OS for developers running on our PowerUp accelerators. With this
solution, developers can start to prepare their existing software for 
the
A\BOX. The A\BOX alpha and beta OS release will be available for a 
small
fee for the CD and possible documentation cost to all developers; 
free update
support will be available via our FTP site.
We also will release hardware functionalities of the A\BOX custom chip
CAIPIRINHA as a spin-off on a graphic card add-on for the CYBERSTORM 
PPC
later this year (unfortunately not for free); this graphic card will 
have
a stand-alone version of our DLRP Display List Risc Processor which 
can
read random image data from the main memory via DMA and write it to a 
WRAM-based
frame buffer. With this board and the supporting driver, developers 
can
start to experiment with the superior functionality of this design, 
although
performance is limited compared to the original A\BOX design (but will
be, however, VERY competitive to existing graphics cards from the PC 
market).
Why didn't we commit to pOS from ProDAD?
After the massive marketing campaign from ProDAD for their upcoming 
pOS,
many users have asked us to use their pOS as the A\BOX operating 
system,
and some have critizized in harsh words that we are not planning to 
do it.
As a matter of fact, we have yet not seen pOS running on 68k machines 
except
at a presentation on the Amiga 96, and we havn't seen it running at 
all
on a PowerPC machine. An operating system, however can not be 
evaluated
from looking on a nicely designed GUI; it must be evaluated running 
completely
independent from any proprietary features (or OS code) of the Amiga 
itself,
showing multitasking and multiprocessor support, as well as all the 
necessary
support for graphics, sound, drivers for SCSI, ethernet, ISDN, other 
devices
and anything else that counts.
We have spent a lot of money and efforts (and will spend even more) 
into
our current developments, and we need to make sure that we have a 
working
OS solution that fullfills all the demands of future computing. As we 
had
announced earlier, we do have a fully AmigaOS 3.1 Exec running, and 
had
other OS-compatible functionalities under development. However, a next
generation
OS needs significant enhancements, so we can't see that an OS which 
is extremely
close to the AmigaOS 3.x can fullfill the demands. That's also valid 
for
pOS; therefore we won't use or support pOS unless we can be convinced 
that
it is a true, working and complete alternative. It must also be taken 
into
consideration that other companies - like for example Be - needed 
many years
of work and lots of manpower and money to build a complete OS - and 
some
even say that BeOS is not so complete yet, at least in respect of 
system
services and applications, tools and driver support -  what leads us 
to
doubts whether pOS can be completed, updated, expanded and maintained 
in
a way that would be expected from it.
We are not, as some assumed, going to prevent ProDAD from porting pOS 
to
any of our hardware; we simply won't support it - especially in it's 
alpha
state - but offer and support our own solutions. We can't commit to 
pOS
as the OS solution for our PowerUp accelerators - as ProDAD wanted us 
to
do - and later consequently for the A\BOX, what would automatically 
happen
once we commit to pOS on the PowerUp boards and leave software 
developers
only this choice; this would mean that the success of our hardware 
project
A\BOX would fully depend on external software/OS work by a third party
- a scenario very benefical to pOS, but very difficult for us in case 
pOS
can not meet the expectations it has created.
If in the future pOS is fully operational, provides all necessary 
functionality
of a modern OS, gets sufficient support from software developers and 
can
be ported to the A\BOX in a way that it can make use of the advanced 
hardware
functionalities of the A\BOX, we would probably welcome a pOS port as 
an
alternative OS option for our A\BOX.