Auiucdcs.125 net.general utzoo!decvax!duke!uiucdcs!jerry Mon Aug 10 22:11:08 1981 The etymology of dsw The etymology of dsw has long been a cause of sleepless nights for persons who read the Unix manual description of the command. A number of years ago at a Usenix conference before Usenix was called that (the good old days), I managed to hear a story describing the etymology of dsw from one of the Unix inner circle. Dsw is truly a carryover from the ancient past, according to this story the command originated back in the time when a sequence of PDP 7's and 9's were the implementation base. At the time dsw was written, no terminal was available for use so Unix communicated with the developers via the console switch register. Dsw was one of their tools for manag- ing the file system since the basic inode structure had been laid out. Its task, as in version 6, was to delete files. The method of refering to files was slightly different in that inode numbers were directly used as file names. To delete a file, dsw was loaded into memory and the appropriate inode number entered into the switch register. Therefore dsw stands for Delete via SWitch register. On a more serious vein, the lack of diagnostics has long been a problem with Unix systems. The reasons for this are largely historical. First, Unix originated in the days of the Teletype, ASR 37's were the original preferred terminal with ASR 33's going to the unfortunate remainder of the Unix users. Most people who worked for an extended period with such devices can probably recall the initial pleasure of their first DECwriter terminal session. At 150 or 110 baud you simply did not want the noise and time delays caused by lengthy diagnositics. Secondly, while Ken Thompson and Dennis Ritchie designed Unix and the system interface, a much larger group developed the user command interface. Users of the initial Unix system would feel the need for a particular facility and so they would try to provide it. There was no project manager to encourage coherence of command structure and a good novice interface. Accordingly, commands were named by their authors and typically a command not only provided no diagnostics for the user, it also contained little or no documentation internally for system program- mers assigned to maintain the software. Given such a development environment, it is quite a tribute to the work of Ritchie and Thompson that it spread outside the initial research group. A third reason for the poor diagnostics of most Unix commands was the lack of an easy method to write error messages on the error file descriptor. No programmer wanted to send extraneous information down standard output since the command might be used as a filter, and printf only worked with one file descriptor at a time. A programmer was left to using the write system call directly and counting the number of char- acters in the error message that he or she wished to print. The development of the standard input output library by the people at Research Unix changed this, and so, version 7 had quite a great deal more diagnostic information. We here at the University of Illinois, Department of Computer Sci- ence have seen much of the problems which Unix provides. For example, rm * has long been a concern but changing the command to ask for permis- sion to delete a large quantity of files meet with large scale user opposition. The system programmer finally answered some of the objec- tions by allowing each individual user to set an environment string to indicate whether or not he or she wished to be protected from them- selves. While our secretaries occasionally have had problems using Unix, they have tried several times (unsuccessully) to get the depart- ment to obtain a Unix system for their exclusive use. Jerry Wall Unix system administrator University of Illinois, Department of Computer Science ----------------------------------------------------------------- gopher://quux.org/ conversion by John Goerzen of http://communication.ucsd.edu/A-News/ This Usenet Oldnews Archive article may be copied and distributed freely, provided: 1. There is no money collected for the text(s) of the articles. 2. The following notice remains appended to each copy: The Usenet Oldnews Archive: Compilation Copyright (C) 1981, 1996 Bruce Jones, Henry Spencer, David Wiseman.