shadow@pawl.rpi.edu (Deven T. Corzine) (08/02/89)
*sigh* Here I go again. On 1 Aug 89 12:54:54 GMT, lofaso@titan.tsd.arlut.utexas.edu (Bernie Lofaso) said: In article <195@VAX1.CC.UAKRON.EDU>, benton@VAX1.CC.UAKRON.EDU (Kevin Benton) writes: Kevin> I'll agree with you that AmigaDOS is half way decent for the Kevin> user interface, although from a programmer's standpoint, the Kevin> operating system itself is about the buggiest thing I have ever Kevin> seen. When my Amiga crashes CLI's for no apparent reason, I Kevin> would tend to think there must be something better out there, Kevin> especially since Minix comes with SOURCE CODE!!!! First, I think AmigaDOS's UI sucks. But that depends to a degree on what you're used to. I'm used to Unix, and I find AmigaDOS annoying and clumsy, and often frustratingly limiting. From a programmer's standpoint, AmigaDOS itself isn't notably buggy. Many of the PD/Shareware/Freeware utilities and programs you need to make the damn UI halfway decent ARE, but that's another issue. What IS poor is the BCPL shit showing up in the programming interface. Also arbitrary limitation of functionality. I can understand time pressure forcing C-A to give in and use outside help and BCPL to implement the file system. HOWEVER, the "official" languages for the Amiga were (and are) primarily Assembly and C. Both share stack, pointer and string conventions. BCPL does not. To use BPTRs and BSTRs in the programming *interface* is simply unforgivable. All the dos.library functions should have internally converted the passed arguments to BCPL crap. This way, everyone could have been saved *much* irritation, bugginess and hassle, and the BCPL code could be later cleanly replaced with C or Assembly code. Furthermore, using a nonstandard jump table for dos.library was equally stupid. Being unable to SetFunction() calls in dos.library is simply a ridiculous and unnecessary restriction. Doubly unforgivable is crippling the *Exec* OpenLibrary() and OpenDevice() functions. How are they crippled, you ask? An Exec Task can not safely run them. Why not? If the library or device isn't found, *AmigaDOS* butts in and tries to load them out of LIBS: or DEVS:. Now, this isn't unreasonable, until you consider that it will *fail* unless the Task is also an AmigaDOS Process. You'd think the damn thing could just create temporary data structures it needs, but NOOOO. Some things, like needing to be a Process to call dos.library's Delay() function are annoying and silly, but understandable and acceptable. [besides, it belongs in timer.device as Sleep()] Then there's the stupid 20 CLI limit... CATS-folx: Sorry to be so caustic, but things like this just strike me as SO inconceivably *stupid* that I have real difficulty understanding why anyone would do it. *sigh* Well, on with the show. Bernie> I have a very difficult time with the part about "the buggiest Bernie> thing I have ever seen". This is simply hog wash. AmigaDOS Bernie> is no more buggy than most other operating systems. I'll buy that. Bernie> My guess is that Mr. Benton may be running much PD software Bernie> which, as one might expect, does not live up to more rigorous Bernie> programming standards that some of us might expect. There are Bernie> several issues, which Mr. Benson's message alludes to, as have Bernie> others posted on the net, which nobody seems to have Bernie> addressed. Ah, but the PD software is virtually _necessary_ to maintain a reasonable environment. (the stock configuration is virtually unusable, in my opinion.) [particularly the CLI] Bernie> How many people who have OS source (to Minix or anything else) Bernie> would actually do anything with it? Arguably few would attempt to *change* things in the operating system, but many programmers would be interested in seeing how things work, and it allows programmers to analyze how they need to write a program to have it mesh properly with the OS. [I've found the Exec disassembly to be of great usefulness...] (program to generate it is on a Fish disk.) Bernie> While there are plenty of good programmers who might could do Bernie> something with it, would they have the time or care? The Bernie> number of those who would are statistically insignificant Bernie> compared to the number of those who wouldn't know what to do Bernie> with the code. Typically systems of this magnitude are either Bernie> incomprehesible or trivial. Minix is designed to be reasonably comprehensible, though it is quite large, of course. As for whether it would be used... even if the source *isn't* used [which I doubt] it hardly hurts to have it available. I don't see Commodore distributing commented source for all THEIR code. [not that I'm saying they SHOULD, but it would be nice.] Bernie> Why do you want Minix (Unix, etc.) on your Amiga? I suspect Bernie> many people voice a desire because it's extremely popular and Bernie> they are used to it. Excellent reasons, but are you also used Bernie> to the system administration headaches that can come along Bernie> with it? I don't see that Minix/Unix on an Amiga need be any more of a headache for system maintenance and administration than AmigaDOS itself is. Yes, Unix is multiuser, but that doesn't need to complicate things much. Managing an AmigaDOS system well can be a lot of work as well. [unless you LIKE using only the stock configuration...] Bernie> (Since only a C= Unix would ever become popular, when you add Bernie> devices to Minix, etc. guess who gets to write the device Bernie> drivers. :-) I don't see how that necessarily follows. True, C-A Unix [Amix] gives instant name-recognition, and some expectation of support and service. However, I consider it to be a stretch to claim ONLY a C-A environment could thrive. Consider ARexx. Bernie> There are also other disadvantages to Unix-like systems. I've Bernie> not seen one yet that had decent real-time response. And how often do you run across Unix systems without MMUs? Virtual memory can slow a system way down. (So much easier on the Amiga, it just crashes.) Real-time Unix systems DO exist. Most are not. The Amiga Exec OS achieves excellent response by not supporting VM, message-passing by reference, strict task prioritizing and other such little tricks. They can work nicely and attain impressive speed and response time, but there ARE clear drawbacks. Bernie> Well, some are decent, but the response of AmigaDos is in my Bernie> opinion superior. The responsiveness of Exec is excellent. AmigaDOS isn't always so hot. Consider directory scans, a VERY common operation, which is slow as all hell. [and don't bother to mention FFS -- it's backpatching to make the file system what it should've been to begin with.] Bernie> There is also a more elegance of design to the AmigaDos Bernie> system. AmigaDOS? More elegant than Unix? Don't make me laugh. Bernie> (That might be good for a few flames.) Big surprise. Bernie> I wouldn't want to do without the ASSIGN command and logical Bernie> volumes in general. I could go on. Logical volumes are among the few _good_ things about AmigaDOS. Take a gander at dos.library sometime, however. Elegant? Ha. Kevin> I don't know if you have ever used Unix before, but there's a Kevin> lot more for Unix than just Multiple Users... (not to mention Kevin> 2000 times more pd software, interprocess communication, etc.) Bernie> Now you've hit the nail on the head... it's not that you're in Bernie> love with Unix's process communications (which incidently Bernie> aren't as good as AmigaDos except on newer systems like Bernie> SunOS), Oh? So you're saying the brilliant PIPE: AmigaDOS device is better (and more elegant!) than Unix's pipe() system call? How about fork() and exec()? [execve() for purists.] Or are you thinking of Exec's message-passing? It has advantages and disadvantages, but is decent overall, and none to AmigaDOS's credit. Maybe you're thinking of the AmigaDOS packets for asynchronous I/O? [granted, elegant in concept, but ugly in implementation.] Bernie> but it's the utilities! Damn right. Unix tends to be a far more constructive environment. I'd much rather spend my time wrestling with a problem I'm trying to solve than wrestling with the poor tools I have available to use. Bernie> Life is not worth living if I can come in early in the morning Bernie> and grep a few files to start my day. With make, diff, awk, Bernie> etc. etc. etc. life is so much easier. Yes. Bernie> But, since most of these have been ported to the Amiga, Bernie> including some impressive user shells to replace the CLI Bernie> (don't like CLI... only dirty three letter word I know), Bernie> what's the advantage? Well, now. Here you are bringing up the same PD (/Free/Shareware) software you were condemning before as the bugginess culprit. You can't have it both ways. These ports (which are usually not as good as the real thing) are NOT part of AmigaDOS. Many excellent utilities ARE part of Unix. (generally speaking.) The advantage? They usually WORK, as documented, without crashing the entire machine if somethign goes wrong. Bernie> I think that if people consider arguments like these, there Bernie> would be much less desire to run Unix on the Amiga. If people believe faulty arguments, then maybe so. I, for one, don't agree. Bernie> (Did I also mention disk and memory requirements for Unix. Bernie> Hardware vendors love it I'm sure.) For standard System V Unix, the system requirements are a bit much. Same for BSD. Not so for Unix Version 7. It's small and elegant. All current versions of Unix are derived from it. It has most of the major concepts that make Unix so successful. Minix is a complete reimplementation (a much cleaner one) of Unix V7, distributed with source code. [As Unix itself was, long ago.] {My Amigix project will also use Unix V7 as a base. But that's a subject for other articles.} Deven -- Deven T. Corzine Internet: deven@rpi.edu, shadow@pawl.rpi.edu Snail: 2214 12th Street, Troy, NY 12180 Phone: (518) 271-0750 Bitnet: deven@rpitsmts, userfxb6@rpitsmts UUCP: uunet!rpi!deven Simple things should be simple and complex things should be possible.
papa@pollux.usc.edu (Marco Papa) (08/02/89)
In article <SHADOW.89Aug2040433@pawl.rpi.edu> shadow@pawl.rpi.edu (Deven T. Corzine) writes: > >{My Amigix project will also use Unix V7 as a base. But that's a >subject for other articles.} The "Amigix project" has won the comp.sys.amiga.tech "vaporware" prize for 1989. Congratulations! :^) And, by the way, try to use less derogatory language, thank you. I guess it's time to add to my KILL file :-) -- Marco Papa 'Doc' -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= uucp:...!pollux!papa BIX:papa ARPAnet:pollux!papa@oberon.usc.edu "There's Alpha, Beta, Gamma, Diga and Caligari!" -- Rick Unland -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
shadow@pawl.rpi.edu (Deven T. Corzine) (08/03/89)
On 2 Aug 89 16:45:50 GMT, papa@pollux.usc.edu (Marco Papa) said: In article <SHADOW.89Aug2040433@pawl.rpi.edu> shadow@pawl.rpi.edu (Deven T. Corzine) writes: Deven> {My Amigix project will also use Unix V7 as a base. But that's Deven> a subject for other articles.} Marco> The "Amigix project" has won the comp.sys.amiga.tech Marco> "vaporware" prize for 1989. Congratulations! :^) I won't argue that. It falls under the category of vaporware until I get something done on it. My life's been a little complicated recently, which makes it difficult to try to develop code. But as far as vaporware goes, it's pretty good, eh? :-) Seriously, I *do* expect to get *something* useful done and working, when I can. There may yet be a delay of a month or three before I can get anything significant (in the way of code instead of just design work) done. [hopefully, I'll have my life more in order by then.] Marco> And, by the way, try to use less derogatory language, thank Marco> you. I normally do try, but I was tired of the whole situation (not to mention just plain tired)... it's the first (and hopefully last) article I've crossposted to alt.flame from comp.sys.amiga.tech... [first time I've bothered to crosspost to alt.flame at all, for that matter.] These things happen when I post at times like that... *sigh* Marco> I guess it's time to add to my KILL file :-) Now, now. Don't be so touchy. You find most of my articles to be useless and unhelpful, and full of misinformation? Yes, I have on a few occasions lashed out at perceived stupidity, but I usually stay with constructive articles, for the most part. [overreactions... *sigh*] Deven -- Deven T. Corzine Internet: deven@rpi.edu, shadow@pawl.rpi.edu Snail: 2214 12th Street, Troy, NY 12180 Phone: (518) 271-0750 Bitnet: deven@rpitsmts, userfxb6@rpitsmts UUCP: uunet!rpi!deven Simple things should be simple and complex things should be possible.
vkr@osupyr.mps.ohio-state.edu (Vidhyanath K. Rao) (08/03/89)
In article <SHADOW.89Aug2040433@pawl.rpi.edu> shadow@pawl.rpi.edu (Deven T. Corzine) writes: >On 1 Aug 89 12:54:54 GMT, >lofaso@titan.tsd.arlut.utexas.edu (Bernie Lofaso) said: >Bernie> There is also a more elegance of design to the AmigaDos system. Deven>AmigaDOS? More elegant than Unix? Don't make me laugh. I would say that AmigaDOS looks like a project from a B student: A good concept, but implementation shows lack of imagination and more importantly, inability to adapt to a different evoirment: Relying on BCPL thruout is only one instance of it. Another example [why I would give the implementation a B rather than an A] is packets implemented to support only co-routines, hijacking of the Message.Node.Name field etc. But I side with Bernie: Conceptually, AmigaDOS is more evolved than Unix. But then, it did come latter. -- It is the man, not the method, that Nath solves the problem. vkr@osupyr.mps.ohio-state.edu -Poincare. (614)-366-9341
papa@pollux.usc.edu (Marco Papa) (08/03/89)
In article <SHADOW.89Aug2141201@pawl.rpi.edu| shadow@pawl.rpi.edu (Deven T. Corzine) writes: |On 2 Aug 89 16:45:50 GMT, papa@pollux.usc.edu (Marco Papa) said: |Marco| And, by the way, try to use less derogatory language, thank you. |I normally do try, but I was tired of the whole situation (not to |mention just plain tired)... it's the first (and hopefully last) |article I've crossposted to alt.flame from comp.sys.amiga.tech... |[first time I've bothered to crosspost to alt.flame at all, for that |matter.] These things happen when I post at times like that... |*sigh* As the recommendations from usenet go: "don't post when you're tired, intoxicated, stoned, angry, etc.." :^) |Marco| I guess it's time to add to my KILL file :-) |Now, now. Don't be so touchy. You find most of my articles to be |useless and unhelpful, and full of misinformation? Yes, I have on a |few occasions lashed out at perceived stupidity, but I usually stay |with constructive articles, for the most part. |[overreactions... *sigh*] Using derogatory language lowers the quality and content of your postings. Keep it technical and you can't lose. Take it easy. Losen up. I am trying to do that myself. Life is hard enough. -- Marco Papa 'Doc' -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= uucp:...!pollux!papa BIX:papa ARPAnet:pollux!papa@oberon.usc.edu "There's Alpha, Beta, Gamma, Diga and Caligari!" -- Rick Unland -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
shadow@pawl.rpi.edu (Deven T. Corzine) (08/03/89)
On 2 Aug 89 18:26:15 GMT, vkr@osupyr.mps.ohio-state.edu (Vidhyanath K. Rao) said: In article <SHADOW.89Aug2040433@pawl.rpi.edu> shadow@pawl.rpi.edu (Deven T. Corzine) writes: On 1 Aug 89 12:54:54 GMT, lofaso@titan.tsd.arlut.utexas.edu (Bernie Lofaso) said: Bernie> There is also a more elegance of design to the AmigaDos system. Deven> AmigaDOS? More elegant than Unix? Don't make me laugh. vkr> I would say that AmigaDOS looks like a project from a B student: vkr> A good concept, but implementation shows lack of imagination and vkr> more importantly, inability to adapt to a different evoirment: vkr> Relying on BCPL thruout is only one instance of it. Another vkr> example [why I would give the implementation a B rather than an vkr> A] is packets implemented to support only co-routines, hijacking vkr> of the Message.Node.Name field etc. But I side with Bernie: vkr> Conceptually, AmigaDOS is more evolved than Unix. But then, it vkr> did come latter. Ah, yes. But though Unix far predated AmigaDOS, the developers of AmigaDOS seem to have thrown away many of the good ideas of Unix. [I don't know why they didn't use more Unix-like things (real pipes, a hierarchical filesystem without backpointers, filesystem links, fork/exec, file descriptor handling, etc.) but I have heard [unsubstantiated] rumors of a prejudice against Unix by the developers. Exec, on the other hand, I would qualify as superior to Unix in a number of ways. [call it an A for design and an A- for implementation.] AmigaDOS has some good ideas, but a lot of things done in a very poor fashion. [B+ for design, C- for implementation.] Deven -- Deven T. Corzine Internet: deven@rpi.edu, shadow@pawl.rpi.edu Snail: 2214 12th Street, Troy, NY 12180 Phone: (518) 271-0750 Bitnet: deven@rpitsmts, userfxb6@rpitsmts UUCP: uunet!rpi!deven Simple things should be simple and complex things should be possible.
shadow@pawl.rpi.edu (Deven T. Corzine) (08/03/89)
On 2 Aug 89 18:45:14 GMT, papa@pollux.usc.edu (Marco Papa) said: In article <SHADOW.89Aug2141201@pawl.rpi.edu| shadow@pawl.rpi.edu (Deven T. Corzine) writes: On 2 Aug 89 16:45:50 GMT, papa@pollux.usc.edu (Marco Papa) said: Marco> And, by the way, try to use less derogatory language, thank Marco> you. Deven> I normally do try, but I was tired of the whole situation (not Deven> to mention just plain tired)... it's the first (and hopefully Deven> last) article I've crossposted to alt.flame from Deven> comp.sys.amiga.tech... [first time I've bothered to crosspost Deven> to alt.flame at all, for that matter.] These things happen Deven> when I post at times like that... *sigh* Marco> As the recommendations from usenet go: "don't post when you're Marco> tired, intoxicated, stoned, angry, etc.." :^) Ah, yes. Being as how your judgement's the first thing to go. And now that your judgement's toast, what's to stop you from doing something stupid, like POSTING? :-) Marco> I guess it's time to add to my KILL file :-) Deven> Now, now. Don't be so touchy. You find most of my articles to Deven> be useless and unhelpful, and full of misinformation? Yes, I Deven> have on a few occasions lashed out at perceived stupidity, but Deven> I usually stay with constructive articles, for the most part. Deven> [overreactions... *sigh*] Marco> Using derogatory language lowers the quality and content of Marco> your postings. Keep it technical and you can't lose. Take it Marco> easy. Losen up. I am trying to do that myself. Life is hard Marco> enough. I could create an alternate identity for flaming, so you can easily filter out the low-quality posts. [and so they couldn't be traced to me! :-)] Naah... Deven -- Deven T. Corzine Internet: deven@rpi.edu, shadow@pawl.rpi.edu Snail: 2214 12th Street, Troy, NY 12180 Phone: (518) 271-0750 Bitnet: deven@rpitsmts, userfxb6@rpitsmts UUCP: uunet!rpi!deven Simple things should be simple and complex things should be possible.
mwm@eris.berkeley.edu (Mike (I'll think of something yet) Meyer) (08/03/89)
In article <SHADOW.89Aug2040433@pawl.rpi.edu> shadow@pawl.rpi.edu (Deven T. Corzine) writes:
<*sigh* Here I go again.
Yup, there you went again. With all the accuracy of the person usually
associated with that statement. If I had more sense, I'd ignore it,
but you've hogwashed out my horsesense.
<First, I think AmigaDOS's UI sucks. But that depends to a degree on
<what you're used to. I'm used to Unix, and I find AmigaDOS annoying
<and clumsy, and often frustratingly limiting.
This, of course, is a matter of taste. Graphical interfaces pretty much
all suck. On the other hand, if I could find a command line interface
for Unix as nice as the one I've got on my Amiga, I'd be using it in
an instant.
<Then there's the stupid 20 CLI limit...
Right. However, that can be fixed without having PD software running
on your machine. You only have to run it once...
<Ah, but the PD software is virtually _necessary_ to maintain a
<reasonable environment. (the stock configuration is virtually
<unusable, in my opinion.) [particularly the CLI]
That's odd - I run PD software to make the grahical interface more
useable. I use commercial software to make the CLI useable. Of course,
if you want a CLI that looks like Unix, you have to use PD software.
On the other hand, if you want a system that looks like Unix, you
should have bought one that ran Unix, not an OS that's superior to
Unix (see below).
<I don't see that Minix/Unix on an Amiga need be any more of a headache
<for system maintenance and administration than AmigaDOS itself is.
You obviously haven't tried adminstering a Unix machine. The entire
system is much more fragile than AmigaDOS. That getting a usable
system on a single floppy (or even two) is nearly impossible doesn't
help much.
Minix may be a vast improvement on Unix (i.e. - almost tolerable),
though. I haven't tried to run such a system.
<Bernie> There are also other disadvantages to Unix-like systems. I've
<Bernie> not seen one yet that had decent real-time response.
<
<And how often do you run across Unix systems without MMUs? Virtual
<memory can slow a system way down.
Key word: "can". It doesn't have to. Last time I looked, the hardware
people were still debating whether you could build a faster system
without virtual memory than with.
BTW, the big conventional boys (Cray, CDC) all have virtual memory (in
the sense of address mapped, not in the sense of demand paged).
Question: can anyone demonstrate that AmigaDOS is really a real-time
system? If so, what's the lower limit on response time to external
events (remember: that response has to hold no matter _what_ else is
running) if I set up a task for real-time work.
<(So much easier on the Amiga, it just crashes.)
You want a Unix box, you should buy a Unix box. Remember, the Amiga
doesn't compete (in price, anyway) with Unix, It competes with things
like the 8086 based IBMs and the Mac I. That it gets compared to Unix
boxes (even unfavorably) is a major complement all by itself.
<Real-time Unix systems DO exist. Most are not.
Quite correct. This is because designing a real-time system is not
easy, and has only a small market. Most people just don't need the
ability to responed to external events in a fixed amount of time.
<The Amiga Exec OS achieves excellent response by not supporting VM,
<message-passing by reference, strict task prioritizing and other such
<little tricks.
This is bullshit. Those are things the AmigaOS _does_. There are other
OSs that are fast that don't do those things (v6 Unix comes to mind).
There are OS's that do any of those things that are slow.
The Amiga OS is fast because some sharp people worked hard to make it
fast. That's about the only way an OS gets to be fast. And that may
not be enough.
<Bernie> There is also a more elegance of design to the AmigaDos
<Bernie> system.
<
<AmigaDOS? More elegant than Unix? Don't make me laugh.
Why should you laugh? Are you really that unschooled in OS design?
Unix follows the monolithic monitor model for OS design. The only good
reason for that is that it was written 20 years ago, when nobody knew
any better.
Unix also chose the wrong basic object for IO operations, the file.
AmigaDOS (among other OSs) got it right, and chose tasks for basic IO
objects. If you don't think this is right, I'll write a task that uses
a disk and acts like a file. You write a file that acts like a task
(using whatever hardware you need).
BTW, the same logic applies: when Unix was written, nobody knew which
was right.
Most Unices still don't have a mechanism to allow seperate control
threads to share an address space. As a result, things that need such
a facility either have to share data (making them bigger & slower), or
to implement the control sharing themselves (ditto). AmigaDOS doesn't
have a way to force processes into seperate address spaces, but that's
not something you have to code around.
Unix _was_ very simple and elegant when it was first introduced,
having a very large number of good ideas in it. However, that was 20
years ago, and now everybody and their brother has those things. Plus
being able to profit from the last 20 years of OS theory.
Of course, one thing all those people haven't picked up is how this
translates into commands the user types. Most software that was
written by people who don't understand this doesn't produce output
that could usefully be fed back to itself. Most commercial AmigaDOS
software (but not all of it) suffers from this, and takes some
processing before it can be fed to the next command down the line.
However, that's not a flaw in the OS or the Exec; that's a flaw in the
commands. That can be fixed by replacing the commands.
<Logical volumes are among the few _good_ things about AmigaDOS. Take
<a gander at dos.library sometime, however. Elegant? Ha.
Comapred to what Unix does to do DOS calls? Yes, it is. Compared to
the rest of AmigaDOS? No, it isn't.
<Oh? So you're saying the brilliant PIPE: AmigaDOS device is better
<(and more elegant!) than Unix's pipe() system call?
You haven't looked inside of a modern pipe() system call, have you?
Elegant is hardly the word. Of course, if you just want a "here's a
pair of fd's" type interface, that's not hard to build on top of
PIPE:. You wanna try and do the opposite? I'd like to know how you're
going to escape pipe()'s need for communicating processes to have a
cooperating common ancester.
<How about fork() and exec()?
What about them? The versions in my Amiga library are slightly
different than the ones on Unix, but not enough to cause any problems.
<Or are you thinking of Exec's message-passing? It has advantages and
<disadvantages, but is decent overall, and none to AmigaDOS's credit.
Sorry, but that's not quite true. That AmigaDOS could be quickly
integrated into the Exec message-passing is to it's credit. You just
flat couldn't do that with Unix.
<Bernie> (don't like CLI... only dirty three letter word I know),
What about IBM? DEC? Sun? (aka the greater devil and the two lesser
devils). I think those are all dirty words. On the other hand, I also
support or used to support software from them.
<Many excellent utilities ARE part of Unix. (generally speaking.)
No, many excellent utilities are generally shipped with Unix. They
aren't part of Unix. Those vendors that tried to unbundle the
utilities got pretty quickly trashed by their customers. That's about
the only reason the utililities generally are bundled in with the OS.
Note that the Amiga doesn't come with a C compiler, or very many other
real applications. Like most OS's meant to be used by people (as
opposed to programmers), it's a platform to put applications on, not a
platform for an application. Unix is generally viewed as a platform
for programming on. If you want to program on an Amiga, you need to
get the tools to do that, just like anything else. If you want to do
things other than program on Unix, you have to get the tools to do it.
Of course, that Unix is a programing platform means there are lots of
tools for doing things other than programming, built as programmers
needed to do them. These tools are invariably inadequate.
<For standard System V Unix, the system requirements are a bit much.
<Same for BSD. Not so for Unix Version 7. It's small and elegant.
So, where do you buy a v7 system? Oh, BTW, did you know that the v7
kernel is much larger & slower than v6, and only added one new kernel
facility?
<All current versions of Unix are derived from it.
Not so. System V is derived from PWB 1.0 (-> PWB 2.0 -> Unix 3 (aka
System III) -> Unix 4 -> System V). PWB 1.0 is dervied from a pre-v7
Unix that was never released outside of AT&T.
<It has most of the major concepts that make Unix so successful.
Actaully, the only thing that's missing is networking. Unlike
AmigaDOS, which was designed from the start with networking in mind
(see "TRIPOS--A portable Operating System for Mini-computers",
in Software P&E vol 9, pgs 513-526).
<Minix is a complete reimplementation (a much cleaner one) of Unix V7,
<distributed with source code.
It's not complete (even I know that much). It's missing mpx files and
ptrace. The former was mostly useful for crashing systems. The latter
was a bad idea poorly implemented, and nobody will miss it.
<mike
--
Tell me how d'you get to be Mike Meyer
As beautiful as that? mwm@berkeley.edu
How did you get your mind ucbvax!mwm
To tilt like your hat? mwm@ucbjade.BITNET
jesup@cbmvax.UUCP (Randell Jesup) (08/03/89)
In article <1332@osupyr.mps.ohio-state.edu> Vidhyanath K. Rao <vkr@cis.ohio-state.edu> writes: >In article <SHADOW.89Aug2040433@pawl.rpi.edu> >Deven>AmigaDOS? More elegant than Unix? Don't make me laugh. > >I would say that AmigaDOS looks like a project from a B student: A good >concept, but implementation shows lack of imagination and more importantly, >inability to adapt to a different evoirment: Relying on BCPL thruout is only >one instance of it. Another example [why I would give the implementation >a B rather than an A] is packets implemented to support only >co-routines, hijacking of the Message.Node.Name field etc. But I side with >Bernie: Conceptually, AmigaDOS is more evolved than Unix. But then, it did >come latter. Two things to remember: 1) Tripos (aka AmigaDOS) was developed at Cambridge University; 2) BCPL is _the_ language at Cambridge, much in the way C is in most US unversities (lately). The C-style interfaces on top of AmigaDOS were dropped onto an OS designed for BCPL. That's changing now, of course, since we have little reason to want to encourage BCPL on the Amiga. AmigaDOS's design includes features that only recently appeared in any Unix variant, such as user-process filesystems, etc. Unix has been fine-tuned and revised many, many times. It still carries the results of some less pretty design decisions, though, and it shows it's age, for all the improvements and tweaks added over the years. AmigaDOS is much less refined, and currently has some implementation oddities, but the basic design is arguably a bit cleaner and more modern. Hopefully we'll have the chance to clean up and refine the desing and implementation over the years as Unix has done. We are a bit more beholden to the great god compatiblity than most Unix developers are, though. -- Randell Jesup, Keeper of AmigaDos, Commodore Engineering. {uunet|rutgers}!cbmvax!jesup, jesup@cbmvax.cbm.commodore.com BIX: rjesup Common phrase heard at Amiga Devcon '89: "It's in there!"
limonce@pilot.njin.net (Tom Limoncelli) (08/03/89)
Are you people trying to say that there is no "best OS" and that every operating system has it's good points and bad points? Damn. That blows my whole weekend. -Tom :-) -- Tom Limoncelli -- tlimonce@drunivac.Bitnet -- limonce@pilot.njin.net Drew University -- Box 1060, Madison, NJ -- 201-408-5389 Standard Disclaimer: I am not the mouth-piece of Drew University :) Is it my imagination or are a lot of people posting everything twice? (: ...or is this some new rule that I don't know about?
jimm@amiga.UUCP (Jim Mackraz) (08/03/89)
In article <1332@osupyr.mps.ohio-state.edu> Vidhyanath K. Rao <vkr@cis.ohio-state.edu> writes:
)I would say that AmigaDOS looks like a project from a B student: A good
)concept, but implementation shows lack of imagination and more importantly,
)inability to adapt to a different evoirment: Relying on BCPL thruout is only
)one instance of it.
I think it looks more like a project that no student and few faculty
can understand: one with real world pressure and economics. "Inability
to adapt to a different environment," indeed. If you don't know the
history, you are then only showing a "lack of imagination" for the
things that can happen when you try the "business thing" for real.
You don't think people really sat down in a classroom and said, "Screw that
boring C stuff, let's do half the thing in BCPL! We'll still get an 'A'."
Have you got any preferred system that's running on over a million machines?
jimm
Is this stuff going to be on the test?
--
Jim Mackraz, I and I Computing "... the signs are very ominous,
{cbmvax,well,oliveb}!amiga!jimm and a chill wind blows."
- Justice Blackmun
Opinions are my own. Comments are not to be taken as Commodore official policy.
papa@pollux.usc.edu (Marco Papa) (08/03/89)
Deven T. Corzine writes: >I could create an alternate identity for flaming, so you can easily >filter out the low-quality posts. [and so they couldn't be traced to >me! :-)] Naah... Naah, you're too ignorant to be able to do that. Now that you point this out, you're right: you have definitely written some of the lowest quality postings. And, by the way, people were making fun of you at DevCon (calling you the "latest jerk" of c.s.a.t.). I guess they were right. Goodbye, Deven ... I am joining a large group: one more line in my KILL file ... :^) -- Marco Papa 'Doc' -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= uucp:...!pollux!papa BIX:papa ARPAnet:pollux!papa@oberon.usc.edu "There's Alpha, Beta, Gamma, Diga and Caligari!" -- Rick Unland -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
csuwk@warwick.ac.uk (Ade Lovett) (08/03/89)
shadow@pawl.rpi.edu (Deven T. Corzine) writes:
Bernie> (Did I also mention disk and memory requirements for Unix.
Bernie> Hardware vendors love it I'm sure.)
For standard System V Unix, the system requirements are a bit much.
Same for BSD. Not so for Unix Version 7. It's small and elegant.
All current versions of Unix are derived from it. It has most of the
major concepts that make Unix so successful. Minix is a complete
reimplementation (a much cleaner one) of Unix V7, distributed with
source code. [As Unix itself was, long ago.]
And you don't need a reasonable amount of disk/memory to make AmigaDOS
useable??? Hah! Next time you can work *PROPERLY* with less than 1meg and
a 20meg HD let me know, I'd be interested in how you did it..
aDe
hans@nlgvax.UUCP (Hans Zuidam) (08/03/89)
>In article <1332@osupyr.mps.ohio-state.edu> Vidhyanath K. Rao <vkr@cis.ohio-state.edu> writes: [A lot of silly remarks regarding AmigaDOS] jimm@amiga.UUCP (Jim Mackraz) writes: >You don't think people really sat down in a classroom and said, "Screw that >boring C stuff, let's do half the thing in BCPL! We'll still get an 'A'." "A mind is such a wonderful thing to acquire. Try it. You'll like it." (as borrowed from Larry Phillips) He is probably trying ;-). Anyway this discussion (is it one?) doesn't belong here. Hans Onions, where? In my soup? -- Hans Zuidam E-Mail: hans@pcg.philips.nl Philips Telecommunications and Data Systems, Tel: +31 40 892288 Project Centre Geldrop, Building XR Willem Alexanderlaan 7B, 5664 AN Geldrop The Netherlands
usenet@cps3xx.UUCP (Usenet file owner) (08/04/89)
In article <3352@sol.warwick.ac.uk> csuwk@warwick.ac.uk (Ade Lovett) writes: > >And you don't need a reasonable amount of disk/memory to make AmigaDOS >useable??? Hah! Next time you can work *PROPERLY* with less than 1meg and >a 20meg HD let me know, I'd be interested in how you did it.. Well a gee, since my external 3.5" floppy died, I have been doing everthing on one 3.5", 512k A1000. This includes word processing, terminal emulation, programming in C, and even a little database development. Of course I cant do all these at once, but any one of them at once is ok. Usually I can terminal emulate with any of the others. REAL NAME: Joe Porkka jap@frith.cl.msu.edu
lofaso@titan.tsd.arlut.utexas.edu (Bernie Lofaso) (08/04/89)
Yes, I'll agree with some of what you have to say. First, let me remotivate my previous post. Its primary purpose was to point out that many people advocate using Unix or Unix-like systems on the Amiga without any mention of potential pitfalls. For some users these systems will be very desirable, but others may find out the hard way that there are some serious drawbacks. I myself am eager to see what the C= supported Unix looks like. But without looking at the disadvantages first, it might be easy to make some ugly mistakes. I think there are some strong arguments that the Amiga operating system (I shall refer to as AmigaDos though I suppose technically that is just the filing system portion), with some PD (or perhaps non-PD) utilities is as good or better environment to work in as compared to a unix OS run on the amiga. Your comments regarding exec peculiarities, BCPL stuff ,etc. are noted and I would tend to agree with nearly all of them. But that is not the level that most users would deal with the system. For you it is a strong argument but even amongst people who use the Amiga primarily for programming (like myself) this is probably only a minor drawback. With regard to Unix maintenance, a typical Unix system (whether one user or multi-user) has files that periodically need clearing (or they grow until your disk is full), and much system information is needed for set-up. Printer set-up is a good example. Ever deal with printcap entries? Yuch-pui! Being able to drop in a new driver in some directory as on the Amiga is much easier and usually gives better results. Having a single set of printer controls commands (from programmers prospective) is one of the features I was considering when I said AmigaDos has a more elegant design than Unix systems. Yes you can find Unix features that show a more elegant approach to certain system aspects, but vice versa is more often true. I offer as an example a comparison between SunOS and AmigaDos. The latest SunOS has virtually all the best features from BSD and SYSV plus some addition that Sun created. Some of these new state-of-the-art features are things that existed in the Amiga from the start. Some aren't as good as the Amigas. Dynamically loadable (and sharable) libraries - new feature - recognize the Amiga counterpart? Named sockets - not too new, but nice. Often times pipes just don't cut it (this is what I meant by IPC being worse on some Unix systems than on the Amiga. Some Unix's only support pipes). Named message ports on the Amiga are an approximate equivalent to this. Something like ARexx could not exist without this OS supported feature. These are a few examples of how the Amiga software designers developed an elegant OS based on some of the better existing OS features at the time. True, there are some awkward "features" in the OS, but the overall design is (my opinion of course) very elegant. Getting back to PD utilities, I have had good luck with some pretty nice PD stuff on both machines. Yes Unix has a lot more, and fortunately people are spending time to port much of it to the Amiga. Try to find a Unix telecommunications programs and I'm afraid you'll be quite frustrated. My Amiga environment is very much Unixized due to PD utilities and some other unix-like utilities from my C compiler. But when all arguments are considered, I have created a better programming environment on my Amiga than I have on my Unix system at work and sacrificed nothing as far as deviating from Amiga "norms". You may disagree with some of my arguments, but you can't ignore them as they are pertinent to many of the Amiga users and their needs. Disclaimer: My opinions are my own, except for those I have stolen from others.
peter@sugar.hackercorp.com (Peter da Silva) (08/05/89)
In article <26900@agate.BERKELEY.EDU>, mwm@eris.berkeley.edu (Mike (I'll think of something yet) Meyer) writes: > You obviously haven't tried adminstering a Unix machine. The entire > system is much more fragile than AmigaDOS. I guess that depends on whether you're administering a relatively clean commercial UNIX, like System V or Xenix, or a fancied-up PD-quality system, like BSD. I've been doing some really horrible things to various 68000- and 80386-based System-V systems, as well as the 80286-based Xenix boxes that are the main development machines, and the biggest problem's I've had have been with various third-party device drivers. Even having the source to them hasn't helped much. > Minix may be a vast improvement on Unix (i.e. - almost tolerable), > though. I haven't tried to run such a system. Minix has a long way to go. > <AmigaDOS? More elegant than Unix? Don't make me laugh. > Why should you laugh? Are you really that unschooled in OS design? Because unlike you he understands that AmigaDOS is the name of the Tripos derived file system. The rest of the system, the Exec, drivers, etc..., are together called AmigaOS. > Unix also chose the wrong basic object for IO operations, the file. The claim can be made, and in fact has been made, that so long as you choose a single object and stick to it it will work just fine. > AmigaDOS (among other OSs) got it right, and chose tasks for basic IO > objects. If you don't think this is right, I'll write a task that uses > a disk and acts like a file. You write a file that acts like a task > (using whatever hardware you need). Actually, every part of AmigaOS *except* AmigaDOS uses tasks as the basic object. AmigaDOS uses a task interface, but the basic object is the lock or file handle. Mixing models like this is a bad idea, and the main reason people get frustrated with AmigaDOS. > AmigaDOS doesn't > have a way to force processes into seperate address spaces, but that's > not something you have to code around. Rubbish. Every AmigaOS program has to have a substantial amount of code devoted to resource tracking... a job better assigned to the O/S. If you don't want to call that "coding around" the problems, then you're just playing games with words. > <Logical volumes are among the few _good_ things about AmigaDOS. Take > <a gander at dos.library sometime, however. Elegant? Ha. > Comapred to what Unix does to do DOS calls? Yes, it is. But in UNIX the program doesn't have to *know* what goes on inside the kernel. You have to dig around in internal AmigaDOS data structures to do all sorts of vitally important things... like getting a list of devices, an operation that comes for free with UNIX. > <Oh? So you're saying the brilliant PIPE: AmigaDOS device is better > <(and more elegant!) than Unix's pipe() system call? > You haven't looked inside of a modern pipe() system call, have you? Who cares what's inside. UNIX isolates the programmer from that junk. AmigaDOS forces the programmer to be aware of it. > Elegant is hardly the word. Of course, if you just want a "here's a > pair of fd's" type interface, that's not hard to build on top of > PIPE:. If you want it transparent to the programs being piped, it sure is. The only decent implementation of *that* is Bill Hawes' PIP device, which uses a non-standard call to get a pair of file handles that really do work like UNIX pipes. It's a botch. > You wanna try and do the opposite? I'd like to know how you're > going to escape pipe()'s need for communicating processes to have a > cooperating common ancester. Look at modern UNIX, Mike. "mknod p /pdev/mypipe". > <How about fork() and exec()? > What about them? The versions in my Amiga library are slightly > different than the ones on Unix, but not enough to cause any problems. Unless you want to port reasonably sophisticated UNIX software, such as ASH. > Sorry, but that's not quite true. That AmigaDOS could be quickly > integrated into the Exec message-passing is to it's credit. You just > flat couldn't do that with Unix. What part of UNIX? The only part that matters is the program interface. What's on the other side varies widely. Compare and contrast Mach (the basic object is an address space) or Minix (tasks and message ports) to conventional UNIX (co-routines) or Eunice (emulation on top of VMS). They're all UNIX as far as the program's concerned. > So, where do you buy a v7 system? Prentice-hall. It's called Minix 1.3. > Oh, BTW, did you know that the v7 > kernel is much larger & slower than v6, and only added one new kernel > facility? Which one are you talking about? Environment variables? The relatively more robust file system? Process accounting? The improved terminal driver? Long offsets to seek (lseek)? Multiplexed files (removed in 2BSD, returned within the streams system for SysV, or as ptys in 4BSD)? Improved fstat()? Umask()? Did you ever actually use V6? Are you aware that V6 was much bigger than V5, which still had substantial amounts of assembly code? -- Peter "Have you hugged your wolf today" da Silva `-_-' ...texbell!sugar!peter, or peter@sugar.hackercorp.com 'U`
Vidhyanath.K..Rao@mamab.FIDONET.ORG (Vidhyanath K. Rao) (08/05/89)
-- Fidonet: Vidhyanath K. Rao via 1:363/9 Internet: Vidhyanath.K..Rao@mamab.FIDONET.ORG Usenet: ...!peora!rtmvax!libcmp!mamab!Vidhyanath.K..Rao
Deven.T..Corzine@mamab.FIDONET.ORG (Deven T. Corzine) (08/06/89)
-- Fidonet: Deven T. Corzine via 1:363/9 Internet: Deven.T..Corzine@mamab.FIDONET.ORG Usenet: ...!peora!rtmvax!libcmp!mamab!Deven.T..Corzine
shadow@pawl.rpi.edu (Deven T. Corzine) (08/06/89)
In article <SHADOW.89Aug2040433@pawl.rpi.edu> shadow@pawl.rpi.edu (Deven T. Corzine) writes: Deven> *sigh* Here I go again. On 3 Aug 89 00:38:07 GMT, mwm@eris.berkeley.edu (Mike (I'll think of something yet) Meyer) said: Mike> Yup, there you went again. With all the accuracy of the person Mike> usually associated with that statement. If I had more sense, I'd Mike> ignore it, but you've hogwashed out my horsesense. Accuracy? I find no lack of accuracy. Deven> First, I think AmigaDOS's UI sucks. But that depends to a Deven> degree on what you're used to. I'm used to Unix, and I find Deven> AmigaDOS annoying and clumsy, and often frustratingly limiting. Mike> This, of course, is a matter of taste. Graphical interfaces Mike> pretty much all suck. On the other hand, if I could find a Mike> command line interface for Unix as nice as the one I've got on Mike> my Amiga, I'd be using it in an instant. Of course it's a matter of taste. I acknowledged that, in case you didn't notice. Deven> Then there's the stupid 20 CLI limit... Mike> Right. However, that can be fixed without having PD software Mike> running on your machine. You only have to run it once... That there is a workaround does not change the fact that it is a flaw in the design. Deven> Ah, but the PD software is virtually _necessary_ to maintain a Deven> reasonable environment. (the stock configuration is virtually Deven> unusable, in my opinion.) [particularly the CLI] Mike> That's odd - I run PD software to make the grahical interface Mike> more useable. I use commercial software to make the CLI useable. Mike> Of course, if you want a CLI that looks like Unix, you have to Mike> use PD software. On the other hand, if you want a system that Mike> looks like Unix, you should have bought one that ran Unix, not Mike> an OS that's superior to Unix (see below). I don't consider "you should've gotten a Unix box then" to be a valid argument. I want an Amiga, but with the major functionality of Unix. They are NOT necessarily mutually exclusive. [and I didn't even buy an Amiga; I'm poor these days. When I can afford it I will. Until then, I can only use friends' Amigas.] Deven> I don't see that Minix/Unix on an Amiga need be any more of a Deven> headache for system maintenance and administration than Deven> AmigaDOS itself is. Mike> You obviously haven't tried adminstering a Unix machine. The Mike> entire system is much more fragile than AmigaDOS. That getting a Mike> usable system on a single floppy (or even two) is nearly Mike> impossible doesn't help much. Strike one. I have, and I am a capable sysadmin. And I still don't see that a small Unix system can't coexist with Exec and AmigaDOS. [and getting a usable AmigaDOS system on a single floppy is no small task, either.] I'm not suggesting running SysV. I propose a variant of Unix V7, as Minix is. Mike> Minix may be a vast improvement on Unix (i.e. - almost Mike> tolerable), though. I haven't tried to run such a system. Then don't attack it out of hand. You appear to be biased against Unix. So be it. Bernie> There are also other disadvantages to Unix-like systems. I've Bernie> not seen one yet that had decent real-time response. Deven> And how often do you run across Unix systems without MMUs? Deven> Virtual memory can slow a system way down. Mike> Key word: "can". It doesn't have to. Last time I looked, the Mike> hardware people were still debating whether you could build a Mike> faster system without virtual memory than with. Mike> BTW, the big conventional boys (Cray, CDC) all have virtual Mike> memory (in the sense of address mapped, not in the sense of Mike> demand paged). Fine. So I should have stipulated demand paged VM. Address mapping is easy to do in real time; it's just a lookup table in hardware. It's paging that can kill system performance. Mike> You want a Unix box, you should buy a Unix box. Remember, the Mike> Amiga doesn't compete (in price, anyway) with Unix, It competes Mike> with things like the 8086 based IBMs and the Mac I. That it gets Mike> compared to Unix boxes (even unfavorably) is a major complement Mike> all by itself. The Amiga is a fine machine. And cheaper than an equivalent Unix box. And more useful. Actually, placing the Amiga in a class with PClones and Macs sounds more like an insult to the Amiga to me. Deven> The Amiga Exec OS achieves excellent response by not supporting Deven> VM, message-passing by reference, strict task prioritizing and Deven> other such little tricks. Mike> This is bullshit. Those are things the AmigaOS _does_. There are Mike> other OSs that are fast that don't do those things (v6 Unix Mike> comes to mind). There are OS's that do any of those things that Mike> are slow. Yes, but these are optimizations which ARE significant. The whole design of Exec is centered around efficiency and flexibility. [excellent goals] Mike> The Amiga OS is fast because some sharp people worked hard to Mike> make it fast. That's about the only way an OS gets to be fast. Mike> And that may not be enough. AmigaDOS's implementation is somewhat of a crippling effect. Bernie> There is also a more elegance of design to the AmigaDos Bernie> system. Deven> AmigaDOS? More elegant than Unix? Don't make me laugh. Mike> Why should you laugh? Are you really that unschooled in OS Mike> design? Hardly. Mike> Unix follows the monolithic monitor model for OS design. The Mike> only good reason for that is that it was written 20 years ago, Mike> when nobody knew any better. I understand the traditional internal structure of Unix, and I tell you it's not as important. AmigaDOS forces C programmers to deal with (explicitly) BCPL conventions. Unix does not force awareness of its monolithic design. And Minix is structured entirely different internally, with user process devices, message passing, etc. The interface remains consistent and clean. The same can not be said for AmigaDOS. Mike> Unix also chose the wrong basic object for IO operations, the Mike> file. _ ^ You say tomato, I say tomato. Mike> AmigaDOS (among other OSs) got it right, and chose tasks for Mike> basic IO objects. If you don't think this is right, I'll write a Mike> task that uses a disk and acts like a file. You write a file Mike> that acts like a task (using whatever hardware you need). Unix /dev/* devices. They are "special files" with associated code. No specific task; they're part of that monolithic kernal. (in the traditional Unix implementation) But they act with the same effect as AmigaDOS's tasks. Strike two. Mike> BTW, the same logic applies: when Unix was written, nobody knew Mike> which was right. Ah, it's the old "the poor idiots don't know what's good for them" routine. Mike> Most Unices still don't have a mechanism to allow seperate Mike> control threads to share an address space. As a result, things Mike> that need such a facility either have to share data (making them Mike> bigger & slower), or to implement the control sharing themselves Mike> (ditto). AmigaDOS doesn't have a way to force processes into Mike> seperate address spaces, but that's not something you have to Mike> code around. No, you just have to pray every program running is well-written, so it doesn't bring down the entire system. Mike> Unix _was_ very simple and elegant when it was first introduced, Mike> having a very large number of good ideas in it. However, that Mike> was 20 years ago, and now everybody and their brother has those Mike> things. Plus being able to profit from the last 20 years of OS Mike> theory. AmigaDOS ignores many of the good examples Unix sets forth. Pipes are a prime example. Mike> Of course, one thing all those people haven't picked up is how Mike> this translates into commands the user types. Most software that Mike> was written by people who don't understand this doesn't produce Mike> output that could usefully be fed back to itself. Most Mike> commercial AmigaDOS software (but not all of it) suffers from Mike> this, and takes some processing before it can be fed to the next Mike> command down the line. That's because the design philosophy differs from that of Unix. Under Unix, in most circumstances, the preferred approach is to act on the assumption that the output from your program will be the input to another program. Mike> However, that's not a flaw in the OS or the Exec; that's a flaw Mike> in the commands. That can be fixed by replacing the commands. The commands are an integral part of the environment, and help shape and define that environment. Deven> Logical volumes are among the few _good_ things about AmigaDOS. Deven> Take a gander at dos.library sometime, however. Elegant? Ha. Mike> Comapred to what Unix does to do DOS calls? Yes, it is. Compared Mike> to the rest of AmigaDOS? No, it isn't. AmigaDOS ignores many design goals of Exec. And what's wrong with the way Unix handles FS syscalls? Deven> Oh? So you're saying the brilliant PIPE: AmigaDOS device is Deven> better (and more elegant!) than Unix's pipe() system call? Mike> You haven't looked inside of a modern pipe() system call, have Mike> you? Elegant is hardly the word. Of course, if you just want a Mike> "here's a pair of fd's" type interface, that's not hard to build Mike> on top of PIPE:. You wanna try and do the opposite? I'd like to Mike> know how you're going to escape pipe()'s need for communicating Mike> processes to have a cooperating common ancester. PIPE: is a poor excuse for a generalized networking solution. TCP/IP, Unix-domain sockets and SysV named pipes all escape the need for a common ancestor. As for the internals of the pipe() call, it's irrelevant. The internals are INTERNAL, and can be left that way. AmigaDOS prefers for force you to deal with it. Deven> How about fork() and exec()? Mike> What about them? The versions in my Amiga library are slightly Mike> different than the ones on Unix, but not enough to cause any Mike> problems. Strike three. "Slightly different?" You can't get the same functionality. You can't open files for the child process, you can't dup() a filehandle, you can't do any process environment setup after forking but BEFORE execing. About all you can do is spawn a new process. Far less flexible. Deven> Or are you thinking of Exec's message-passing? It has Deven> advantages and disadvantages, but is decent overall, and none Deven> to AmigaDOS's credit. Mike> Sorry, but that's not quite true. That AmigaDOS could be quickly Mike> integrated into the Exec message-passing is to it's credit. You Mike> just flat couldn't do that with Unix. The reason AmigaDOS adapted easily to Amiga message-passing was that TRIPOS was already based on message passing. Couldn't do what with Unix? Message passing? Try UDP. Implement AmigaDOS? Who would WANT to? [actually, you could emulate an Amiga in a single Unix process.] Deven> Many excellent utilities ARE part of Unix. (generally Deven> speaking.) Mike> No, many excellent utilities are generally shipped with Unix. Mike> They aren't part of Unix. Those vendors that tried to unbundle Mike> the utilities got pretty quickly trashed by their customers. Mike> That's about the only reason the utililities generally are Mike> bundled in with the OS. Pay attention. The "generally speaking" was because technically the utilities are not integral to Unix itself, but they ARE integral to the environment, and normally found together. Mike> These tools are invariably inadequate. Sounds like another biased opinion. Deven> For standard System V Unix, the system requirements are a bit Deven> much. Same for BSD. Not so for Unix Version 7. It's small Deven> and elegant. Mike> So, where do you buy a v7 system? Oh, BTW, did you know that the Mike> v7 kernel is much larger & slower than v6, and only added one Mike> new kernel facility? Oh, yes. The pipes. Oh, no. Pipes aren't an important part of Unix. Wake up. Deven> All current versions of Unix are derived from it. Mike> Not so. System V is derived from PWB 1.0 (-> PWB 2.0 -> Unix 3 Mike> (aka System III) -> Unix 4 -> System V). PWB 1.0 is dervied from Mike> a pre-v7 Unix that was never released outside of AT&T. I don't know about internal to AT&T, but System V was derived from System III which was derived from Unix V7. [as far as releases go.] On the other side, it went V7 -> V32 [Vax] -> BSD 4.0 -> 4.1 -> 4.2 -> 4.3, and now SysVr3 & BSD 4.3 will merge into SysVr4 and OSF will help make sure we still have two major versions. Deven> It has most of the major concepts that make Unix so successful. Mike> Actaully, the only thing that's missing is networking. Unlike Mike> AmigaDOS, which was designed from the start with networking in Mike> mind (see "TRIPOS--A portable Operating System for Mike> Mini-computers", in Software P&E vol 9, pgs 513-526). No. Ported from TRIPOS, a networking OS, into AmigaDOS, with no native networking support. (true, hacking the message-passing facility would not be difficult, but AmigaDOS has no networking.) So, why not an Amiga with Unix V7 and networking added? Deven> Minix is a complete reimplementation (a much cleaner one) of Deven> Unix V7, distributed with source code. Mike> It's not complete (even I know that much). It's missing mpx Mike> files and ptrace. The former was mostly useful for crashing Mike> systems. The latter was a bad idea poorly implemented, and Mike> nobody will miss it. Ever try using SunOS 4.0 trace(1)? Deven -- Deven T. Corzine Internet: deven@rpi.edu, shadow@pawl.rpi.edu Snail: 2214 12th Street, Troy, NY 12180 Phone: (518) 271-0750 Bitnet: deven@rpitsmts, userfxb6@rpitsmts UUCP: uunet!rpi!deven Simple things should be simple and complex things should be possible.
Tom.Limoncelli@mamab.FIDONET.ORG (Tom Limoncelli) (08/06/89)
-- Fidonet: Tom Limoncelli via 1:363/9 Internet: Tom.Limoncelli@mamab.FIDONET.ORG Usenet: ...!peora!rtmvax!libcmp!mamab!Tom.Limoncelli
shadow@pawl.rpi.edu (Deven T. Corzine) (08/06/89)
On 4 Aug 89 13:33:23 GMT, lofaso@titan.tsd.arlut.utexas.edu (Bernie Lofaso) said: Bernie> I think there are some strong arguments that the Amiga Bernie> operating system with some PD (or perhaps non-PD) utilities is Bernie> as good or better environment to work in as compared to a unix Bernie> OS run on the amiga. Now, why need that be? How about a Unix-like system built on top of Exec, but not AmigaDOS, that can coexist with AmigaDOS? [C-A's Amix can't.] Bernie> But that is not the level that most users would deal with the Bernie> system. No, but it will carry an effect to the level that most users DO deal with... Bernie> Printer set-up is a good example. Ever deal with printcap Bernie> entries? Yuch-pui! A Unix system built on Exec could use the Exec printer.device instead of a printcap entry... Bernie> Being able to drop in a new driver in some directory as on the Bernie> Amiga is much easier and usually gives better results. Having Bernie> a single set of printer controls commands (from programmers Bernie> prospective) is one of the features I was considering when I Bernie> said AmigaDos has a more elegant design than Unix systems. Harder to create new drivers, though. Bernie> Dynamically loadable (and sharable) libraries - new feature - Bernie> recognize the Amiga counterpart? Certainly, and that's a place where the Amiga _Exec_ operating system is superior to Unix. Bernie> True, there are some awkward "features" in the OS, but the Bernie> overall design is (my opinion of course) very elegant. I completely agree that Exec is elegant, well-designed, and basically excellent all around. It's AmigaDOS I dislike. Bernie> But when all arguments are considered, I have created a better Bernie> programming environment on my Amiga than I have on my Unix Bernie> system at work and sacrificed nothing as far as deviating from Bernie> Amiga "norms". Ah, but if you have Unix and AmigaDOS running concurrently, you have the best of both worlds available to you. Deven -- Deven T. Corzine Internet: deven@rpi.edu, shadow@pawl.rpi.edu Snail: 2214 12th Street, Troy, NY 12180 Phone: (518) 271-0750 Bitnet: deven@rpitsmts, userfxb6@rpitsmts UUCP: uunet!rpi!deven Simple things should be simple and complex things should be possible.
shadow@pawl.rpi.edu (Deven T. Corzine) (08/06/89)
Deven> AmigaDOS? More elegant than Unix? Don't make me laugh. In article <26900@agate.BERKELEY.EDU>, mwm@eris.berkeley.edu (Mike (I'll think of something yet) Meyer) writes: Mike> Why should you laugh? Are you really that unschooled in OS design? On 5 Aug 89 13:21:11 GMT, peter@sugar.hackercorp.com (Peter da Silva) said: Peter> Because unlike you he understands that AmigaDOS is the name of Peter> the Tripos derived file system. The rest of the system, the Peter> Exec, drivers, etc..., are together called AmigaOS. Indeed. Actually, you can legitimately call it "Exec" collectively, while "exec.library" is the more specific portion. Besides, "Exec" is harder to confuse with "AmigaDOS"... :-) -- Mike> Elegant is hardly the word. Of course, if you just want a Mike> "here's a pair of fd's" type interface, that's not hard to build Mike> on top of PIPE:. Peter> If you want it transparent to the programs being piped, it sure Peter> is. The only decent implementation of *that* is Bill Hawes' PIP Peter> device, which uses a non-standard call to get a pair of file Peter> handles that really do work like UNIX pipes. It's a botch. Basically, it's a kludge to workaround the fact that it was left out from the beginning. Deven -- Deven T. Corzine Internet: deven@rpi.edu, shadow@pawl.rpi.edu Snail: 2214 12th Street, Troy, NY 12180 Phone: (518) 271-0750 Bitnet: deven@rpitsmts, userfxb6@rpitsmts UUCP: uunet!rpi!deven Simple things should be simple and complex things should be possible.
mwm@eris.berkeley.edu (Mike (I'll think of something yet) Meyer) (08/07/89)
In article <SHADOW.89Aug6000125@pawl.rpi.edu> shadow@pawl.rpi.edu (Deven T. Corzine) writes: <In article <SHADOW.89Aug2040433@pawl.rpi.edu> shadow@pawl.rpi.edu <(Deven T. Corzine) writes: < <Deven> *sigh* Here I go again. < <On 3 Aug 89 00:38:07 GMT, <mwm@eris.berkeley.edu (Mike (I'll think of something yet) Meyer) said: < <Mike> Yup, there you went again. With all the accuracy of the person <Mike> usually associated with that statement. If I had more sense, I'd <Mike> ignore it, but you've hogwashed out my horsesense. < <Accuracy? I find no lack of accuracy. Of course you don't find any lack of accuracy - you don't have any accuracy in your searching. You did make some correct statements again, but mostly, your accuracy hasn't improved. However, this time I'm going to listen to my good sense, and not bother correcting you. To almost everyone else - I apologize for starting the Unix<->Amiga mess all over again. <mike -- Look at my hopes, Mike Meyer Look at my dreams. mwm@berkeley.edu The currency we've spent, ucbvax!mwm I love you. You pay my rent. mwm@ucbjade.BITNET
mks@cbmvax.UUCP (Michael Sinz - CATS) (08/07/89)
>In article <3352@sol.warwick.ac.uk> csuwk@warwick.ac.uk (Ade Lovett) writes: >> >>And you don't need a reasonable amount of disk/memory to make AmigaDOS >>useable??? Hah! Next time you can work *PROPERLY* with less than 1meg and >>a 20meg HD let me know, I'd be interested in how you did it.. Gee, I was working on an Amiga 1000, with 1.5meg RAM and 2 floppy drives. I guy named Bill Hawes (ARexx, WShell, ConMan, PathMan, etc.) is still working on an A1000 with two floppies (but with 2.5 meg of RAM) -- /----------------------------------------------------------------------\ | /// Michael Sinz -- CATS/Amiga Software/Support Engineer | | /// PHONE 215-431-9422 UUCP ( uunet | rutgers ) !cbmvax!mks | | /// | |\\\/// ...and then, just as all was in kaos, someone said: | | \XX/ "Let there be ... what was that!? ... An Amiga? ... light!" | \----------------------------------------------------------------------/
ez004559@pollux.ucdavis.edu (0040;0000002347;0;250;143;) (08/07/89)
Who in their right mind would want Minix on the Amiga anyway!` If I remember correctly, this is an Amiga section and thus, everyone probably has an Amiga. Now remember, the Amiga is a multitasking, windowing environment that's usually friendly and EASY to use. Unix is a monstrous Goliath... And it don't have windows. If you want Minix, you can get an IBM clone. I think I've read enough stuff about Minix and Unix to last me a lifetime. OUt of curiousity, how many of you brain damaged puppies out there use some incarnation of VI on your Amiga? Get a life! Haven't any of you heard of windows? Try Texed. You can spawn new Texed windows at will, and cut and paste from any Texted. It's easy to use, intuitive, doesn't take any more than 2 hours to master. Anyone who uses vi on the amiga is going to Unix hell after they die. Satan will personally tie you up to an ancient vt52 terminal hooked up to a pdp11 with a load average of 60 and force you to work on vi for hours on end. ______________________________________________________ Quantum _\/_ | 545 Sycamore Suite 207 |Frank Kuan | |\ Duck ( 0 0) | Davis, Ca 95616 |Quantum Duck Software, | |\ \______/ / \\\ | 916-757-2925 |ez004559@pollux.ucdavis.edu | |\ < < | \/ |________________________|____________________________| \ \___// / Quark! "Let them eat Spam!" - Marie Antoinspam \________/ QUARK!
shadow@pawl.rpi.edu (Deven T. Corzine) (08/08/89)
On 7 Aug 89 10:07:34 GMT, mwm@eris.berkeley.edu (Mike (I'll think of something yet) Meyer) said: Mike> Of course you don't find any lack of accuracy - you don't have Mike> any accuracy in your searching. You did make some correct Mike> statements again, but mostly, your accuracy hasn't improved. Mike> However, this time I'm going to listen to my good sense, and not Mike> bother correcting you. It's not worth arguing about. Mike> To almost everyone else - I apologize for starting the Mike> Unix<->Amiga mess all over again. Same here. Enough of this. Deven -- Deven T. Corzine Internet: deven@rpi.edu, shadow@pawl.rpi.edu Snail: 2214 12th Street, Troy, NY 12180 Phone: (518) 271-0750 Bitnet: deven@rpitsmts, userfxb6@rpitsmts UUCP: uunet!rpi!deven Simple things should be simple and complex things should be possible.
rtczegledi@crocus.waterloo.edu (Richard Czegledi) (08/08/89)
Hi. I can't seem to figure out a way to, through an AREXX (script? program? Macro?) to allow a dos command to get any input from me. er.... I mean: I wish to execute 1.3's more (pathname sys:utilities/More) from an arexx application through the aux: port. The trouble is that if I do: Address Command "sys:utilities/more" morefile The more decides it can't get access to (raw keyboard events?. Explain it to me if you can) so it opens up in it's own console window (no amazing use over aux:). The same happens with any command that requires input. I am using Arexx 1.06 on a 2 meg a1000. If anyone could mail some ideas on how I could fix my problem, or code examples, I'd love it and bless your first born. --- thankyou thankyouverymuch
grr@cbmvax.UUCP (George Robbins) (08/08/89)
In article <5067@ucdavis.ucdavis.edu> ez004559@pollux.ucdavis.edu (Down with Unix!) writes: > Who in their right mind would want Minix on the Amiga anyway!` ... > OUt of curiousity, how many of you brain damaged puppies out there use some > incarnation of VI on your Amiga? Get a life! ... Come on, this is comp.sys.amiga.*tech* - there's a nice rwars/editors discussion over in alt.religion.computers if you want to discuss such. If you want technical content, please try to keep the cruft and flame wars down. As much fun as it is, it doesn't accomplish much and can drive away people who you might want to communicate with. -- George Robbins - now working for, uucp: {uunet|pyramid|rutgers}!cbmvax!grr but no way officially representing arpa: cbmvax!grr@uunet.uu.net Commodore, Engineering Department fone: 215-431-9255 (only by moonlite)
jesup@cbmvax.UUCP (Randell Jesup) (08/08/89)
In article <4084@sugar.hackercorp.com> peter@sugar.hackercorp.com (Peter da Silva) writes: >Because unlike you he understands that AmigaDOS is the name of the Tripos >derived file system. The rest of the system, the Exec, drivers, etc..., are >together called AmigaOS. There's more than just the filesystem. It includes a load of BCPL library routines used by the dos calls and bcpl programs (and filesystems). >> AmigaDOS (among other OSs) got it right, and chose tasks for basic IO >> objects. If you don't think this is right, I'll write a task that uses >> a disk and acts like a file. You write a file that acts like a task >> (using whatever hardware you need). > >Actually, every part of AmigaOS *except* AmigaDOS uses tasks as the basic >object. AmigaDOS uses a task interface, but the basic object is the lock or >file handle. Mixing models like this is a bad idea, and the main reason people >get frustrated with AmigaDOS. Actually, the filehandle is not the basic object: the coroutine is (for OFS/FFS). The filehandle is a handle on the coroutine in the FS. The FS is full of coroutines. Makes some things very clean, makes others very tough to add. >Rubbish. Every AmigaOS program has to have a substantial amount of code >devoted to resource tracking... a job better assigned to the O/S. If you >don't want to call that "coding around" the problems, then you're just playing >games with words. Many requests for what people call "resource tracking" are actually requests for memory protection. I consider any program on ANY os that doesn't free what it allocates (memory, file locks, whatever) to be at best poorly written. Not to say some resource tracking wouldn't be a bad idea. However, in a multitasking, lightweight process machine you have to be careful: many programs pass off resources (permanently) to other processes (or to no one: public structures, for example.) One can't merely add freeing of resources on program exit to current programs; they'll break. >But in UNIX the program doesn't have to *know* what goes on inside the kernel. >You have to dig around in internal AmigaDOS data structures to do all sorts of >vitally important things... like getting a list of devices, an operation that >comes for free with UNIX. Hmm, ps seems to know a lot..., and what's the purpose of /dev/kmem, eh? :-) I agree about the AmigaDOS structures. Personally I prefer modules closer to Abstract Data Types (ADT's): access should be mostly by functions, all reasonable operations supported, as many data structures as possible _totally_ hidden. I particularily abhor applications allocating system data structures and passing them to the system. >> Elegant is hardly the word. Of course, if you just want a "here's a >> pair of fd's" type interface, that's not hard to build on top of >> PIPE:. > >If you want it transparent to the programs being piped, it sure is. The >only decent implementation of *that* is Bill Hawes' PIP device, which >uses a non-standard call to get a pair of file handles that really do >work like UNIX pipes. It's a botch. You don't need to do that. Named pipes can work quite nicely in place of Unix pipes; most of the work in using pipes is in the shell. I know, I've written shells that do unix piping ('|') and pipe-handlers before (before I came to commodore). I see no need for Bill's special packets. >> What about them? The versions in my Amiga library are slightly >> different than the ones on Unix, but not enough to cause any problems. > >Unless you want to port reasonably sophisticated UNIX software, such as >ASH. Suprise! AmigaDos is not Unix! It doesn't claim to be. What's going on here is most C compilers in most systems try to provide a bunch of fairly standard Unix functions to make porting Unix programs easier. Note the word "easier". Since the OS they run on top of is not Unix, the library routines often aren't 101% Unix XYZZY compatible. This doesn't mean you can't do the things you want to in AmigaDos: just that you may have to do them a different way (the fork() and exec() calls were not given to DMR on a stone tablet). I also don't mean to say all the functionality that should be is in the current DOS. It isn't. I'm working to correct this; I think you'll like what you see. :-) >What part of UNIX? The only part that matters is the program interface. >What's on the other side varies widely. Compare and contrast Mach (the >basic object is an address space) or Minix (tasks and message ports) to >conventional UNIX (co-routines) or Eunice (emulation on top of VMS). Spoken like a true portable Unix application writer. :-) Seriously, most Uni are still using the ancient 'monolithic monitor' model for their kernel. There are some _small_, hesitant steps away from it, but not very fast, and not mainstream. -- Randell Jesup, Keeper of AmigaDos, Commodore Engineering. {uunet|rutgers}!cbmvax!jesup, jesup@cbmvax.cbm.commodore.com BIX: rjesup Common phrase heard at Amiga Devcon '89: "It's in there!"
doug@xdos.UUCP (Doug Merritt) (08/08/89)
In article <5067@ucdavis.ucdavis.edu> ez004559@pollux.ucdavis.edu (Down with Unix!) writes: Your byline above is enough to start a flame war by itself. >Unix is a monstrous Goliath... And it don't have windows. If you want Minix, >you can get an IBM clone. I think I've read enough stuff about Minix and >Unix to last me a lifetime. Unix has its faults. AmigaDOS has its faults. I also fault your flaming posting. I use Sun OS at work, and it does in fact have windows. >OUt of curiousity, how many of you brain damaged puppies out there use some >incarnation of VI on your Amiga? Get a life! Haven't any of you heard of >windows? Try Texed. You can spawn new Texed windows at will, and cut and paste >from any Texted. It's easy to use, intuitive, doesn't take any more than 2 >hours to master. A rude and immature question like this doesn't really deserve a response, but just for the hell of it: I've been using vi for 10 or 11 years, and its commands are hardwired into my fingertips. This allows me to do complex editing operations *extremely* fast. If I switched to a better editor, such as an emacs or possibly texted, it would slow me down due to the need to *think* about the commands. Currently I edit by reflex, and that's much faster than any conscious action possibly could be. Look up "conditioned reflex" in a good psychology text to see a numeric timing comparison. Or watch a martial arts demo, and note the difference between the intermediate and advanced students. A great deal of the improvement comes from turning the various motions into conditioned reflexes. Furthermore there is one very important area of complex commands that *do* require conscious thought, where vi is superior to all existing editors... its global/range search-and-replace command set surpasses even Gnu Emacs. vi-haters never seem to be aware of just how powerful it is, but once you learn the entire set, it's a very hard set of capabilities to give up. Sometimes I think it'd be worth it to switch to get e.g. more powerful macros, the ability to window, etc. But not just yet; it'd take several years to turn the new commands into conditioned reflexes. The lack of windowing is less important on a system that itself supports windows, since you can use multiple system windows as a substitute. Cut and paste is supported in vi in a way painful to vi-novices and less elegant than e.g. emacs, yet again seems perfectly convenient when it happens by conditioned reflex. >Anyone who uses vi on the amiga is going to Unix hell after >they die. Satan will personally tie you up to an ancient vt52 terminal hooked >up to a pdp11 with a load average of 60 and force you to work on vi for hours >on end. Pretty funny...the one redeeming part of your posting. And I shudder to think of the kind of hell reserved for narrow minded people who flame about their own limited understandings. Doug -- Doug Merritt {pyramid,apple}!xdos!doug Member, Crusaders for a Better Tomorrow Professional Wildeyed Visionary
swarren@eugene.uucp (Steve Warren) (08/08/89)
In article <5067@ucdavis.ucdavis.edu> ez004559@pollux.ucdavis.edu (Down with Unix!) writes: >Who in their right mind would want Minix on the Amiga anyway!` [...] >Unix is a monstrous Goliath... And it don't have windows. If you want Minix, [...] >OUt of curiousity, how many of you brain damaged puppies out there use some >incarnation of VI on your Amiga? Get a life! Haven't any of you heard of [...] >to master. Anyone who uses vi on the amiga is going to Unix hell after they die. [...] If you've been following the discussion and reading the posts from our friends in Germany who are doing the port, then you know who & why and realise they have a very good reason for the port. It is a lot of work, and they surely are not doing it in order to provide flame topics on comp.sys.amiga. If you've not followed the discussion, then shame on you for flaming in ignorance. Also, please let's not start a "my editor is better than yours" flamefest. Nobody is going to change their minds because of it, and everyone is going to get red-faced and angry over a matter of opinion. Why do you care what editor I use (not vi :-)? --Steve ------------------------------------------------------------------------- {uunet,sun}!convex!swarren; swarren@convex.COM
shadow@pawl.rpi.edu (Deven T. Corzine) (08/08/89)
On 5 Aug 89 17:01:09 GMT, in articles <154.24DDB52A@mamab.FIDONET.ORG>, <154.24DDB52D@mamab.FIDONET.ORG> and <154.24DD527@mamab.FIDONET.ORG> some stupid jerk posts some of the worst forgeries I've seen to date: "Deven"> Path: rpi!crdgw1!ge-dab!peora!tarpit!libcmp!mamab!Deven.T..Corzine "Deven"> From: Deven.T..Corzine@mamab.FIDONET.ORG (Deven T. Corzine) "Deven"> Newsgroups: comp.sys.amiga.tech "Deven"> Subject: Re: Minix, Unix on the Amiga, and flames on AmigaDOS braindamage... "Deven"> Message-ID: <154.24DDB52A@mamab.FIDONET.ORG> "Deven"> Date: 5 Aug 89 17:01:09 GMT "Deven"> Organization: MaMaB--the Machine in Mark's Bedroom ^^^^ Who's this "Mark"? The jerk posting these forgeries? "Deven"> Lines: 6 "Deven"> "Deven"> "Deven"> "Deven"> -- "Deven"> Fidonet: Deven T. Corzine via 1:363/9 "Deven"> Internet: Deven.T..Corzine@mamab.FIDONET.ORG "Deven"> Usenet: ...!peora!rtmvax!libcmp!mamab!Deven.T..Corzine Don't believe it. I am the one and only Deven Thomas Corzine. For better or worse. Deven -- Deven T. Corzine Internet: deven@rpi.edu, shadow@pawl.rpi.edu Snail: 2214 12th Street, Troy, NY 12180 Phone: (518) 271-0750 Bitnet: deven@rpitsmts, userfxb6@rpitsmts UUCP: uunet!rpi!deven Simple things should be simple and complex things should be possible.
ejkst@unix.cis.pittsburgh.edu (Eric J. Kennedy) (08/09/89)
In article <5067@ucdavis.ucdavis.edu> ez004559@pollux.ucdavis.edu (Down with Unix!) writes:
<OUt of curiousity, how many of you brain damaged puppies out there use some
<incarnation of VI on your Amiga? Get a life! Haven't any of you heard of
<windows? Try Texed. You can spawn new Texed windows at will, and cut and paste
<from any Texted. It's easy to use, intuitive, doesn't take any more than 2 hours
<to master. Anyone who uses vi on the amiga is going to Unix hell after they die.
<Satan will personally tie you up to an ancient vt52 terminal hooked up to
<a pdp11 with a load average of 60 and force you to work on vi for hours on end.
I use an incarnation of vi on my Amiga. It uses the mouse, emacs-style
windows, cut-and-paste, etc.
Now please go away.
--
Eric Kennedy
ejkst@cisunx.UUCP
deraadt@enme3.ucalgary.ca (Theo Deraadt) (08/09/89)
In article <154.24DDB52A@mamab.FIDONET.ORG> Deven.T..Corzine@mamab.FIDONET.ORG (Deven T. Corzine) writes: > > >-- >Fidonet: Deven T. Corzine via 1:363/9 >Internet: Deven.T..Corzine@mamab.FIDONET.ORG >Usenet: ...!peora!rtmvax!libcmp!mamab!Deven.T..Corzine Certainly, Deven, one of your best messages lately. Not a lot less information than some previous ones.. <tdr. Theo de Raadt (403) 289-5894 Calgary, Alberta, Canada
jesup@cbmvax.UUCP (Randell Jesup) (08/09/89)
Not really wanting to start a flame war, but... In article <439@xdos.UUCP> doug@xdos.UUCP (Doug Merritt) writes: >The lack of windowing is less important on a system that itself supports >windows, since you can use multiple system windows as a substitute. Cut >and paste is supported in vi in a way painful to vi-novices and less >elegant than e.g. emacs, yet again seems perfectly convenient when it >happens by conditioned reflex. BTW, what do VI users do when they want to cut and paste _between_ files?? I never though of that before; it must be a pain. Editors are a religous issue, anyone who wants to flame about them go to alt.computers.religion, please. -- Randell Jesup, Keeper of AmigaDos, Commodore Engineering. {uunet|rutgers}!cbmvax!jesup, jesup@cbmvax.cbm.commodore.com BIX: rjesup Common phrase heard at Amiga Devcon '89: "It's in there!"
shadow@pawl.rpi.edu (Deven T. Corzine) (08/09/89)
On 8 Aug 89 15:44:03 GMT, doug@xdos.UUCP (Doug Merritt) said: Doug> Furthermore there is one very important area of complex commands Doug> that *do* require conscious thought, where vi is superior to all Doug> existing editors... its global/range search-and-replace command Doug> set surpasses even Gnu Emacs. *That* I find hard to believe. GNU Emacs has not only query-replace (a very nice function) but also query-replace-regexp. [not bound to any key by default.] An incremental search is a useful and impressive beast... [A regexp I-search would be pretty incredible...] Tell me what vi's got that GNU Emacs hasn't... [Email unless you actually think it's of general interest; this is already questionable.] Deven -- Deven T. Corzine Internet: deven@rpi.edu, shadow@pawl.rpi.edu Snail: 2214 12th Street, Troy, NY 12180 Phone: (518) 271-0750 Bitnet: deven@rpitsmts, userfxb6@rpitsmts UUCP: uunet!rpi!deven Simple things should be simple and complex things should be possible.
rachamp@mbunix.mitre.org (Richard A. Champeaux) (08/10/89)
In article <439@xdos.UUCP> doug@xdos.UUCP (Doug Merritt) writes: >A rude and immature question like this doesn't really deserve a response, >but just for the hell of it: I've been using vi for 10 or 11 years, and >its commands are hardwired into my fingertips. This allows me to do complex >editing operations *extremely* fast. If I switched to a better editor, >such as an emacs or possibly texted, it would slow me down due to the >need to *think* about the commands. Currently I edit by reflex, and that's >much faster than any conscious action possibly could be. Look up "conditioned >reflex" in a good psychology text to see a numeric timing comparison. > >Doug Merritt {pyramid,apple}!xdos!doug I agree that VI isn't all that bad once you get used to it. I've been forced to use it at work for the past couple of months, but I'm still a novice user. The thing that really annoys me is that it's beginning to become second nature. When I go home and use UEdit, I end up inserting h's,j's,k's, and l's all over the place. I've gotten into the habit of pressing ESC every time I want to move the cursor, and I get confused when I try to exit the file with :x. Two more weeks and I get to become a one editor person again. Rich Champeaux (rachamp@mbunix.mitre.org)
peter@sugar.hackercorp.com (Peter da Silva) (08/10/89)
In article <7570@cbmvax.UUCP>, jesup@cbmvax.UUCP (Randell Jesup) writes: > In article <4084@sugar.hackercorp.com> peter@sugar.hackercorp.com (Peter da Silva) writes: > >Because unlike you he understands that AmigaDOS is the name of the Tripos > >derived file system. The rest of the system, the Exec, drivers, etc..., are > >together called AmigaOS. > There's more than just the filesystem. It includes a load of BCPL > library routines used by the dos calls and bcpl programs (and filesystems). (dismissively waves hands) comes down to the same thing. The DOS is in BCPL. > >> AmigaDOS (among other OSs) got it right, and chose tasks for basic IO > >> objects. > >Actually, every part of AmigaOS *except* AmigaDOS uses tasks as the basic > >object. AmigaDOS uses a task interface, but the basic object is the lock or > >file handle. Mixing models like this is a bad idea, and the main reason > >people get frustrated with AmigaDOS. > > Actually, the filehandle is not the basic object: the coroutine is > (for OFS/FFS). The filehandle is a handle on the coroutine in the FS. Programmer interface is what's important here. What goes on on the other side of dos.library is irrelevant. A program talks to DOS by making library calls using a filehandle as the basic object. There are a few programs that explicitly pass messages to handlers (browser is one of them), but unless you do it strictyly synchronously this way is fraught with danger. Locks and file handles are the basic objects in DOS. Messages and message ports are the basic objects in the rest of the system. > Many requests for what people call "resource tracking" are actually > requests for memory protection. I consider any program on ANY os that doesn't > free what it allocates (memory, file locks, whatever) to be at best poorly > written. What I'm talking about is resource tracking. My buddy Karl has written a nice tracking library that tattles on you if you foul up. It's kind of hard to track everything, though... you have to put a wrapper around just about every call you make... The biggest problem with the lack of resource tracking is that you can't easily do a standard UNIX-type shell, because you HAVE to watch all your children so you can close (or not close) their standard input and output file handles when they exit. It's a royal pain. If these were properly tracked, it would not be a problem. > Not to say some resource tracking wouldn't be a bad idea. However, > in a multitasking, lightweight process machine you have to be careful: many > programs pass off resources (permanently) to other processes (or to no one: > public structures, for example.) One can't merely add freeing of resources > on program exit to current programs; they'll break. No, it has to be in the system from the start. If there had been a "release" call, that programs used to let the system know they weren't using a given resource, a lot of things would be easier now. I'm not asking for enhancements, just pointing out some advantages to UNIX. Listening to some people here you'd think there weren't any. > >But in UNIX the program doesn't have to *know* what goes on inside the kernel. > >You have to dig around in internal AmigaDOS data structures to do all sorts of > >vitally important things... like getting a list of devices, an operation that > >comes for free with UNIX. > Hmm, ps seems to know a lot..., and what's the purpose of /dev/kmem, > eh? :-) PS is a special case, which is highlighted by the fact that it's setuid. User programs don't need to mess around in kmem, and in fact don't have permission to. > >Unless you want to port reasonably sophisticated UNIX software, such as > >ASH. > Suprise! AmigaDos is not Unix! It doesn't claim to be. No, but to hear Mike talk all you need is a fancy library. 'tain't so. Mild gritch: > (the fork() and exec() > calls were not given to DMR on a stone tablet). You mean KT, no? > I also don't mean to say all the functionality that should be is > in the current DOS. It isn't. I'm working to correct this; I think you'll > like what you see. :-) Details, details! > Spoken like a true portable Unix application writer. :-) That's me. It's NOT that hard to write programs that run on a wide variety of UNIX systems without a mass of #ifdef spaghetti. > Seriously, most Uni are still using the ancient 'monolithic monitor' model > for their kernel. There are some _small_, hesitant steps away from it, but > not very fast, and not mainstream. Mach isn't mainstream? Ah, just you wait... there are more things in heaven and earth than a dreamt of in your philosophy. -- Peter "Have you hugged your wolf today" da Silva `-_-' ...texbell!sugar!peter, or peter@sugar.hackercorp.com 'U`
chas@gtss.gatech.edu (Charles Cleveland) (08/10/89)
In article <1677@cs-spool.calgary.UUCP> deraadt@enme3.UUCP (Theo Deraadt) writes: )In article <154.24DDB52A@mamab.FIDONET.ORG> Deven.T..Corzine@mamab.FIDONET.ORG (Deven T. Corzine) writes: )> )> )>-- )>Fidonet: Deven T. Corzine via 1:363/9 )>Internet: Deven.T..Corzine@mamab.FIDONET.ORG )>Usenet: ...!peora!rtmvax!libcmp!mamab!Deven.T..Corzine ) ) )Certainly, Deven, one of your best messages lately. Not a lot less )information than some previous ones.. ) <tdr. ) )Theo de Raadt (403) 289-5894 Calgary, Alberta, Canada Since some people are apparently still unaware of it, forgeries are spewing out of mamab all over the net. I suggest you respond to nothing from that site. Deven has already been hit three times by this character, who has been very busy lately. The "Machine in Mark's Bedroom" gets a uucp feed from libcmp, it looks like. Perhaps some of the offended parties should get in touch with the postmaster there. If these posting are really coming from libcmp!mamab, he ought to have his wires cut. Same for FIDONET, but I don't know how that works. Until then, ignore the creep. -- "Our vision is to speed up time, eventually eliminating it." -- Alex Schure Charles Cleveland Georgia Tech School of Physics Atlanta, GA 30332-0430 UUCP: ...!gatech!gtss!chas INTERNET: chas@gtss.gatech.edu
charles@hpcvca.CV.HP.COM (Charles Brown) (08/11/89)
>> Rubbish. Every AmigaOS program has to have a substantial amount of code >> devoted to resource tracking... a job better assigned to the O/S. If you >> don't want to call that "coding around" the problems, then you're >> just playing games with words. > Many requests for what people call "resource tracking" are actually > requests for memory protection. I consider any program on ANY os > that doesn't free what it allocates (memory, file locks, whatever) > to be at best poorly written. > -- Randell Jesup, Keeper of AmigaDos, Commodore Engineering. I try to write my programs in standard C so that they are portable between Unix and Amiga. I told a friend of mine (who doesn't own an Amiga but who knows a great deal about Unix) that I planned to change my programming style to explicitely free all memory that I had malloced. He said that under Unix that was a bad idea because the OS can free the memory much faster than my explicit calls. Hence I would be slowing down my program (as well as making it larger) and would get no benefit. As far as I know, that criticism applys to all operating systems except the Amiga's. It is not clear to me that slowing down the code and making it larger on all systems is better when there is only one system which requires it. (Fortunately C provides #ifdef.) -- Charles Brown charles@cv.hp.com or charles%hpcvca@hplabs.hp.com or hplabs!hpcvca!charles or "Hey you!" Not representing my employer.
shadow@pawl.rpi.edu (Deven T. Corzine) (08/11/89)
On 10 Aug 89 13:43:16 GMT, chas@gtss.gatech.edu (Charles Cleveland) said: Charles> Summary: forgery alert Charles> Since some people are apparently still unaware of it, Charles> forgeries are spewing out of mamab all over the net. I Charles> suggest you respond to nothing from that site. Deven has Charles> already been hit three times by this character, who has been Charles> very busy lately. Three times? I've only noticed the one in comp.sys.amiga.tech here. Where else? [email] Charles> The "Machine in Mark's Bedroom" gets a uucp feed from libcmp, Charles> it looks like. Perhaps some of the offended parties should Charles> get in touch with the postmaster there. If these posting are Charles> really coming from libcmp!mamab, he ought to have his wires Charles> cut. Same for FIDONET, but I don't know how that works. It has been suggested that it could be messed up gateway software causing the messages, and not intentional forgeries. Whether this is true or not, I don't know, but regardless, I don't like it. (To mung messages that badly would take some *seriously* broken software...) Charles> Until then, ignore the creep. Agreed. Deven -- Deven T. Corzine Internet: deven@rpi.edu, shadow@pawl.rpi.edu Snail: 2214 12th Street, Troy, NY 12180 Phone: (518) 271-0750 Bitnet: deven@rpitsmts, userfxb6@rpitsmts UUCP: uunet!rpi!deven Simple things should be simple and complex things should be possible.
rokicki@polya.Stanford.EDU (Tomas G. Rokicki) (08/12/89)
charles@hpcvca.CV.HP.COM (Charles Brown) writes: > I told a friend of mine (who doesn't own an > Amiga but who knows a great deal about Unix) that I planned to change > my programming style to explicitely free all memory that I had > malloced. He said that under Unix that was a bad idea because the OS > can free the memory much faster than my explicit calls. Hence I would > be slowing down my program (as well as making it larger) and would get > no benefit. Depends on the style program you write. First, the program won't be much larger, typically, as the `free' stuff is a simple traversal of a linked list. Secondly, even under Unix in *many* cases freeing memory is crucial. The virtual address space of a process is limited, and you can easily run out if all you do is malloc() with no free's. Even without this, though, if you don't free(), your usage of malloc()'d memory may become fragmented, distributing your `working set' over a much larger number of memory pages, causing swapping and other bad behavior. If your program runs for a while, possibly over several jobs in the same invocation, and you must malloc() memory, please free() it when appropriate. If all you want is Unix/Amiga compatibility, might as well use the malloc() functions supplied by the various compiler vendors, as they are compatible . . . -tom
grr@cbmvax.UUCP (George Robbins) (08/12/89)
In article <1410023@hpcvca.CV.HP.COM> charles@hpcvca.CV.HP.COM (Charles Brown) writes: > >> Rubbish. Every AmigaOS program has to have a substantial amount of code > >> devoted to resource tracking... a job better assigned to the O/S. If you > >> don't want to call that "coding around" the problems, then you're > >> just playing games with words. > > I try to write my programs in standard C so that they are portable > between Unix and Amiga. I told a friend of mine (who doesn't own an > Amiga but who knows a great deal about Unix) that I planned to change > my programming style to explicitely free all memory that I had > malloced. He said that under Unix that was a bad idea because the OS > can free the memory much faster than my explicit calls. To some extent this may be true, especially if it's a simple case of malloc whatever you use once and then run with it. If you malloc stuff on an ongoing basis or have a program that runs for an arbitrary length of time, then even in a "free on termination" environment, you should be tracking and freeing memory. The alternative is known as "memory leaks". In most cases, the amount of code/time to free allocated memory should be quite trivial. If it bothers your efficiency experts, then #ifdef the code... -- George Robbins - now working for, uucp: {uunet|pyramid|rutgers}!cbmvax!grr but no way officially representing arpa: cbmvax!grr@uunet.uu.net Commodore, Engineering Department fone: 215-431-9255 (only by moonlite)
jesup@cbmvax.UUCP (Randell Jesup) (08/12/89)
In article <1410023@hpcvca.CV.HP.COM> charles@hpcvca.CV.HP.COM (Charles Brown) writes: >> Many requests for what people call "resource tracking" are actually >> requests for memory protection. I consider any program on ANY os >> that doesn't free what it allocates (memory, file locks, whatever) >> to be at best poorly written. >> -- Randell Jesup, Keeper of AmigaDos, Commodore Engineering. > >I try to write my programs in standard C so that they are portable >between Unix and Amiga. I told a friend of mine (who doesn't own an >Amiga but who knows a great deal about Unix) that I planned to change >my programming style to explicitely free all memory that I had >malloced. He said that under Unix that was a bad idea because the OS >can free the memory much faster than my explicit calls. Hence I would >be slowing down my program (as well as making it larger) and would get >no benefit. As far as I know, that criticism applys to all operating >systems except the Amiga's. Well, if you use the C library routines malloc() and free(), there is no _need_ to free everything, since the library implementation and exit() code takes care of freeing malloc()ed memory. Doesn't mean I like the practice: it places more reliance on the malloc to be unix-compatible, and precludes replacing malloc (easily) with lower-level memory calls with less overhead than malloc (such as AllocMem, or something like it). Doing something like that saved me over 1K, by dumping malloc, and made my program run faster. Another reason I prefer a style where everything is freed is that it makes the code more reusable: you can take a subroutine and use it, and not have to worry about using immense mounts of virtual space that you are no longer using. (Since you may use it repeatedly in a loop without exiting, if it drops memory every time it can add up quickly.) As you might guess, I'm not a big fan of garbage collection. -- Randell Jesup, Keeper of AmigaDos, Commodore Engineering. {uunet|rutgers}!cbmvax!jesup, jesup@cbmvax.cbm.commodore.com BIX: rjesup Common phrase heard at Amiga Devcon '89: "It's in there!"
phils@tekigm2.MEN.TEK.COM (Philip E Staub) (08/12/89)
In article <63189@linus.UUCP> rachamp@mbunix (Champeaux) writes: >In article <439@xdos.UUCP> doug@xdos.UUCP (Doug Merritt) writes: [ comments about 'vi becoming second nature' deleted] >> >>Doug Merritt {pyramid,apple}!xdos!doug > >I agree that VI isn't all that bad once you get used to it. I've been forced >to use it at work for the past couple of months, but I'm still a novice user. >The thing that really annoys me is that it's beginning to become second nature. >When I go home and use UEdit, I end up inserting h's,j's,k's, and l's all over >the place. I've gotten into the habit of pressing ESC every time I want to >move the cursor, and I get confused when I try to exit the file with :x. Two >more weeks and I get to become a one editor person again. ^^^^^^^^^^^^^^^^^ > >Rich Champeaux (rachamp@mbunix.mitre.org) This is precisely why I switched to MicroEMACS 3.10. I have occasion to use 4 different operating systems on a regular basis (BSD, VMS (Uggh!), MS-DOS(GAAK!), and AmigaDOS), and I have MicroEMACS on all of them, and they all work the same way. I used vi for much the same reason for a long time (until I started having to grovel around in VMS), though I was never completely satisfied with the minor differences between the clones. I was also envious of the people with editors which could handle multiple windows on screen at once. MicroEMACS was a good solution, but it wasn't until version 3.10 that I was happy enough with it to switch to it completely. Regards, Phil -- ------------------------------------------------------------------------------ Phil Staub, phils@tekigm2.MEN.TEK.COM Definition: BUG: A feature (present or absent) which is (at best) inconvenient.
mcp@ziebmef.uucp (Marc Plumb) (08/12/89)
In article <3352@sol.warwick.ac.uk> csuwk@warwick.ac.uk (Ade Lovett) writes: > And you don't need a reasonable amount of disk/memory to make AmigaDOS > useable??? Hah! Next time you can work *PROPERLY* with less than 1meg and > a 20meg HD let me know, I'd be interested in how you did it.. I don't know what "properly" is, but I develop on a 2-floppy 512K A1000. It's getting to the point where I want more memory and a HD (I have an unpopulated ASDG 8M board plugged into Amy waiting for a really good deal on some slow 1Meg x 1 parts), but I'm surviving. -- -Colin Plumb
karl@sugar.hackercorp.com (Karl Lehenbauer) (08/13/89)
In article <5067@ucdavis.ucdavis.edu>, ez004559@pollux.ucdavis.edu (0040;0000002347;0;250;143;) writes: > Unix ... don't have windows. False. > OUt of curiousity, how many of you brain damaged puppies out there use some > incarnation of VI on your Amiga? Get a life! OUt of curiosity, can you do anything besides flame? Get a life! -- -- uunet!sugar!karl "Have you debugged your wolf today?" -- free Usenet access: (713) 438-5018
karl@sugar.hackercorp.com (Karl Lehenbauer) (08/13/89)
In article <7570@cbmvax.UUCP>, jesup@cbmvax.UUCP (Randell Jesup) writes: > I consider any program on ANY os that doesn't > free what it allocates (memory, file locks, whatever) to be at best poorly > written. Careful, Randall, I think you've been using your Amiga too long. There is no reason a program should have to free its memory if the operating system does it. Programs written for such an OS cannot be considered "at best poorly written" if their authors did not choose to gratuitously add that redundant capability. Few multitasking operating systems have not done tracked memory, because memory leaks can crash them (cf AmigaDOS). Protection, priveledge instructions and such were created to keep rogue programs from doing in themselves, other programs and the OS. However, we have learned to live with this unprotected system, and there are certain advatages, like intertask communication is easy and high-performance, there are a million of these multitasking machines out there and people can buy them for $500. So when people come to bash, comparing the Amiga unfavorably to stripped $12,000 workstations, it gets kind of ridiculous. Anyway, the Mac's in the same boat, as is every DOS/Windows user (an absurdity considering how long the 286, with its built-in MMU, has been out.) -- -- uunet!sugar!karl "Have you debugged your wolf today?" -- free Usenet access: (713) 438-5018
karl@sugar.hackercorp.com (Karl Lehenbauer) (08/13/89)
In article <SHADOW.89Aug9002631@pawl.rpi.edu>, shadow@pawl.rpi.edu (Deven T. Corzine) writes: > Tell me what vi's got that GNU Emacs hasn't... Uh, a version for AmigaDOS? -- -- uunet!sugar!karl "Have you debugged your wolf today?" -- free Usenet access: (713) 438-5018
shadow@pawl.rpi.edu (Deven T. Corzine) (08/13/89)
In article <SHADOW.89Aug9002631@pawl.rpi.edu>, shadow@pawl.rpi.edu (Deven T. Corzine) writes: Deven> Tell me what vi's got that GNU Emacs hasn't... On 12 Aug 89 19:25:55 GMT, karl@sugar.hackercorp.com (Karl Lehenbauer) said: Karl> Uh, a version for AmigaDOS? Neither does. Vi has poor clones, Emacs has incomplete (some poor, some good) clones. mg{2,3}a is much better than any vi clone I've seen on the Amiga... Deven -- Deven T. Corzine Internet: deven@rpi.edu, shadow@pawl.rpi.edu Snail: 2214 12th Street, Troy, NY 12180 Phone: (518) 271-0750 Bitnet: deven@rpitsmts, userfxb6@rpitsmts UUCP: uunet!rpi!deven Simple things should be simple and complex things should be possible.
usenet@cps3xx.UUCP (Usenet file owner) (08/14/89)
In article <4107@sugar.hackercorp.com> karl@sugar.hackercorp.com (Karl Lehenbauer) writes: >In article <7570@cbmvax.UUCP>, jesup@cbmvax.UUCP (Randell Jesup) writes: >> I consider any program on ANY os that doesn't >> free what it allocates (memory, file locks, whatever) to be at best poorly >> written. > >Careful, Randall, I think you've been using your Amiga too long. > >There is no reason a program should have to free its memory if the operating >system does it. Programs written for such an OS cannot be considered Even worse, even in UNIX, is programs that fail to check if they are out on memory. Most UNIX programs *do not* ever check this. UNIX programmers assume a blissful computer with plenty enough VM to get by. Well, we have a Sun386i here. With several messydos windows open, it does run out of memory (im not sure exactly what the problem is, but it has something to do with the fact that DOS emultions run in real memory and is not subject to VM). When this happens, most thing will segmentation-fault, since they don't check for NULLs returned by malloc. Of course no Amiga programmer ever forgets to check such things :-) REAL NAME: Joe Porkka jap@frith.cl.msu.edu
darin@nova.laic.uucp (Darin Johnson) (08/15/89)
In article <63189@linus.UUCP> rachamp@mbunix (Champeaux) writes: >Two more weeks and I get to become a one editor person again. Right now, I use 3 editors regularly. More if you count the differences between GNU Emacs, MG2A, ZEmacs, etc. On VMS, I use TPU/EVE almost exsclusively (EVE+ with my own extensions, actually). EDT when I am forced to. Occasionally I use GNU Emacs on VMS, but EVE is much more convenient. On UNIX, I usually just log in for a few minutes (I am only a part time sysadmin) so VI is handy in that it starts up almost immediately. When I program on UNIX, I stick with GNU Emacs, even though my silly terminal doesn't have an escape, ^S is gobbled up, etc. On the Amiga, MG2A exclusively. I've tried others, but I usually end up deleting everything and have to read the manuals to find out how to undo. In 3 or 4 weeks, it's back to 1 editor only, hurrah! Darin Johnson (leadsv!laic!darin@pyramid.pyramid.com) We now return you to your regularly scheduled program.
jesup@cbmvax.UUCP (Randell Jesup) (08/15/89)
In article <4148@cps3xx.UUCP> porkka@frith.UUCP (Joe Porkka) writes: >In article <4107@sugar.hackercorp.com> karl@sugar.hackercorp.com (Karl Lehenbauer) writes: >>In article <7570@cbmvax.UUCP>, jesup@cbmvax.UUCP (Randell Jesup) writes: >>> I consider any program on ANY os that doesn't >>> free what it allocates (memory, file locks, whatever) to be at best poorly >>> written. >> >>Careful, Randall, I think you've been using your Amiga too long. >> >>There is no reason a program should have to free its memory if the operating >>system does it. Programs written for such an OS cannot be considered > >Even worse, even in UNIX, is programs that fail to check if >they are out on memory. > >Most UNIX programs *do not* ever check this. UNIX programmers assume >a blissful computer with plenty enough VM to get by. Plus, as I said, even in unix it can be advantageous to free things you allocate, both from performance and ability to run in a (relatively) tight VM system. I used to free everything even when programming in Ada, though it was fairly standard just to drop things and forget them. I was told Ada assumed the memory would be recovered via garbage collection, or some such, but no one had ever written a compiler/run-time-package that did it. (my memory could be foggy on this.) -- Randell Jesup, Keeper of AmigaDos, Commodore Engineering. {uunet|rutgers}!cbmvax!jesup, jesup@cbmvax.cbm.commodore.com BIX: rjesup Common phrase heard at Amiga Devcon '89: "It's in there!"
peter@sugar.hackercorp.com (Peter da Silva) (08/16/89)
In article <4148@cps3xx.UUCP>, usenet@cps3xx.UUCP (Usenet file owner) writes: > Most UNIX programs *do not* ever check this. UNIX programmers assume > a blissful computer with plenty enough VM to get by. This is pure garbage. I don't think I've seen any ordinary UNIX programs that do this. Now things might be different in the X-windows world, where they have a rather cavalier attitude towards resource usage. You did mention that you're using a Sun... (speaking of Suns, we just got one at work. *This* is supposed to be a better product than System V? It's sure got more bells and whistles, but the amount of integration and productizing is virtually nil) If you want to point a finger at UNIX programs, there is a problem with the assumption that disk space is effectively infinite... but I've not seen too many Amiga programs that check for this, either. A few, yes, so it shows a bit more care... but most still ignore error returns from Write. Now Amiga programmers, on the other hand, do tend to leave dead file locks lying around... -- Peter "Have you hugged your wolf today" da Silva `-_-' ...texbell!sugar!peter, or peter@sugar.hackercorp.com 'U`
walker@sas.UUCP (Doug Walker) (08/18/89)
In article <7661@cbmvax.UUCP> jesup@cbmvax.UUCP (Randell Jesup) writes: >In article <4148@cps3xx.UUCP> porkka@frith.UUCP (Joe Porkka) writes: >>In article <4107@sugar.hackercorp.com> karl@sugar.hackercorp.com (Karl Lehenbauer) writes: >>>In article <7570@cbmvax.UUCP>, jesup@cbmvax.UUCP (Randell Jesup) writes: >>>There is no reason a program should have to free its memory if the operating >>>system does it. Programs written for such an OS cannot be considered I disagree. Programs that rely on the OS to free their memory in the normal case probably are missing some bets that would allow them to free up some unused storage. Sure, rely on the OS to clean up after you if you abort or end early, but doing memory maintenance as-you-go generally isn't that expensive and can give better performance, even on VM systems. --Doug