UNIX as an alternative to networking.by Sadowski, Andrew
In the decades preceding the personal computer revolution, virtually all business computers were multi-user systems. They were large, expensive machines, usually requiring the presence of a full-time data processing staff to maintain the hardware and software and to supervise the system's use.
The PC, for all its power, is a single-user system, a drawback which manufacturers have attempted to overcome through the introduction of networking schemes. To those familiar with true multi-user systems, however, networking is at best a stopgap measure, and the variety of mutually incompatible networking methods currently on the market only exacerbates the problem.
Much has been written recently about the UNIX operating system, and how it appears to be providing businesses with outstanding multi-user, multi-tasking capabilities at a cost now often lower than that of networked PCs. In this article, the history and features of UNIX are examined, and the reasons it is likely to supplant networking over the next few years are discussed.
The Wall Street Journal Predicts UNIX Dominance
UNIX was developed around 1970 by Ken Thompson and Dennis Ritchie of Bell Laboratories and was first brought to public attention in 1974. For several years, it was available at little or no cost to academic and scientific institutions, a practice which led to its continued development and widespread acceptance.
According to various estimates, there were approximately 2500 UNIX installations world-wide in 1980, and by the beginning of 1984, that number had rown to about 100,000. The Wall Street Journal reported recently that, in 1988, there were roughly 700,000 UNIX systems installed, representing 5% of the market share. The clear leader was MS-DOS (the operating system used by IBM and IBM-compatible PCs), with 81% of the market share. However, quoting estimates from Sanford C. Bernstein & Co., the WSJ predicted that the UNIX market share will rise to 45% by 1993, topping the combined shares of MS-DOS and OS/2, the successor to DOS recently introduced by IBM and Microsoft.
What is UNIX?
UNIX is a multi-user, multi-tasking operating system. A computer installation running UNIX consists typically of a single computer, one or more printers, possibly one or more modems, and a number of terminals. A terminal is simply a combination of a keyboard and a screen, and one is required for each user.
Computer users who have experience only with PCs may have difficulty understanding how a computer can perform several jobs simultaneously. In fact, the simultaneity is an illusion. A very fast processor alternates quickly among various tasks, giving each user the impression that he or she commands the system's full attention.
It is among the functions of UNIX to:
* Allocate processor time and memory fairly among "simultaneous" processes;
* Maintain the file system, giving users access to only those files they are authorized to use; and
* Oversee the use of devices like printers and modems so they can be shared fairly and efficiently.
Cheaper than PCs?
The claim has been made that a UNIX system can be put together less expensively than a system of networked PCs for the same number of users. This claim rests upon two facts. First, hardware prices are falling rapidly. Especially with the advent of computers based on the Intel 80386 chip, the price of machines with the speed and power to run UNIX is no longer out of reach. Second, an incremental UNIX user needs only a terminal; but an incremental network user requires an additional PC.
For the sake of comparison, Figures 1 and 2 show the respective costs of assembling a system for five users, including two printers, tape backup, and emergency power supply, using UNIX and networked PCs. So that the two systems would have comparable performance, the same 80386- based server has been specified for both. For the networked system, Ethernet hardware was chosen running Novell software. The costs shown represent typical retail prices; there is considerable variation depending upon manufacturer, model, and vendor.
The comparison shows the cost of the network to be nearly 50% more than that of the UNIX system. These prices do not include cabling, which is typically much more expensive for networks than for UNIX systems. Also, the price difference becomes more pronounced as the number of users increases.
The User's Perspective
Suppose you approach a terminal connected to a UNIX system. If no one is currently using the terminal, the screen will be displaying the prompt:
If you type in your "user name," the name by which you are known to the system--conventionally your first name in all lower-case letters-- the computer will ask for your:
If you have entered a valid user name and password, you will then be "logged on" to the system. At that point, one of two things will happen, depending on how the system is configured. If it is a "turkey" system, whatever application program you are authorized to use will simply begin to run. You might find yourself directly in the word processing program, for example, or presented with a menu from which you would select the acounting module you wished to use; other users could be given different options. Limiting users to certain authorized operations provides advantages of simplicity and security.
Otherwise, you would find yourself able to type commands at the keyboard. This arrangement, which also exists under DOS, is perhaps suitable only for more sophisticated users, and it is possible to set up the systems so that only certain users have access to the command level, or "shell," while others are limited by means of the turnkey approach. It is even possible to admit certain users to the command level, but to limit the number of commands which they may use.
Those who feel comfortable working on the command level in DOS would have no trouble operating similarly in UNIX, although the command names in UNIX tend to be somewhat less obvious than their DOS counterparts. For example, the command to list the contents of a directory, DIR in DOS, is Is in UNIX. DOS translates all commands into upper case; UNIX distinguishes between upper and lower case, and uses lower-case letters almost exclusively for command names. Copying a file, COPY under DOS, is cp on a UNIX system, and the commands for deleting a file are ERASE and rm (for "remove"), respectively.
In addition, many UNIX commands come with options, allowing the user some control over how the command is to be executed. Options are normally specified by following the command with a hyphen and one or more letters indicating which options are being requested. So, the Is command with no options will simply list the file names in the current directory, while Is-I will show the listing in "long form," including data about ownership, permissions, file size, and the date and time of the most recent modification. In fact, the UNIX manual gives about 20 options for the Is command alone. This has given UNIX a kind of "alphabet soup" reputation, which is heightened by the fact that there are an enormous number of commands available in UNIX, far more than the average business user will ever be concerned with.
As in DOS, an application program is invoked simply by typing its name.
Because UNIX grew out of a research environment, some of its many features are not relevant to business applications. Others, however, are of great interest in commercial settings, and some of those are presented here. Note that all are standard features of UNIX, not optional add-ons.
Ownerships and Permissions
Every data file stored on a UNIX system belongs to one of the users of the system, and that user gets to decide who else may have access to it. This is done through a system of permissions, whereby each file carries a code indicating whether access is granted to the owner alone, members of a group (such as department or a task force), or all uses. Separate permission codes govern reading the file, writing to the file, and executing it, if it is an executable file.
With this flexibility, you could set up a situation in which, for example, customer account data could be changed only by people in the accounting department; it could be examined, but not changed, by people in the customer service department; and people in other departments would have no access at all.
In a UNIX system, all devices--hard disks, floppy disks, tape drives, printers, and modems--belong to the system as a whole, rather than to individual users. It is the responsibility of UNIX to make sure that the needs of the users are met in a fair, timely, and efficient manner.
Consider as an example the handling of printers. If a user requests that a file be printed, and if there is a single system printer which is currently in use, the print job will be placed on a queue, to be executed on a first come, first served basis. If there is more than one printer, the user can specify the destination for the job--say, the laser printer, or the wide-carriage printer. And finally, if there are multiple printers of the same type, the user can direct that the file be printed on the first printer of the specified type to be available.
It is not necessary for all terminals of a UNIX system to be connected directly ("hard-wired") to the computer. If the computer is equipped with a modem, users can dial in from anywhere in the world and have the same access to the computer that they would have if they were on-site. This can benefit companies with branch offices, people who work at home, and accountants who like to examine clients' books without leaving their own offices. Of course, remote access can entail certain risks, which leads to the next topic.
A properly installed and maintained UNIX system is quite secure. No users are admitted unless they provide valid user names and passwords; and once on the system, users can read, write, and execute only those files for which they have permission.
That having been said, however, it must also be said that a poorly maintained UNIX system can be full of holes. If there are user names that have been assigned no password, or an easily guessed password, or if users are in the habit of logging on to the system and then leaving their terminals unattended without logging out, it is then possible for unauthorized people to read, and even modify, sensitive data.
The need to take security precautions is greater when remote access is permitted. Some UNIX setups require a second password for modem logins. Should more security. be considered necessary, encrypting modems are also available.
Electronic Mail and Communication
UNIX has a built-in mail command. This enables users to send messages such as interoffice memos to each other. Further, if the system has a modem, it is possible to send mail to users on other UNIX computers over ordinary telephone lines. By setting up a table of system names and phone numbers on the sending and receiving systems (every UNIX system has a name), the computer will automatically call the remote computer and leave mail for the appropriate person. The two systems need not belong to the same company or be in any way related to each other. All that is necessary is that the appropriate table entries exist on both machines.
It should be noted that this is very different from the electronic mail facilities available to PC owners, which require the services of an intermediary, a kind of electronic postal service, which charges fees for its use. UNIX mail operates on a computer-to-computer basis, the only cost being the price of the telephone call.
UNIX mail also compares favorably in several respects with fax transmissions. First, UNIX mail is always directed to an individual user, who has sole access to the message. A faxed message, on the other hand, can be picked up and read by anyone. Second, since the sending computer must be known to the receiving computer, there is no way to send the kind of "junk mail" currently flooding fax installations. And, third, a fax transmission must convey not only the verbal contents of a message, but also its detailed physical appearance--that is, it treats text as if it were graphics. As a result, much more information needs to be transmitted, resulting in longer transmission times and higher telephone costs. On the other hand, UNIX mail is inappropriate for pictures and for documents that need to be transmitted with their signatures intact.
While the mail command is suitable only for files that consist of text (so-called "ASCII files"), there is also a command enabling the electronic transfer over phone lines of arbitrary data files.
UNIX has a feature called cron, which permits jobs to be performed automatically according to a schedule. If you want to do a tape backup every Friday night at 11 P.M., for example, you can make the appropriate entry in the cron table and the system will take care of it for you.
This feature can also be helpful by scheduling certain time-consuming procedures to be executed at night so that they do not place any demands on system resources during the work day. Also, remote transmission of mail and other data can be scheduled to take advantage of low off-peak telephone rates.
UNIX has been described as a multi-tasking system because it can handle not only multiple users but also multiple jobs assigned by the same user. One way of accomplishing this is by using the scheduling feature described previously. If you have asked the computer to print your appointments for the next day at 4:30 every afternoon, the task will be performed regardless of, and without interfering with, any work that you happen to be doing at your terminal at 4:30.
Background processing can also be requested directly. Ordinarily, if a command is typed into a UNIX system, the machine will proceed to execute it, and the terminal will not be ready to accept another command until the execution of the first is completed. However, any command can be followed by an ampersand (the "&" character), which instructs the computer to carry out the execution "in background." This means that the user will be free to use the terminal for other tasks, and he or she will be notified when the first command is finished.
Of course, not all programs are amenable to background execution. It makes no sense to attempt to operate a word processor in background mode, since its execution requires keyboard input. Suppose, however, that you have a program which assembles large quantities of data, does a lot of mathematical calculations, and finally produces a report. By requesting that the processing be done in background, you can have your report prepared and printed while still using your terminal to do other things.
UNIX was originally developed to run on minicomputers. However, its basic design is so simple and effective that it has been successfully transferred ("ported") to machines ranging from micros to mainframes. In practical terms, this means that, with some planning, a business that buys a five-user UNIX system can move up to a system supporting hundreds of users without any modifications to software or data--and without having to buy a computer of the same brand as the original one.
Such considerations are very important these days, since falling prices have made hardware costs a relatively small fraction of total system outlay. With the bulk of the investment being in software, training, and data entry, the ability to transport everything to a larger system can represent an enormous saving when the time comes to expand.
Incorporation of DOS
Because of the popularity of DOS systems and the wide variety of available DOS software, several UNIX distributors have designed ways of running DOS software under the aegis of UNIX. This is done essentially by running DOS as a UNIX process, and then having the DOS process run the desired application.
It is also possible to use DOS computers in place of some or all of the user terminals by means of inexpensive and widely available terminal emulation software. In this configuration, users have the choice of using their DOS machines as either stand-alone PCs or UNIX terminals, and can instantly switch back and forth between these options.
This setup can be attractive to companies that have already made an investment in DOS machines. If personnel are already trained in single- user DOS applications, such as word processing and spreadsheeting, they can continue to run these programs on their PCs. When it is time to work on the multi-user applications, they simply switch their PCs to terminal mode, and they have full access to the UNIX system.
Software Available under UNIX
The variety of software available under UNIX cannot yet rival that which exists for DOS machines. However, the amount of UNIX software is quite substantial, and manufacturers have been scrambling to gain a market share in the rapidly growing UNIX arena in terms of both original software and the conversion of popular DOS programs.
The pricing of multi-user software can be a tricky affair, as demonstrated by the current confusion over licensing fees for network- based programs. Developers of UNIX software typically solve this problem by pricing their products on a sliding scale which depends on the size of the target computer. This means that a program for a small UNIX computer (say, three to six users) will cost somewhat more than the DOS version of the same program, while the version designed for a computer that can handle 100 users will cost many times more. Of course, the per-user cost can be expected to be lower than that of the single-user version.
There are a large number of packages designed for specific vertical markets, such as law offices or medical practices; the following is an overview of UNIX software for the most popular general business categories.
* Word Processors. There exist both original UNIX programs, such as CrystalWriter, and recently released UNIX version of popular DOS programs, like Word Perfect.
* Spreadsheets. Several are available; most are Lotus 1-2-3 look- alikes, and 1-2-3 itself is in the process of being converted for UNIX use.
* Databases. There are a great number of them, and UNIX is particularly well suited for their use. Major players include ACCEL, INFORMIX, INGRES, PASSPORT, FOCUS, PROGRESS, and SYBASE, and intense competition is leading to rapidly falling prices.
* Accounting Systems. This is also a very competitive field. The use of databases to construct customized accounting systems has led to a decline in the popularity of the classic off-the-shelf accounting packages. Names include REALWORLD, CONETIC, OPEN SYSTEMS, and APPGEN. The latter is particularly suitable for businesses for which off-the- shelf software is not available, in that software can be custom-written in the APPGEN language and easily integrated with the standard (or modified) accounting package.
* Office Automation. These packages, which vary tremendously in size, sophistication, and power, offer integrated collections of popular utilities. UNIPLEX, for example, ofers word processing, a Lotus- compatible spreadsheet, a database system, and utilities for time scheduling, project management, facilitated electronic mail, and more. Other products include ALIS, SAMNA PLUS, R OFFICE+, and MASTERPLAN; prices range from several hundred to several thousand.
Readers interested in following the rapidly growing area of UNIX software would do well to consult publications like UNIX World and UNIX Today.
There are certain maintenance tasks that need to be performed on a UNIX system, such as backing up data, adding or removing authorized users, informing the system about the addition of devices such as new printers or terminals, and making sure no one is abusing the system, say by cluttering up the disk with large, unnecessary files. For security reasons, it is best that the average user not have the power to do all of these things, and it is customary to designate a system administrator, or "superuser," to handle such duties.
In very large UNIX installations--say, several dozen users--system administration can be a full-time job. However, this is not the case in small- to medium-sized businesses, where typically the system administrator will be one of the ordinary users; when sensitive tasks need to be performed, he or she will use a special superuser password to obtain the necessary additional privileges. As the superuser has full control over the system, the secrecy of this password is essential to system security.
In some cases, businesses prefer not to get involved in system administration, and enter into an agreement with a consultant or vendor to perform these services. As the work can usually be done off-site over telephone lines, this need not be an expensive option.
The data processing needs of businesses commonly require multi-user solutions. However, no true multi-user operating system was available to small- and medium-sized businesses until low-cost, high-speed hardware made UNIX an affordable option.
Now that a UNIX system can end up costing significantly less than a system of networked PCs of comparable size and speed, it is all but certain that UNIX will dominate the business computer market in the next few years.
The CPA Journal is broadly recognized as an outstanding, technical-refereed publication aimed at public practitioners, management, educators, and other accounting professionals. It is edited by CPAs for CPAs. Our goal is to provide CPAs and other accounting professionals with the information and news to enable them to be successful accountants, managers, and executives in today's practice environments.
©2009 The New York State Society of CPAs. Legal Notices
Visit the new cpajournal.com.