Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!watmath!clyde!cbatt!ucbvax!jade!eris!mwm From: mwm@eris.UUCP Newsgroups: comp.sys.amiga Subject: Re: Some thoughts Message-ID: <2370@jade.BERKELEY.EDU> Date: Fri, 30-Jan-87 19:45:20 EST Article-I.D.: jade.2370 Posted: Fri Jan 30 19:45:20 1987 Date-Received: Sat, 31-Jan-87 20:05:30 EST References: <17128@ucbvax.BERKELEY.EDU> Sender: usenet@jade.BERKELEY.EDU Reply-To: mwm@eris.BERKELEY.EDU (Mike Meyer) Organization: Missionaria Phonibalonica Lines: 111 Keywords: AmigaDOS, MINIX, UNIX, GNU In article <17128@ucbvax.BERKELEY.EDU> robinson@shadow.berkeley.edu (Mike Robinson) writes: >[Will MINIX have a line-eater?] No, it doesn't come with UUCP :-). >Why does everyone want to run MINIX? Because it's like UNIX, of course! >But why does everyone want to run UNIX? Hmm.... I dunno. I don't wanna run Unix, I want AmigaDOS versions of all those neat Unix utilities. I'll post a marvelous Thompson quote about the Unix kernel when I get home where the quote is.... >But on the other hand, there are some disadvantages to MINIX: > > 1. Almost everyone agrees that it is not adequate as distributed, which > will inevitably lead to a hodgepodge of nonstandard ports, patches and > hacks. Centralized processing will only alleviate, not eliminate, the > problem. Look at the confusion with different versions of Amiga > software, where you have centrally distributed, official releases. But MINIX was WRITTEN so people could hack on it! The above is a FEATURE (or so those who hacked Unix claimed), not a bug. > 2. Running MINIX will require maintaining two different environments for > the Amiga. One for the UNIX-like software that runs under MINIX, and > one for the Amiga software, which is specially designed to take > advantage of the Amiga's unique hardware. > > Two sets of floppies, or two partitions on the hard drive. Either > way, you never get entirely away from AmigaDOS. Either that, or blow off the AmigaDOS environment. Always a problem when you go with a non-vendor-supplied os. On the other hand, given Minix, plus a PD C compiler, I would very quickly be in the state of having sources to _everything_ I use, so I could then move them to my next microtoy (whatever it is.....) with minimal pain... > 3. Software will still require porting to MINIX. MINIX is an incomplete > implementation of version 7 UNIX. Much of the software in the public > domain assumes a complete 4.? or Sys V.? implementation. The facilites missing from the v7 system call list, from the horses (Tanenbaum's) mouth: mpx is missing. This means it works better than mpx in most systems distributed, which panic'ed (read "guru'ed") machines as often as it worked. phys is missing. With no MMU, this is a moot point. plock is missing. Without swapping, everything is plock()ed for free. ptrace is missing (at which point the audience applaudes - me among them, having spent many hours chasing bugs related to ptrace & shared text....). It's only real use is for debuggers and similar creatures. Zero (or near zero) applications should use it. Something needs to replace it so you can have a debugger; but exactly what is unknown. /proc would be nice, though. On the other hand, most 4bsd/Sys[III,V] software should work as is in a v7 environment. The major changes from v7 to those at the syscall level are for tty control (v7 is inadequate), plus hooks for better control of groups of processes. Taking out the shl/process control stuff should be the hardest part. The next step is the libraries. Given a v7 library set, doing the rest to get to either sysV or 4BSD levels for the heavily-used stuff from scratch should be simple. The hardest part would be the obscure-but-incredibly-useful-if-you-need-it stuff, like dbm and mp. >MINIX only really has three claims to unixness: > > 1. It comes with a number of common UNIX utilities. > 2. It comes with a UNIX-like shell. > 3. It supports many common UNIX system calls. And that's about all that can be said for many things that are _derived_ from real Unix, too. Crock, how else do you define unix? >So my idea, the point of all this, is to make AmigaDOS look like UNIX. If >MINIX can look like UNIX, there should be no real reason why AmigaDOS can't. >If this were done, one would have all the advantages of MINIX (except source >to the kernel), without all the disadvantages. Unix and AmigaDOS software >living and running side-by-side in the same environment. Ah, but you've still gotta live with the biggest kludge in AmigaDOS - not being able to kill procs from outside because of the resource tracking problem. OS/9 and Minix solve that. >It seems to me that the only thing necessary for a UNIX environment on the >Amiga, that is even more free than MINIX, is a (loosely) organized and >(loosely) coordinated effort to duplicate the environment, with duplication >as the explicit goal. This would be somewhat along the lines of the GNU >project, but would have a tremendous head start in that we already have an >operating system (the hard part). In fact, much of the software generated >by the GNU project would be easily ported to the Amiga. The GNU software may not be useable - it's being designed for Sun/VAX class machines, and may not be useable on an Amiga. We'll have to wait and see how the first two attempted ports (GNU cron and GNU tar) come out. The first GNU software releases (emacs, scheme, and bison) don't seem to have made it, though. Basically, I agree with you; putting unixlike utilities on AmigaDOS is a very good thing to do. Also a lot more fun (but I spend my days hacking Unix kernels, and don't want to do yet more stuff like that at night). Other people may disagree about the relative pleasures of the two paths, and should be encouraged to follow their choice. If nothing else, the competition will make C/A work that much harder on improving AmigaDOS.