Differences between Native Oberon and the Unix Oberon ports

Adapted from an original paper written by Günter Feldmann (fld at Informatik.Uni-Bremen.de) 8.01.2002

1) File System

Native Oberon resides in a dedicated partition with Native's flat file system (AosFS). In Native Oberon, one can mount other file systems in order to transfer files to/from other file systems: FAT12 (diskette), FAT 16, FAT32, ISO. Also the network or a floppy disk (as Backup device) can be used as transport media.

Unix Oberon (like Mac Oberon and Win Oberon) uses the file system of the guest system (Solaris, Linux, ...). Every Oberon file is a file in the underlying Unix file system and every Unix file (device) is directly accessible by Oberon.

For reading and writing of Unix ASCII files, the commands 'EditTools.OpenUnix' and 'EditTools.StoreUnix' can be used.

As the Unix file system is hierarchical, the Unix Oberon file system is hierachical too. The directory in which Oberon is started is the current directoy '.'. Filenames may contain absolute or relative paths,

e.g.: EditTools.OpenUnix "/etc/X11/XF86Config-4"

If in Oberon, an open is performed on a file without path specification in its name, the system searches the file in the directories listed in the environment variable OBERON. OBERON is set in the startup script and can be modified to suit the users demands. The current working directory '.' should be the first element in OBERON. This guarantees that files in '.' always hide files with the same name in the other directories.

If Oberon has write permission for an opened file, the path appears in the NamePlate and 'Store' writes it back to the original place. If Oberon has no write permission for the opened file, the path is missing in the NamePlate and [Store] writes it into the current working directory.

Oberon may only be started in a directory for which it has write permissions!

2) Mouse Buttons

On Unix Oberon, the Ctrl- and Alt- keys can be used as substitutes to MM and MR buttons. As soon as a real MM or MR button is pressed, these keys are disabled. This is the same behaviour as for Plugin Oberon and MacOberon.

For a system without 3-button mouse, the new Gadgets behaviour can be enabled by editing a line

MouseButtons = n

in the System section of Oberon.Text (n < 3 --> Oberon.New = TRUE).

3) Keyboard Layouts

4) Oberon Language Compilers

Cfr. ETH Oberon Compilers.

5) Concurrency (preemptive multitasking)

6) Exception Handling


27 Aug 2002 - Copyright © 2002 ETH Zürich. All rights reserved.
E-Mail: oberon-web at inf.ethz.ch
Homepage: http://www.ethoberon.ethz.ch/