home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Archive Magazine 1997
/
ARCHIVE_97.iso
/
discs
/
mag_discs
/
volume_08
/
issue_06
/
risc_os
/
Seminar
< prev
Wrap
Text File
|
1988-12-12
|
7KB
|
141 lines
The Philosophy of RISC OS
(This document is an edited form of the note handed out to Independent Software
Vendors during a course of seminars held by Acorn to introduce them to RISC OS.)
Acorn System Software
---------------------
From The BBC Computer onwards, Acorn has provided system software with
its products that emaphsise an *abstract* view of device and IO control.
By accessing system calls rather than absolute locations and direct
hardware poking, applications can be made *future-proof*, so that they
will run on future releases of hardware and of software. This applies
to IO ports, graphics, and storage devices.
As a consequence, there are numerous useful (and commercially important)
programs that run on Archimedes which have been around since the earliest
days of the BBC Computer. Considering the staggering differences in
underlying hardware between these two systems, no other hardware
manufacturer has managed this to such an extent. When BBC Computers first
appeared PCs did not exist, and Apple ][s and Z80-based machines were
prevelant in the microcomputer world: how many of those programs still run
usefully today on current products?
There are numerous other programs from the BBC machines which have
failed to stand this test. Sometimes there are good reasons for this:
if you wish to push a specific configuration to its limits you may have
to write for that specific model.
At other times, however, this is not so true. There were numerous programs
for the BBC Computer which could not be ported to the Master or the Compact
or to Archimedes without considerable pain. Similarly, there are commercial
Arthur 1.20 applications which:
rely on specific return addresses into the ROM
poke device hardware directly
access ADFS internal workspace
access kernel internal workspace
scribble on page zero
access the system heap
assume the base hardware address of the screen
assume the use of :0
By doing these things without good reason, an application mortgages its
future in terms of portability to future machines, operating system
releases, and architectures.
Perhaps, at one time or another, you have had to do one of these things
in order to get round some fundamental limitation of the current machine.
That is all very well, but THINK FIRST!
Some more subtle assumptions that should not be made:
do not reconfigure the machine
do not assume N-key rollover
do not assume that video frame refresh is 50Hz (or any other value)
do not assume that page size is 8 or 32K
do not assume that the alphabet is Latin-1,
or that the keyboard is English (international sales!)
do not assume the precise processor speed:
it could get faster, or slower
do not assume the boot-up configuration properties that the
user likes
Some of these were much harder to live with on Arthur 1.20. Any such
decisions should be reevaluated with RISC OS.
How is RISC OS Different from other systems?
--------------------------------------------
RISC OS is not just Arthur with a few additional features. The functionality
of the system as a whole has expanded out of all recognition, so that it
should be thought of as a completely different system, more advanced and
more effective at supporting high-quality applications than any competing
operating system.
The best way to understand the difference is to see a demonstration, and
to try using it.
RISC OS is about
making programs EASY TO USE
making programs WORK TOGETHER
making programs EASY TO CONTROL
It is not simply that we have provided multi-tasking: we also provide the
advice, the guidance and the example to make multi-tasking programs work
together harmoniously and productively, while remaining under easy control
of the user.
EASY TO USE
-----------
RISC OS is easy to use because it provides a *consistent* model for
easy-to-understand operations. Applications do similar things in a similar
way. Standard facilities are provided for menus, dialogue boxes, and icons.
Standard metaphors are provided for data transfer, loading and saving,
loading and unloading an application, WYSIWYG colour and graphics, printer
drivers, selection, and so on.
Every aspect of RISC OS encourages applications to make life easier for
the user. The use of common metaphors for common operations is further
ensured by the extensive written guidelines that we supply to applications
authors.
PROGRAMS WORKING TOGETHER
-------------------------
The constantly resident Filer provides instant access to filing system
operations, whatever other applications are running. The user interacts with
this when loading and saving files for running applications, rather than
having to learn about some separate part of each application. Identical user
actions are also used to transfer data between applications. As another
example, facilities such as interactive help can be built using applications
that talk to each other, rather than having to build such facilities into
the system itself.
All of these are examples of the operation of general-purpose
primitives within RISC OS, rather than being built-in special cases.
This demonstrates the power of the underlying system.
EASY TO CONTROL
---------------
The Task Manager utility provides the user with instant understanding of which
applications are running, and how much memory is used by each. It also
provides the means to control interactively the use of memory by the
operating system. Unlike many systems there is no "fragmentation" problem
caused by changing such things dynamically, making best use of Archimedes'
memory mapping hardware.
The Palette utility provides the user with control of the screen mode
being used, allowing on-the-fly tradeoff between memory usage, resolution,
colour and performance. All applications are written to run in any mode,
making the best use possible of whatever graphics facilities are available.
The configuration and installation guidelines for applications ensure that
any application can be run from any filing system. Complex installation
procedures are not required for applications, they can simply be moved from
one location to another on the desktop. Access to central resources such as
font libraries is also provided in a way that is easy to control.
On many systems multi-tasking is only provided at the cost of additional
complexity for the system user, installer and maintainer. On RISC OS these
things are actually simplified by the presence of multi-tasking, rendering
them comprehensible (and thus controllable) to all.