Path: utzoo!utgpu!jarvis.csri.toronto.edu!mailrus!tut.cis.ohio-state.edu!unmvax!ncar!boulder!sunybcs!bingvaxu!leah!rpi!rpi.edu!deven From: deven@pawl.rpi.edu (Deven Corzine) Newsgroups: comp.sys.amiga.tech Subject: Re: Amigix Message-ID: Date: 10 Apr 89 10:32:07 GMT References: <5121@cs.Buffalo.EDU> Sender: usenet@rpi.edu Organization: RPI Public Access Workstation Lab, Troy NY Lines: 127 In-reply-to: ugkamins@sunybcs.uucp's message of 9 Apr 89 05:13:09 GMT In article <5121@cs.Buffalo.EDU> ugkamins@sunybcs.uucp (John Kaminski) writes: >I subscribe to comp.os.minix, which is about MINIX, a V7 UNIX-like operating >system that was originally developed on an IBM-PC then ported to the Atari-ST >series of computers. I have received email stating that an Amiga port was >underway, and may possibly be available by year's end. I have heard about this Minix port to the Amiga. I would like to see it, though my personal opinion remains than it could be better implemented under Exec, both because Exec is more dynamic than Unix and Minix are (e.g. doubly-linked lists vs. static-sized tables) and it would save the difficulty of reinventing the wheel as far as writing a scheduler, device drivers, a message-passing system, etc. As a learning tool, however, rewriting the low-level as well is just fine... >MINIX is for the most part source code compatible with many UNIX varieties, >of which V7 is the definitive base. The main difference is in the implemen- >tation of the interal workings. The "better" difference is that the MINIX >"project" was started as a teaching/learning tool on operating systems (much >as Pascal was intended to be a teaching programming language) and therefore >is distributed with FULL SOURCE CODE for everything EXCEPT the C compiler. I am working on writing Amigix, a V7 based environment layered over Exec, which should be reasonably source code compatible with various Unix systems, as is Minix. This project was in fact inspired by Minix and Tanenbaum's book. It is not intended as a learning tool primarly, but as a practical environment and platform for more effective utilization of the Amiga computer. It will (as I mentioned) be significantly different from real Unix in internal implementation, but it will be very similar from the programmer's point of view, and hopefully from the user's as well. I intend to start with the basic Unix V7 system calls as a base, and add SysV/BSD Unix system calls and libraries as seem appropriate/feasible, along with Amiga-specific extensions. One point I should note is that upon full release, I intend to distribute Amigix with full source code and binaries. Exactly how much will be implemented at that point in unclear. I hope to have at least Unix V7 system calls, some SysV/BSD system calls, most of the easier library calls, logical Amiga extensions, a tty driver (probably based on console.device), job control (depends on the tty driver), possibly a curses library (have to see how difficult it looks), *maybe* a file system and a shell, some utilities and a pile of Unix-type filters all written before making a full release complete with source code and documentation. Eventually, I would like to have a file system (if I don't at the first release), integrated networking software and some other goodies. Preliminary releases will likely be an alpha release with the straight V7 syscalls, beta with more syscalls and libraries (maybe tty driver and job control), gamma with most everything but the file system and some utilities, and perhaps a delta release with the file system, shells and utilities. Such preliminary releases will NOT be redistributable, and may or may not be accompanied with source or documentation. Distribution will start very small for the the alpha release, (probably copies to Randell Jesup, maybe a couple others at CATS, Peter Da Silva, and 3-4 others, assuming they are interested) to maybe a dozen more for the beta release, perhaps a couple dozen for the gamma release, and if there is a delta release, it will probably be distributed to as many as 100-150 people to help ferret out bugs and test it all out. This, of course, presupposes that there will actually be that much interest in the project, and people actually want to have such a thing. Maybe people won't care. I'll just have to see how it goes. In the (unlikely) event that I simply give up on the project, I will release everything developed to that point, source, binary and documentation, such that others may attempt to work on it. However, I don't expect to give up on it. I may, however, be delayed for unknown amounts of time by mundane things such as day-to-day life. >For the definitive reference on MINIX consult (search for at a library or go >buy) the Prentice-Hall publication >Operating Systems: Design And Implementation >Andrew S. Tanenbaum >ISBN 0-13-637406-9 >This includes the source code listing for the MINIX system including all but >some of the device drivers (most notably the printer and hard disk >drivers). >Andy is THE best computer writer I know. Not only does he seem rather >knowlegeable (sp?) but he is *EXCELLENT* at expressing what he is writing >about. I have a copy of this book (borrowed, actually) and I also highly recommend it; it is well written and contains lots of useful information which is practical along with the straight theory. An excellent book. Randell, Peter, CATS, et al. -- (you know who you are... :-) If you are interested in obtaining preliminary releases for this project, should they be forthcoming, please send me Email and tell me so. In fact, anyone is welcome to request preliminary distributions, but I make no guarantees, and do not wish preliminary releases to get out of hand. If you're interested, tell me who you are, an Email address that works, (numeric address also if on the Internet) and why I should include you. :-) Keep in mind I will be willing to have larger distributions for the later releases, but permission for redistribution of preliminary releases will be explicitly denied. The first full release will be distributed with source and documentation as well as binaries, and will be freely redistributable. Actual size of preliminary distributions will be mainly be determined by actual interest expressed and arbitrary judgements by myself. I reserve the right to do whatever I feel like. :-) One unknown is whether I will even attempt to write a C compiler for Amigix... all I can say is that I will NOT write one for the first full release, but I will at least look into the idea after that point; I see writing a compiler (from the ground up, that is) to be a challenge of roughly the same magnitude of the syscalls and libraries, as is the file system. So I don't know if I'll attempt it. I'm leaving it as a simple "maybe". Anyhow, I'm talking too much again, so I'll stop now. Deven -- ------- shadow@pawl.rpi.edu ------- Deven Thomas Corzine --------------------- Cogito shadow@acm.rpi.edu 2346 15th Street Pi-Rho America ergo userfxb6@rpitsmts.bitnet Troy, NY 12180-2306 (518) 272-5847 sum... In the immortal words of Socrates: "I drank what?" ...I think.