Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Posting-Version: version B 2.10.3 4.3bsd-beta 6/6/85; site amiga.amiga.UUCP Path: utzoo!watmath!clyde!cbosgd!ihnp4!houxm!hjuxa!petsd!pesnta!pyramid!amiga!bruceb From: bruceb@amiga.UUCP (Bruce Barrett) Newsgroups: net.micro.amiga Subject: Re: Amiga OS (vs Unix) Message-ID: <618@amiga.amiga.UUCP> Date: Wed, 29-Jan-86 16:03:21 EST Article-I.D.: amiga.618 Posted: Wed Jan 29 16:03:21 1986 Date-Received: Sat, 1-Feb-86 00:42:32 EST References: <11448@ucbvax.BERKELEY.EDU> <142@atux01.UUCP> <357@ccivax.UUCP> Reply-To: bruceb@amiga.UUCP (Bruce Barrett) Organization: Commodore-Amiga Inc., 983 University Ave #D, Los Gatos CA 95030 Lines: 64 In article <357@ccivax.UUCP> rb@ccivax writes: (edited) >... A simple unix application may require say, 8 lines of code to say >"hello world". An operating system that requires 10 includes, 200 lines, >and 60 parameters, ... will cost more to maintain than in an operating >system that requires six lines like: > >main() >{ > char *message="hello world"; > fd=open("window1",1); ?? where is fd defined ?? > write(fd,message,sizeof(message)); >} > Ok, how about a system that takes 4 lines and 1 parameter?: main() { printf("Hello World"); } When compiled and linked using the "makesimple" execute file shipped with V1.1 of the development system (V3.03 of Lattice C) we can do this in 4 lines. Under the CLI this code prints "Hello world" in the current window, under workbench it opens a window for the output. You want to define the size and shape of the window to try: #include "stdio.h" main() { FILE *fd; fd = fopen("CON:10/10/300/150/Title of window", "w+"); fprintf(fd,"Hello World\n"); Delay(150); /* optional, so you can see output */ fclose (fd); /* optional, but good practice */ } > The ability to add new DEVICE DRIVERS to a running system... You can add device drivers without changing any of the kernel or kickstart code. >The ability to share code between applications via 'trap vectors'. Unix >lets you share executables but if two routines call printf you get two >copies of the full floating point library tromping around both disk and >ram. OS-9 lets you share "modules" like the floating point library, >graphics libraries, and the like (they are mounted like drivers). >What about Intuition? We support shared devices and libraries. At the moment the linked floating point support, printf, ... is not shared. Amiga DOS, Intuition, graphics, speech, audio, serial and parallel devices and libraries (to name a few) are shared. You can write your own libraries and devices which can be shared. >Only what you need is in core. Unix has drivers for things that haven't >even been invented yet just to take up kernal space. Outside of the >file manager, you only mount what you really need. What about intuition? Much of what you need (or don't) is in "ROM". "loadable" devices and libraries which you are not using (including: serial, parallel, printer, speech, and any custom devices and libraries) are loaded and removed on an "as needed" basis. Hope this answers some of your questions. As you can see we do things differently than Unix. Not necessarily better or worse. Designs and implimations are compromises and not always technically driven. Bruce Barrett, Commodore-Amiga, Inc.