Path: utzoo!utgpu!news-server.csri.toronto.edu!bonnie.concordia.ca!uunet!snorkelwacker.mit.edu!usc!ucsd!dog.ee.lbl.gov!nosc!crash!pnet01!cwr From: cwr@pnet01.cts.com (Will Rose) Newsgroups: comp.os.minix Subject: Elvis and SIGALRM Message-ID: <7130@crash.cts.com> Date: 22 Jan 91 07:16:01 GMT Sender: root@crash.cts.com Organization: People-Net [pnet01], El Cajon CA Lines: 30 Elvis (and vi) use SIGALRM to cope with the ESC character, which may be either a mode switch or the start of a terminal escape sequence. (Since escape seqences are generated by a single keystroke, they arrive quickly. If ESC isn't followed by anything for, say, one second then it's assumed to be a mode switch.) It looks as if Elvis getting an alarm when it's not expected, and is failing to catch it. Elvis then dies, and the user is left with a tty in raw mode. (See Rochkind, Advanced Unix Programming, p. 220 et seq.). Why this should be so isn't clear, except that programs on the borderline of time and space behave oddly. Do you have enough main memory for all the processes running, and does each program have enough stack space? When compiling Elvis 1.3 under 1.5.10 I got a binary that almost worked, but which actually crashed and dumped core when I entered any character. If you've rebuilt Elvis, you may be facing a similar weird situation. Good luck - Will ----------------------------------------------------------------------- "You think that your career | Will Rose will suffer if Dr. Kenworthy | learns you have the poisoned | UUCP:{nosc ucsd hplabs!hp-sdd}!crash!pnet01!c corpse of our fiancee in the | ARPA:crash!pnet01!cwr@nosc.mil ice box?" | INET:cwr@pnet01.cts.com Evelyn Waugh, "The Loved One" | UUCP: {nosc ucsd hplabs!hp-sdd}!crash!pnet01!cwr ARPA: crash!pnet01!cwr@nosc.mil INET: cwr@pnet01.cts.com