Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Posting-Version: version B 2.10.2 9/18/84 SMI; site sun.uucp Path: utzoo!linus!decvax!decwrl!sun!tut From: t...@sun.uucp (Bill Tuthill) Newsgroups: net.unix-wizards Subject: UNIX Futures Message-ID: <3289@sun.uucp> Date: Mon, 24-Feb-86 19:04:17 EST Article-I.D.: sun.3289 Posted: Mon Feb 24 19:04:17 1986 Date-Received: Wed, 26-Feb-86 07:35:36 EST Distribution: net Organization: Sun Microsystems, Inc. Lines: 24 Let's not lose perspective by emphasizing differences between 4 BSD and System V. The two UNIX variants are at least 95% similar. It's not overly difficult to write software that will run on both (the more complicated the software, the harder it is, though). What's really good about UNIX was implemented by Thompson and Ritchie in the early days, and described in the famous CACM paper. The good stuff hasn't changed substantially since then. Just think of all the things that work on both 4.2 and SV: | > < cc, to name just a few. Adherents of 4 BSD think of themselves as rebels fighting evil Darth Vader and the Death Star, but in the real world, the distinction between good and evil isn't as clear as in the movies. Some people I know at a prestigious west-coast university just finished implementing alternatives to "cut" and "paste"; had they been familiar with System V, this wouldn't have been necessary. I can't help but form similar opinions about AT&T's networking efforts. I regularly use both 4 BSD and System V, and find the transition even less difficult than driving someone else's car. The main thing that bothers me about System V is the lack of word erase (^W) in the tty driver. It's like driving a car with no windshield washer. Others no doubt have different pet peeves. Bill Tuthill
Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!watmath!clyde!burl!ulysses!allegra!mit-eddie!think!harvard! seismo!mcvax!ukc!cstvax!scott From: sc...@cstvax.UUCP (Scott Larnach) Newsgroups: net.unix-wizards Subject: Re: UNIX Futures Message-ID: <67@cstvax.UUCP> Date: Thu, 27-Feb-86 08:45:38 EST Article-I.D.: cstvax.67 Posted: Thu Feb 27 08:45:38 1986 Date-Received: Sun, 2-Mar-86 19:37:40 EST Reply-To: sc...@cstvax.UUCP (Scott Larnach) Distribution: net Organization: Unix Support, Edinburgh Regional Computing Centre Lines: 14 The one and only real thing which bugs me about system V is the total lack of job control. e.g. in the mail program and having to check something out .. fancy being faced with either writing your mail out (and later having to read it in again), or having to fork up another shell. With a big load up either of these options can be painful. The functionality of ^Z and fg is tremendous! Come on, AT&T, give me job control and I'll be a believer. -- Scott Larnach Janet: sc...@uk.ac.ed.cstvax Edinburgh Unix Support Arpa: sc...@cstvax.ed.ac.uk Tel: +44 31 667 1081 x2629 Uucp: sc...@cstvax.uucp
Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Posting-Version: version B 2.10.2 9/3/84; site maynard.UUCP Path: utzoo!watmath!clyde!burl!ulysses!bellcore!decvax!genrad!panda! talcott!wjh12!maynard!campbell From: campb...@maynard.UUCP (Larry Campbell) Newsgroups: net.unix-wizards Subject: Re: UNIX Futures Message-ID: <257@maynard.UUCP> Date: Sun, 2-Mar-86 18:06:46 EST Article-I.D.: maynard.257 Posted: Sun Mar 2 18:06:46 1986 Date-Received: Tue, 4-Mar-86 02:20:32 EST References: <67@cstvax.UUCP> Distribution: net Organization: The Boston Software Works Inc., Maynard, MA Lines: 39 > The one and only real thing which bugs me about system V is the > total lack of job control. e.g. in the mail program and having to check > something out .. fancy being faced with either writing your mail > out (and later having to read it in again), or having to fork up > another shell. With a big load up either of these options can be > painful. The functionality of ^Z and fg is tremendous! > > Come on, AT&T, give me job control and I'll be a believer. > -- > Scott Larnach Janet: sc...@uk.ac.ed.cstvax > Edinburgh Unix Support Arpa: sc...@cstvax.ed.ac.uk > Tel: +44 31 667 1081 x2629 Uucp: sc...@cstvax.uucp Job control is pretty neat, if all you have is a dumb terminal. But an even better solution is virtual consoles, or windows. I have perhaps one of the most modest Unix configurations imaginable: a DEC Rainbow personal computer running VENIX (a V7 port). To this I have added virtual consoles, so rather than typing ctrl-Z and messing up my terminal screen and having my mail session scroll off the page while I check something out -- I just touch a function key and a different console appears. I can do whatever I like, then touch another key to zap me back to the (undisturbed) mail job. This happens at memory speeds -- i.e., instantaneously -- and required changes only to the console driver, not to the tty driver or kernel. Virtual consoles are a standard feature of VENIX when running on IBM gear, and also of XENIX I believe. I only had to roll my own because VenturCom doesn't provide it for Rainbows. I've never used a Sun, but I'm sure their windows are even nicer. The nice part about virtual consoles or windows is that they don't require special Berkeley-esque signals and terminal drivers and whatnot. Programs are completely unaware anything is going on; you don't have to hack your screen editor to repaint the screen when you reenter it. -- Larry Campbell The Boston Software Works, Inc. ARPA: maynard.UUCP:campb...@harvard.ARPA 120 Fulton Street UUCP: {harvard,cbosgd}!wjh12!maynard!campbell Boston MA 02109
Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!linus!philabs!cmcl2!seismo!umcp-cs!chris From: ch...@umcp-cs.UUCP (Chris Torek) Newsgroups: net.unix-wizards Subject: Re: UNIX Futures Message-ID: <33@umcp-cs.UUCP> Date: Mon, 3-Mar-86 04:22:42 EST Article-I.D.: umcp-cs.33 Posted: Mon Mar 3 04:22:42 1986 Date-Received: Tue, 4-Mar-86 04:12:10 EST References: <67@cstvax.UUCP> <257@maynard.UUCP> Distribution: net Organization: U of Maryland, Computer Science Dept., College Park, MD Lines: 16 In article <2...@maynard.UUCP> campb...@maynard.UUCP (Larry Campbell) writes: >Job control is pretty neat, if all you have is a dumb terminal. >But an even better solution is virtual consoles, or windows. ... and goes on to describe how wonderful it is. It is nice indeed: I have a Sun here with windows. But then, it is also nice to have job control so that I can do similar things from home. (Or could, if I had a phone....) `Get better equipment' is, to many, an unacceptable answer, alas. -- In-Real-Life: Chris Torek, Univ of MD Comp Sci Dept (+1 301 454 1415) UUCP: seismo!umcp-cs!chris CSNet: chris@umcp-cs ARPA: ch...@mimsy.umd.edu
Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Posting-Version: version B 2.10.2 9/18/84; site ulysses.UUCP Path: utzoo!watmath!clyde!burl!ulysses!ggs From: g...@ulysses.UUCP (Griff Smith) Newsgroups: net.unix-wizards Subject: Re: UNIX Futures Message-ID: <1199@ulysses.UUCP> Date: Mon, 3-Mar-86 10:04:32 EST Article-I.D.: ulysses.1199 Posted: Mon Mar 3 10:04:32 1986 Date-Received: Tue, 4-Mar-86 05:33:01 EST References: <67@cstvax.UUCP> <257@maynard.UUCP> Distribution: net Organization: AT&T Bell Laboratories, Murray Hill Lines: 32 > > Job control is pretty neat, if all you have is a dumb terminal. But an > even better solution is virtual consoles, or windows. ... ... > > The nice part about virtual consoles or windows is that they don't > require special Berkeley-esque signals and terminal drivers and whatnot. > Programs are completely unaware anything is going on; you don't have > to hack your screen editor to repaint the screen when you reenter it. > -- > Larry Campbell The Boston Software Works, Inc. > ARPA: maynard.UUCP:campb...@harvard.ARPA 120 Fulton Street > UUCP: {harvard,cbosgd}!wjh12!maynard!campbell Boston MA 02109 Sigh. Just what we need to convince AT&T that their (our) imitation of job control is all we need, or that when windows come it will be completely unnecessary. I have a 5620, a nice 8.5 x 11 bit-mapped display with mouse and windows; I still use job control once in a while. For one thing, it's easier to move something to the background instead of drawing a new window. It's also nice to be able to stop things some times. If I have just gotten part way into a "make" and I remember that I missed something, I just stop the "make" while it fix the problem. I also like having the option of stopping a suspected run-away process instead of blowing it out of the water. Would you drive a car without brakes? -- Griff Smith AT&T (Bell Laboratories), Murray Hill Phone: (201) 582-7736 Internet: g...@ulysses.uucp UUCP: ulysses!ggs ( {allegra|ihnp4}!ulysses!ggs )
Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Posting-Version: version B 2.10.3 4.3bsd-beta 6/6/85; site amdahl.UUCP Path: utzoo!watmath!clyde!burl!ulysses!bellcore!decvax!decwrl!amdcad!amdahl!andrew From: and...@amdahl.UUCP (Andrew Sharpe) Newsgroups: net.unix-wizards Subject: Re: UNIX Futures Message-ID: <2864@amdahl.UUCP> Date: Mon, 3-Mar-86 15:28:39 EST Article-I.D.: amdahl.2864 Posted: Mon Mar 3 15:28:39 1986 Date-Received: Wed, 5-Mar-86 04:21:07 EST References: <67@cstvax.UUCP> Distribution: net Organization: Amdahl Corp, Sunnyvale CA Lines: 21 Summary: whats wrong with using shl? In article <6...@cstvax.UUCP>, sc...@cstvax.UUCP (Scott Larnach) writes: > > The one and only real thing which bugs me about system V is the > total lack of job control. > > Come on, AT&T, give me job control and I'll be a believer. Uhh, excuse me, but what about shell layers ( shl ) ? It does not give you job control, per se, but it does allow you to break out of a foreground process, to 'do something else'. -- Andrew Sharpe ...!{ihnp4,cbosgd,hplabs}!amdahl!andrew ***************************************** ___________ * The views expressed above are solely * ,/| _____ | * my cat's opinions, and do not reflect * | | |___ /| | * the views of the employees, nor the * | | | | | | * management, of Amdahl Corporation. * | | | | | | * * | | |__| | | * * | | / | | ,| * * | ~~~~~ |/ ***************************************** ~~~~~~~~~~~
Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Posting-Version: version B 2.10 5/3/83 based; site homxb.UUCP Path: utzoo!watmath!clyde!cbosgd!ihnp4!houxm!homxb!gemini From: gem...@homxb.UUCP (Rick Richardson) Newsgroups: net.unix-wizards Subject: Re: UNIX Futures Message-ID: <1307@homxb.UUCP> Date: Tue, 4-Mar-86 09:12:51 EST Article-I.D.: homxb.1307 Posted: Tue Mar 4 09:12:51 1986 Date-Received: Wed, 5-Mar-86 05:25:50 EST References: <67@cstvax.UUCP> <257@maynard.UUCP>, <1199@ulysses.UUCP> Organization: PC Research, Inc. Lines: 62 > > Job control is pretty neat, if all you have is a dumb terminal. But an > even better solution is virtual consoles, or windows. ... ... > > The nice part about virtual consoles or windows is that they don't > require special Berkeley-esque signals and terminal drivers and whatnot. > Programs are completely unaware anything is going on; you don't have > to hack your screen editor to repaint the screen when you reenter it. > -- > Larry Campbell The Boston Software Works, Inc. Let me point out the "poor man's window system" which comes with VENIX SVR2. They used a slight hack to the console driver on an IBM PC; it allows four FULL SCREEN login sessions on a CGA, plus one more if you also have the monochrome adapter attached. Potentially, an EGA adapter could have eight such login sessions. You switch sessions by pressing Alt-1 through Alt-4 for the CGA, and Alt-5 for the monochrome. Now, for the way I typically use UNIX as a programmer, I submit that this approach provides the most functionality for the least cost. 1) I can log in as ANY user, on ANY screen (except root can only login on screen 1). 2) I always have a full 25 x 80 to work with. 3) I can instantly switch screens. No delay while screen is repainted. 4) I don't have to pay for expensive large screens, either in dollars or in space. 5) I can still do graphics, but if I do, I lose the current displays on other screens. Not a huge loss, since I rarely use graphics. A typical usage for me might find: screen 1 root Just in case I need a kill, or to install something. screen 2 me Using editor or compiling screen 3 me "Hack" ready to play during long compiles screen 4 me Terminal emulator running to host. (yup, lots of times I download software to the PC/AT to compile it there during development - it compiles MUCH faster than the (unamed) super-mini compiles it) What am I missing? To my mind, nothing, really. I felt some amount of mouse envy a year ago. So I got one, wrote a mouse driver with pop up menus, and tried using it with the editor, spreadsheet, shell, hack, etc. Guess what - cobwebs all over the poor little thing now. I found it was only usefull with "PAINT" programs. If I could change anything, I'd go for a display with (more) lines of 132 columns. It seems to me that the memory (screen and program) necessary for a real window system is being poorly utilized for a great percentage of us. Even if the display hardware doesn't support multiple pages, the kernel could simulate this by keeping the pages in kernel memory and just block moving them out to the screen on a session change. My point is that while huge displays and window systems are fun, for most of us they are an unecessary waste of (money, CPU cycles, memory). One page on one screen wasn't enough, to be sure, but the "in vogue" solution of large displays and massive window systems is overkill. Rick Richardson, PC Research, Inc. (201) 922-1134 ..!ihnp4!houxm!castor!{rer,pcrat!rer} <--Replies to here, not to homxb!!!
Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Posting-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!henry From: he...@utzoo.UUCP (Henry Spencer) Newsgroups: net.unix-wizards Subject: Re: UNIX Futures Message-ID: <6468@utzoo.UUCP> Date: Wed, 5-Mar-86 15:25:05 EST Article-I.D.: utzoo.6468 Posted: Wed Mar 5 15:25:05 1986 Date-Received: Wed, 5-Mar-86 15:25:05 EST References: <67@cstvax.UUCP> <257@maynard.UUCP>, <1199@ulysses.UUCP> Organization: U of Toronto Zoology Lines: 10 > It's also nice to be able to stop things some times... The ability to stop processes is quite independent of all the other goo in job control, in concept at least. Adding something like this to SysV would probably be a five-minute hack (given sources!). You need to have another context around before you can actually do anything to stopped processes, but a window system is just right for that. -- Henry Spencer @ U of Toronto Zoology {allegra,ihnp4,linus,decvax}!utzoo!henry
Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!watmath!clyde!burl!ulysses!allegra!mit-eddie!genrad!panda! talcott!harvard!seismo!mcvax!enea!chalmers!myab!lars From: l...@myab.UUCP (lars) Newsgroups: net.unix-wizards Subject: Re: UNIX Futures Message-ID: <137@myab.UUCP> Date: Sat, 15-Mar-86 23:47:40 EST Article-I.D.: myab.137 Posted: Sat Mar 15 23:47:40 1986 Date-Received: Wed, 19-Mar-86 05:30:18 EST References: <67@cstvax.UUCP> <2864@amdahl.UUCP> Reply-To: l...@myab.UUCP (lars) Distribution: net Organization: Myab Gothenburg, Sweden Lines: 39 >In article <6...@cstvax.UUCP>, sc...@cstvax.UUCP (Scott Larnach) writes: >> >> The one and only real thing which bugs me about system V is the >> total lack of job control. >> >> Come on, AT&T, give me job control and I'll be a believer. > >Uhh, excuse me, but what about shell layers ( shl ) ? It does not >give you job control, per se, but it does allow you to break out >of a foreground process, to 'do something else'. We have ported 'csh' to SVR2 using shell layers. Result: A program started with '&' runs in background. If it want to do tty input, it will hang until put in foreground. A background program can be put in foreground with the 'fg' command. A forground program can be stopped with the '^Z' key. Csh will then type 'blocked' and not 'stopped', because only tty io is blocked and the program continues. Typing 'bg' to a 'blocked' will enable output to tty for the blocked program. A maximum of 7 programs can be executed simultaneously. A program cannot catch '^Z'. This implies that 'vi' doesn't redraw its screen. Csh reads 'type ahead' characters back from a blocked sxt and inserts them into the current input line. Otherwise, type ahead wouldn't have worked. Despite these limits, it is much better than 'shl' (which creates one new 'sh' for each "job"). -- ______________________________________________________ Lars Pensjo {decvax,philabs}!mcvax!enea!chalmers!myab!lars
Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Posting-Version: version B 2.10.2 9/18/84; site psivax.UUCP Path: utzoo!watmath!clyde!cbosgd!ihnp4!hplabs!sdcrdcf!psivax!friesen From: frie...@psivax.UUCP (Stanley Friesen) Newsgroups: net.unix-wizards Subject: Re: UNIX Futures Message-ID: <1072@psivax.UUCP> Date: Wed, 19-Mar-86 11:02:32 EST Article-I.D.: psivax.1072 Posted: Wed Mar 19 11:02:32 1986 Date-Received: Fri, 21-Mar-86 07:18:06 EST References: <67@cstvax.UUCP> <2864@amdahl.UUCP> <137@myab.UUCP> Reply-To: frie...@psivax.UUCP (Stanley Friesen) Distribution: net Organization: Pacesetter Systems Inc., Sylmar, CA Lines: 14 In article <1...@myab.UUCP> l...@myab.UUCP (lars) writes: > >A program cannot catch '^Z'. This implies that 'vi' doesn't redraw its >screen. > When this is fixed I will admit that shell layers are a workable substitute for full job control! What good does it do to stop a job if I cannot restart it transparently? -- Sarima (Stanley Friesen) UUCP: {ttidca|ihnp4|sdcrdcf|quad1|nrcvax|bellcore|logico}!psivax!friesen ARPA: ttidca!psivax!frie...@rand-unix.arpa
Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Posting-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!henry From: he...@utzoo.UUCP (Henry Spencer) Newsgroups: net.unix-wizards Subject: Re: UNIX Futures Message-ID: <6534@utzoo.UUCP> Date: Sat, 22-Mar-86 22:28:20 EST Article-I.D.: utzoo.6534 Posted: Sat Mar 22 22:28:20 1986 Date-Received: Sat, 22-Mar-86 22:28:20 EST References: <67@cstvax.UUCP> <2864@amdahl.UUCP> <137@myab.UUCP>, <1072@psivax.UUCP> Organization: U of Toronto Zoology Lines: 21 > >A program cannot catch '^Z'. This implies that 'vi' doesn't redraw its > >screen. > > When this is fixed I will admit that shell layers are a > workable substitute for full job control! What good does it do to stop > a job if I cannot restart it transparently? What good does it do to be able to stop and start jobs if every program has to know about it to redraw the screen? Also, what do you do about output from (say) grep, which prints output and terminates rather than sticking around to redraw the screen on request? The fact is, *both* job control and shell layers are brain-damaged. Both do the easy part of multiplexing -- centralized input administration -- without the hard part -- centralized output administration. Programs should not have to redraw the screen themselves, when they have done nothing to mess it up! Job control and shell layers are both cheap plastic imitations of real window systems. -- Henry Spencer @ U of Toronto Zoology {allegra,ihnp4,linus,decvax}!utzoo!henry
Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!watmath!clyde!cbosgd!ihnp4!cuae2!ltuxa!we53!wucs!nz From: n...@wucs.UUCP Newsgroups: net.unix-wizards Subject: Re: UNIX Futures Message-ID: <1524@wucs.UUCP> Date: Sun, 30-Mar-86 11:56:42 EST Article-I.D.: wucs.1524 Posted: Sun Mar 30 11:56:42 1986 Date-Received: Wed, 2-Apr-86 01:59:19 EST References: <67@cstvax.UUCP> <2864@amdahl.UUCP> <137@myab.UUCP>, <6534@utzoo.UUCP> Reply-To: n...@wucs.UUCP (Neal Ziring) Organization: Washington U. Engineering Computer Lab Lines: 55 Summary: job control has its place In article <6...@utzoo.UUCP> he...@utzoo.UUCP (Henry Spencer) writes: > > >A program cannot catch '^Z'. This implies that 'vi' doesn't redraw its > > >screen. A program can catch ^Z, by ``signal(SIGTSTP, stop_handler)''. Further, the program can also catch the continue -- which lets it redraw the screen or print a message or change its state or whatever. I have several programs which do both. > > When this is fixed I will admit that shell layers are a > > workable substitute for full job control! What good does it do to stop > > a job if I cannot restart it transparently? You can. > What good does it do to be able to stop and start jobs if every program > has to know about it to redraw the screen? Also, what do you do about > output from (say) grep, which prints output and terminates rather than > sticking around to redraw the screen on request? Since when does EVERY program have to redraw the screen? I stop and start compiles, makes, news-readers, mail, etc. and none of them do screen refreshes. > The fact is, *both* job control and shell layers are brain-damaged. Both > do the easy part of multiplexing -- centralized input administration -- > without the hard part -- centralized output administration. Programs should > not have to redraw the screen themselves, when they have done nothing to > mess it up! Job control and shell layers are both cheap plastic imitations > of real window systems. > -- > Henry Spencer @ U of Toronto Zoology Job control is a helluva lot more than a cheap imitation of a window system. It is a general method of allowing some user control of system features -- time sharing and resource sharing. Remember that ^Z is only a character hook to the rather general SIGTSTP signal! The ability to stop a process is a very nice features that is NOT unique to BSD Unix (TOPS-10 and TOPS-20 had it). Further, I think window systems are just fine, but they require VERY special hardware to give acceptable performance. Job control frees up system resouces by allowing processes to be swapped out. Window systems leave processes lying around, and clutter the system even more with a window managing process! The fact that a job can catch or not catch the SIGCONT as it pleases is a very useful FEATURE! I would be very annoyed if somebody put screen control into the kernel (!) and forces a screen update (expensive at 1200 baud) every time I jumped into and out of a process. Don't clutter this group with off-the-cuff opinions and snorts! Both job control and window systems have their place, and they can even work together. -- ...nz (Neal Ziring at WU ECL - we're here to provide superior computing.) {seismo,ihnp4,cbosgd}!wucs!nz OR n...@wucs.UUCP "You could get an infinite number of wires into this !*$$#!?! junction box, but we usually don't go that far in practice" -- Employee of London Electricity Board, 1959
Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Posting-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!henry From: he...@utzoo.UUCP (Henry Spencer) Newsgroups: net.unix-wizards Subject: to job control or not to job control (was UNIX Futures) Message-ID: <6571@utzoo.UUCP> Date: Mon, 7-Apr-86 17:41:22 EST Article-I.D.: utzoo.6571 Posted: Mon Apr 7 17:41:22 1986 Date-Received: Mon, 7-Apr-86 17:41:22 EST References: <67@cstvax.UUCP> <2864@amdahl.UUCP> <137@myab.UUCP>, <6534@utzoo.UUCP>, <1524@wucs.UUCP> Organization: U of Toronto Zoology Lines: 72 > > > ...What good does it do to stop > > > a job if I cannot restart it transparently? > You can. If it is prepared to be restarted, i.e. to redraw its screen. This is not what is usually referred to as "transparent", since every program has to know about it. > Since when does EVERY program have to redraw the screen? I stop and start > compiles, makes, news-readers, mail, etc. and none of them do screen refreshes. And therefore you lose their screen output when you restart them. This is a bug, not a feature. Agreed that sometimes redrawing the output would incur unneeded overhead when you don't particularly care about the output, but this is like saying that SVR0 doesn't incur the overhead involved in providing virtual memory -- yes, it's cheaper, but at the cost of not providing a valuable and important capability. > Job control is a helluva lot more than a cheap imitation of a window system. > It is a general method of allowing some user control of system features -- > time sharing and resource sharing. Remember that ^Z is only a character hook > to the rather general SIGTSTP signal! Name three other uses of SIGTSTP. > The ability to stop a process is a > very nice features that is NOT unique to BSD Unix... Agreed, it's not unique to BSD; V8 has it too, in a much cleaner form. Furthermore, it is a feature that has nothing much to do with the rest of job control. It's easy to envision putting it into a window system -- just have a way to stop all processes run from a particular window. Not send a signal to them, but simply freeze them instantly. This does mean you need to have another window so you can do something with them once they are frozen, but that's reasonable enough. > Further, I think window systems are just fine, but they require VERY special > hardware to give acceptable performance. I know people who would dispute this. That aside, though, cheap plastic imitations are usually cheaper than the real thing. You get what you pay for. > Job control frees up system resouces > by allowing processes to be swapped out. Window systems leave processes lying > around, and clutter the system even more with a window managing process! There is no obvious reason why a window system can't let processes be swapped out when they are stopped. Of course, it also gives you the freedom to let them continue running, if that is what you want. As for a window management process, once again you get what you pay for. Surely it is wasteful to have a shell cluttering up the system while you're using an editor, and hence Unix is inferior to a system with the command interpreter wired into the kernel. Right? > The fact that a job can catch or not catch the SIGCONT as it pleases is a very > useful FEATURE! I would be very annoyed if somebody put screen control into > the kernel (!) and forces a screen update (expensive at 1200 baud) every time > I jumped into and out of a process. It's a feature when you don't want to bother with the screen update. It's a bug when you want that screen update but can't get it. Especially when the only way to get it is to modify a tremendous pile of programs that otherwise wouldn't need that complexity. > Don't clutter this group with off-the-cuff opinions and snorts! Both job > control and window systems have their place... That is itself an off-the-cuff opinion, and one that I snort at. :-) -- Henry Spencer @ U of Toronto Zoology {allegra,ihnp4,decvax,pyramid}!utzoo!henry
Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!watmath!clyde!burl!ulysses!allegra!mit-eddie!genrad!decvax!decwrl! glacier!well!hoptoad!gnu From: g...@hoptoad.UUCP Newsgroups: net.unix-wizards Subject: Re: job control, scheduling, and signals Message-ID: <726@hoptoad.uucp> Date: Tue, 22-Apr-86 03:36:28 EST Article-I.D.: hoptoad.726 Posted: Tue Apr 22 03:36:28 1986 Date-Received: Wed, 23-Apr-86 23:53:54 EST References: <1097@psivax.UUCP> <198@desint.UUCP> <897@umcp-cs.UUCP> <205@desint.UUCP> Organization: Nebula Consultants in San Francisco Lines: 28 In article <2...@desint.UUCP>, ge...@desint.UUCP (Geoff Kuenning) writes: > In article <8...@umcp-cs.UUCP> ch...@maryland.UUCP (Chris Torek) writes: > > (It also seems to me desirable to allow processes to be marked as > > noncontextual. It is hardly worth restoring the full context of > > a `bc' session, especially at 1200 baud.) > > While I don't deny the pain of working at low baud rates (I had to dust > off my 300 modem the other day), I would hate to add another feature > to a system to handle a problem as obviously transient as this one... The obvious solution, rather than "marking" a process, is to let the process decide whether or not to repaint, and how much is worth redrawing. "Marking" a process as repaintable or not sounds suspiciously like the TopView "config" files that you need to build to tell it how brain damaged each application that runs under it is. Why not do it like everything else and hand the decisions off to the process itself, e.g. by a signal? (This also allows for novel decisions about repainting to be made by individual programs -- without modifying the job control code/shl program/kernel.) Sun used the same model when it came to window systems; if your window is resized or uncovered (or created in the first place), you get a signal, which you can ignore (most programs do), catch and notice the changed size (curses and such do this for you), catch and repaint (terminal emulators, Emacs, graphics programs that write to the bitmap, etc do). The decision is yours. -- John Gilmore {sun,ptsfa,lll-crg,ihnp4}!hoptoad!gnu jgilm...@lll-crg.arpa