Messages in this thread | | | From | Rick Hohensee <> | Subject | some AmigaOS/UNIX comparison points, from faulty memory | Date | Sat, 10 Jul 1999 17:14:59 -0400 (EDT) |
| |
AmigaOS was based on TRIPOS, which was an OS developed by Martin Richards et. al. at Cambridge. Martin Richards also wrote BCPL, which C is descended from. TRIPOS was designed in full view of and knowledge of UNIX, and apparently, full comprehension of UNIX, to be everything you ever wanted in a UNIX, and less. TRIPOS was true pre-emptive multi-tasking, SINGLE user. AmigaOS perms are similar to UNIX file perms, but there are fewer fields. The only user is root. There is no process memory protection; one bad program takes down the box. Interprocess communication is very fast. What Amiga realtime did in hardware is somewhat similar to what rtLinux permits in software. The nature of reality is that one computer can have one hard-realtime task it services at some periodicity. A periodic event can be divided into different tasks on sub-periods of the top frequency, somewhat like overtones of a pitch upside-down. The Amiga CPU was clocked to a multiple of a video signal. The hardware interrupts were periodic to a horizontal video scanline. Broadcast video, NTSC or PAL. At the beginning of each horizontal screen trace, several interrupts were serviced in hardware. Disk IO and audio, as I recall. Something else too. Now, gee, this is fun, due to the nature of hard-realtime, audio on the Amiga is an "undertone" of the video. On an NTSC machine the max sample rate for the native DACs was some wierd thing like 28.7 khz. Or anything less than that, basically. The Amiga/user feedback loop was very well thought out. Everything that was interested could see the mouse. The Amiga lacked text-mode hardware. This is a lack. The "snip" program, similar to "selection" or gpm, had to do a sort of "digital font recognition". Text was slow, and large in memory. Also synced to horizontal scan lines was the Copper chip, one of the video co-processors. The Copper could change what is analagous to an X "visual" between horizontal traces. "Visuals" were pull-down; you could grab a screen at the top and pull it down, and if there was another one under it it would be revealed at scanline ply, and these two screens might be entirely different video modes, such as # of bitplanes and Hold-and-modify or not. HAM, hold-and-modify video mode, might vaguely be described as hardware-jpeg. The IFF file format was developed on the Amiga, IIRC. Idono, but I think IFF is basically an un-bounded data description language. Icons were separate files, mercifully, and could thus be deleted en mass from a box based on thier standard suffix of .info.
What does this have to do with Linux? Ah, this is true Marxist Linux, Harpo-style. Recall Harpo Marx at the grand piano in "Night at the Opera". He can't deal with a piano. He bangs. Wrong sound. He bangs harder. He destroys the piano. He flings the soundboard, the clavier, the pedestals, the lid. Flappers scatter in terror. He is struck placid at the sight of the brass frame of the strings. He gently raises it into it's natural upright position. A HARP! .*pluck*. ahhh. Harpo has found his voice.
To some extend AmigaDOS is a subset of Linux. The multi-user part is easy, ignore it. As to multi-media, rtlinux is a move in this direction, but in software. The one-addressspace thing is doable. If Bash had virtual FDs for builtins, i.e. if cat could be a builtin, then bash could be the beginnings of shell=amiga_within_linux. UNIX doesn't make much distinction between a process and a user. I'd like to see "user = addressspace". I'm told, but I don't comprehend, that there are ways to do this in Linux now at reasonable cost. Even in a multi-user environment, if all a user's processes share an addressspace, if one process takes a dive, taking out a whole user, just one user is effected. This is acceptible in "production environments".
I thought Be was going to save me from klone hardware, but they aren't. The klone model of a video card still cannot assume sprites. IBM couldn't do sprites for the same reason Microsoft can't be too closely affiliated with a UNIX, IMO. When you're that big it's expensive to admit someone else had a good idea. Anyway, there's not much that can be done about the hardware mess.
I see one general categorization of Linux users. There's the net.gods, i.e. the classico UNIXers, which the core developers mostly are, and the orphaned Amigans. I, obviously, am the latter. So why don't I get an Amiga? Because, given open source, Linus' management style, poor hardware designs but with plenty of speed at low cost, and so on, Linux is now better for what the Amiga was about than it appears to me the Amiga ever will be again. I hope I'm wrong, but it was over for me when they announced x86 support.
So, as mutated Linuces appear with no concern for "production environments", keep in mind that they may not have your looks, but they have your vigor.
Rick Hohensee
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.rutgers.edu Please read the FAQ at http://www.tux.org/lkml/
| |