In the December 1989 issue, in anticipation of the UNIX-capable TT's release, we asked ST-guru Dave Small to take our readers on a tour through the complex world of UNIX. Part I covered the basics of UNIX file structure and several important UNIX concepts. Part II discussed such UNIX niceties as the Root and oddly-named commands. Part III covered the concept of pipes in UNIX and its wonderful ability to easily redirect output. In this, the fourth and final installment, Dave takes a look at USENET and X-Windows.
One rather eerie aspect of UNIX in terms of UUCP and USENET is phone dialing. Typically, you want to dial other UNIX computers in the middle of the night, since phone rates are lowest then and the other computers are least likely to be busy. Yes, this means most UNIX systems stay up all the time, until they either crash or (better) are taken down for preventive maintenance.
It should be an exciting new decade for Atari users.
A program called "cron" worries about dialing times and any other regularly scheduled tasks. Cron looks at a table, called a crontab, which tells it when to do what. And typically, sometime early in the morning, cron calls up ULCICO (you don't want to know what it stands for), a program that calls the other UNIX machines in your area and exchanges USENET and mail with them.
It's kind of strange to be working in the wee hours of the morning and listen to the UNIX machine dialing other computers all by itself, its hard disk muttering not-so-quietly after each call, as though digesting the information. It makes one think that soon, a conspiracy of UNIX machines will arise...
Cron also does stuff like end-of-week cleanups, system scheduling, and anything else you can dream up to make it do. It can even remind you to send in your taxes on April 15 if you'd like. No kidding.
As an example of a truly useful cron application using UNIX tools, I managed to whip up a utility that scans my USENET feed each night for the word "Spectre," and mails me each note that contains it - sort of weeding them out of the megabytes of USENET data. Otherwise, I'd miss them; I'm low on time to be scanning even the comp.sys.atari.st area for news on Spectre. This scanning is done for me automatically at 5:15 each morning, following the morning's phone calls - all while I'm sleeping.
Something you may have heard a lot about in relation to UNIX is X-Windows. Atari's new TT is listed as having X-Windows.
First of all, X-Windows is not a windowing system, like GEM on the ST. X-Windows is simply a standardized way for a program to communicate with a screen (the ST has a close analogy in VDI.) X-Windows doesn't say if you have drop-down menus, pull-down menus or even menus at all - it just says "draw a line from here to there," "draw some characters" and so forth.
The neat thing about X (as it's often abbreviated), is that any screen running it can talk to any program running X and put something meaningful on-screen. It's a good attempt at being device independent - color or monochrome monitors of different resolutions work pretty much equally. X also typically supports a three-button mouse, which takes some getting used to.
The interface that's piled on top of X-Windows can be anything. You could put the Mac interface on top of it (careful on the legalities), GEM, Windows from the IBM world or whatever.
X-Windows is the moral equivalent of the cable to the monitor. It just gets whatever you want displayed to the screen. It's up to the system designers to design that "whatever" operating system and up to the programmer to use that system in their program - say, a "file-sector call" such as the one STs use.
Atari has made no announcement about what it's putting on top of X-Windows. I have a small bet they'll use GEM, but no one knows.
Hope this puts the X-Windows announcement in perspective. And by the way, I've worked with two separate X-Windows-based setups in the last year and I wouldn't inflict either of them on any beginner computer user. GEM is far more friendly.
What's There To Do Under
If you're looking for applications programs like word processors and spreadsheets and games in UNIX, you'd better forget it for a while. UNIX is only now getting super-popular in places other than highbrow engineering labs and ultra-computer centers. It was very big news fairly recently when WordPerfect announced it was coming out with a UNIX version!
UNIX is loaded with high-priced engineering stuff, developed for all those Sun and Apollo and HP workstations that run UNIX in a professional environment. So, if you need to figure strain on a crossbeam so many feet wide supported with #9 bolts, have I got a deal for you!
On the other hand, just playing with the present UNIX utilities is a lot of fun and very "educational." This means, keep lots of backups and on tape or floppy, too - not on another part of the hard disk, which you will, sure as daylight, blow away a few times while learning.
If you're new to the UNIX environment, it'll take you a while to get your feet under you and be comfortable with it. One very valuable resource is any book on UNIX; you'll find countless examples of things you wouldn't think to do yourself and can use in the future.
You'll not find much "classic personal computer stuff' on a UNIX machine. There just isn't that much. It's going to be 1985 and the ST all over again - but with the advantage that software from other UNIX machines can be ported to the Atari very quickly, because the port is so easy under UNIX. (Often, it just requires you to move the source code to the Atari machine and recompile it - and you're done. It's that easy.)
A Developer's Dream
UNIX is a developer's environment. It's loaded for bear in terms of C-language development; there are utilities on top of utilities in there, often found nowhere else. There's a superb editor, called EMACS (which has found its way to the Atari world), there are excellent fast compilers, debuggers, decompilers, tracers, etc. Many, many companies develop on UNIX machines, then do their testing on the final-destination machines, because the UNIX development tools are so good.
Also, UNIX is cross-breeding into other systems, because C, the language of UNIX, is going so many places. Hence, the "standard C I/O Package" (stdio) is on many non-UNIX computers, supporting C there (on the ST, too). Many UNIX ideas, like the MAKE utility, are on the ST and other machines.
your UNIX machine
dialing other com-
puters all by itself.
And let's be fair. Things like subdirectories - well, UNIX predates IBM/MS-DOS, and it's a pretty easy thing to figure out where MSDOS got pipes and redirection. UNIX is the root of many things in the industry. The old saying says, "steal from the best"; that's why a lot of the computer industry uses UNIX one way or another.
I hope you've enjoyed this overview and I hope it's given you some idea of the overall picture. Still, there's so much I haven't covered. But I don't want to overwhelm you; I want to give you a taste of UNIX, not enough to give you indigestion. Believe me, UNIX is overwhelming to a beginner; there are so many commands and so few overviews of what they're all for, which is one of the things that prompted my tour in the first place.
X-Windows is not a windowing system, like GEM on the ST.
The official System Five manuals are atrocious, so run, don't walk, to your local bookstore, shop the UNIX books and find a couple that agree with you. Get ones that start you out as a beginner and walk you through things. The best I've seen is "Life With UNIX." Another good one is "Unix System Administration," which talks about many of the essentials of being a system administrator - and if you own a TT with UNIX, you'll be the administrator all the sudden, and are expected to know enough to handle many intricate duties.
UNIX is completely new to most Atari people. The ST is getting a little grey around the temples; it came out in 1985, remember. Five years is a long time in this industry, and it's had no big redesigns since, just various tweaks and new packaging. The Mac came out in a year earlier and now we have the Mac IIcx.
It's exciting to open up a completely new world to people, and UNIX is a very stable, mature environment, with excellent development tools. But I wonder - tools for the new ST were slow to come in 1985; developers often had no tools for a given area. This greatly slowed ST software development. And after all this time, the tools still aren't that great. Yet Atari developers did produce programs like Dungeon Master, the best walk-through-a-dungeon game ever written, Tempus and Flash. Given tools like those that are in UNIX, imagine what they'll come up with in the future. (And, of course, the UNIX development environment can be instantly applied to the ST. speeding development there greatly. So, the TT should help the ST as well.)
Atari is, for the first time, unleashing a very powerful operating system at a very low price on a pretty high-powered machine. It's going to be a great experiment, though I'm not sure I'd like to be in Atari's Tech Support staff when it hits.
It should be an exciting new decade for Atari users! I'll be seeing you there - and hopefully, on USENET.
Contributing Editor Dave Small is one of a small circle of ST gurus who have helped to make the ST as popular as it is. Dave has been a pioneer in developing Macintosh emulation on the ST, culminating with the release of his latest triumph, Spectre GCR.