Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!mnetor!seismo!cmcl2!husc6!ut-sally!std-unix From: std-unix@ut-sally.UUCP (Moderator, John Quarterman) Newsgroups: mod.std.unix Subject: Re: job control Message-ID: <5990@ut-sally.UUCP> Date: Sat, 11-Oct-86 21:27:08 EDT Article-I.D.: ut-sally.5990 Posted: Sat Oct 11 21:27:08 1986 Date-Received: Sat, 11-Oct-86 23:58:32 EDT References: <5986@ut-sally.UUCP> <5932@ut-sally.UUCP> Organization: IEEE P1003 Portable Operating System for Computer Environments Committee Lines: 41 Approved: jsq@sally.utexas.edu From: guy@sun.com (Guy Harris) Date: Sat, 11 Oct 86 02:49:48 PDT > "It" is the "virtual console" feature found in most PC-based UNIX > implementations. This does rely on memory-mapped video, but character- > mapped terminals work as well as bit-mapped ones. No, you don't need a bit-mapped display to do windowing, but I presume most people already knew that. Convergent Technologies, for instance, has a windowing scheme on their PT terminals. It's not even a "virtual console" scheme; you can see parts of several windows, if you want. This sort of windowing mechanism doesn't even necessarily require a memory-mapped screen; it merely needs a way to redraw a window when it moves to the front. Mark Horton's earlier message describes a window manager for dumb terminals; it even permits more than one window on the screen. > A process trying to write to a non-current virtual console will (fill > up some clists and then) block. A process trying to read the keyboard > will block until the user switches to its console and types something. > This is all completely invisible to user programs; they think they're > dealing with a perfectly ordinary 24x80 terminal. No SIGTSTP, no window > size ioctls, etc. There's nothing particularly special about all this; other window systems do the same thing. Virtual consoles are just a special case of a window system where all windows cover the full screen. As for the window size "ioctl", consider this: any program that thinks it's always dealing with a "perfectly ordinary 24x80 terminal" is going to be quite surprised when run on an Ann Arbor Ambassador with 60 lines. Programs should not make assumptions like that. Given that the program will then have to query "termcap" or "terminfo" to find the size of the screen, it's not much trouble to have the routine that reads in the "termcap" or "terminfo" entry check what the window size "ioctl" says and only use the value in the entry if the window size is 0x0 (i.e., not specified). That's what Sun's "termcap" code does. Volume-Number: Volume 7, Number 50