Path: utzoo!utgpu!jarvis.csri.toronto.edu!cs.utexas.edu!swrinde!ucsd!ucbvax!hplabs!hpfcso!hpfelg!koren From: koren@hpfelg.HP.COM (Steve Koren) Newsgroups: comp.sys.amiga.tech Subject: Re: (Re: A REAL fork() function (was Re: SKsh weirdness)) Message-ID: <13920054@hpfelg.HP.COM> Date: 5 Mar 90 23:15:41 GMT References: Organization: HP Elec. Design Div. -FtCollins Lines: 57 > I exit an instance of SKsh, it usually frees about 120-150K of memory, > and that's with the 70K executable RESIDENT. I don't consider such > excessive use of resources to be justified, so I have switched back to That is bigger than the number I get. On my system, the overhead of an additional SKsh is 48944 bytes if I load only the .skshrc file (most of that memory is taken up by hash tables and whatnot). Even when I load my .skshinit file (which is big) and the entire Stuff.sksh file, the overhead is still only 60952 bytes. Sure you're not measuring the overhead of the addition window? That alone consumes some memory, but it would anyway. You're absolutely right, though. SKsh is not for 512K systems. I can't really make the executable much smaller - for what it does, its not bad. It has comparible functionality to the Un*x version, which, depending on your Un*x, is usually over twice as big. I will eventually release a tiny_sksh which has reduced memory requirements. > There are several other major reasons I stopped using > SKsh -- it is EXTREMELY slow, and it also takes a LOT of memory, and > it doesn't give useful error messages -- only cryptic numbers. > Granted, I haven't tried SKsh 1.3, but it seems unlike that it > improves on the stack, memory and speed problems. > You sure you're using SKsh? It does tell you more than the "cryptic number": blah: can't change to directory (8) compare that to "Can't find blah" for the AmigaDos command or "Object Not Found blah" in the Dillon shell. They all seem about the same to me. If you want more error messages, or different wording, send me mail with specific suggestions. It is all open to change. I have been toying with the idea of loading all messages from a disk file so they could be customized as you wish. What is too slow? If you mean the external commands (wc, etc), they are getting much (5 to 10 x ) faster in 1.4. The script language is much slower than a compiler, of course, but again it doesn't do too bad when compared with Un*x on a much faster processor. Interactively, it seems about as fast to me as other Amiga shells for the same operation. If you have *specific things which you wish were faster, please let me know, and I'll see what i can do. There is some penalty to be expected since SKsh is doing much more complex things than other shells when you type in a command, but it should be barely noticable. [ How fast is significantly faster? ] Unfortunately, I didn't save the numbers. I seem to remember something around 30-50%, but 1) that's from memory, and 2) it will probably depend a whole bunch on the size of block you request, memory fragmentation, etc. - steve