Unix Review Interviews Ted Dolotta and Heinz Lycklama from Interactive Systems Corporation (1984)
They discuss PC/IX, the first official port of Unix to the IBM PC
from the June 1984 issue of Unix Review magazine
Interview Ted Dolotta
It’s a sunny day in Santa Monica at the Interactive System Corporation’s headquarters, where Ted Dolotta, Senior Vice President of Technology, talks with UNIX REVIEW about PC/IX, Interactive’s port of UNIX to the PC-XT commissioned by IBM and given IBM’s official blessing.
REVIEW: What is PC/IX?
Dolotta: PC/IX is an implementation of AT&T’s UNIX System III on the IBM PC. It presents the user and the programmer with the same interface as System III with the obvious hardware limitations and differences. And, it has some additional features — such as the Interactive editor, changed to make good use of the PC keyboard and display — and some other improvements to the user interface we have found useful. It also has some internal, invisible-to-the-user kernel differences to make it run better on the PC. But as far as the user is concerned, it is for all intents and purposes System III on the PC.
REVIEW: It has System III system calls and such?
Dolotta: Absolutely.
REVIEW: If you wrote, for example, a device driver under System III on other hardware, will it run under PC/IX?
Dolotta: To the extent that the device can be attached physically to the PC, yes.
REVIEW: In a demonstration before this interview, I saw PC/IX come up in multiuser mode, and yet, of course, there is only one keyboard attached. Why?
Dolotta: The PC is a personal computer. That is point number one. Point number two is that the PC CPU is an 8088, which does not offer memory protection. To suggest that it is a good idea for more than one user to use it in general would be dangerous. And lastly, there was the issue of licensing: the system is sold as a single-user system.
REVIEW: Are there extra slots for other RS-232 ports?
Dolotta: The answer is yes, you can attach another terminal to it, but one would be doing that at one’s own risk. The system is sold by IBM, and if you read their general information manual, PC/IX is described as a single concurrent user, multitasking system.
REVIEW: What makes PC/IX seem so fast?
Dolotta: The terminal interface is not standard RS-232, but rather writes directly to the display memory. So, when a user issues a command nothing much seems to happen at first, and then the whole screen suddenly fills.
Also, we have implemented contiguous files. All object code for the system resides in contiguous files, so that an exec gets the file all at once — which helps performance a great deal. User files are also contiguous — to the extent they can be.
The implementation has floating point emulation, but can make use of a 8087 chip if the chip is there. Whether the chip is there and is to be used is a run-time decision, and does not affect compilation — the code is the same. The first attempt at using floating point traps into a routine that determines whether the co-processor is there or not, and thereafter (if it is not) the code is interpreted. But if the co-processor is there, floating point instructions are executed directly, without being trapped.
DISK REQUIREMENTS
REVIEW: What is the disk size on the PC?
Dolotta: The PC disk holds 10 MB. You must have at least one, but you can have two. This is not a floppy-only system.
REVIEW: Your back up media is...?
Dolotta: Floppy disk.
REVIEW: How many floppies does PC/IX require?
Dolotta: Nineteen diskettes.
NETWORKING
REVIEW: Let us now turn to networking considerations. Does uucp exist on PC/IX?
Dolotta: Yes. It uses an RS-232 port.
REVIEW: But you are not supposed to hook a terminal to that port?
Dolotta: No. The lack of memory protection makes simultaneous use dangerous, and I would seriously advise people debugging C programs simultaneously not to do so.
REVIEW: What about SNA, so that PC/IX would be able to call up “Big Blue”?
Dolotta: At this point, that just is not quite part of the plan.
REVIEW: Ethernet?
Dolotta: No, although there is obviously nothing to keep others from developing code that would provide these facilities on the PC.
I should point out that there is a document provided to every licensee called, “How to Write Device Drivers for PC/IX.” So the fact that those facilities are not a part of the initial offering by IBM is not to say that they cannot be provided later by somebody else.
REVIEW: The PC seems to be a potential candidate as a diskless workstation, with one PC having the hard disk option and other PCs hanging off of that.
Dolotta: Remember, you are talking about the PC, which is a personal computer. In theory, it is possible to connect a PC as a workstation to a multiuser system, but not in the current implementation of PC/IX. It requires at present a 10 MB fixed disk.
REVIEW: Your mention of the device driver tutorial brings up the question about what you have done to System III documentation. The manual, I understand, is not online?
Dolotta: That is correct. It normally does not exist in an online form, although getting it there is obviously no big deal.
REVIEW: What revisions were made to the basic UNIX System III Manual set?
Dolotta: Basically, the user manual is much like the traditional UNIX User’s Manual in the small, 6-inch by 9-inch form. The only way you will immediately observe it to be different from the Bell System manual is that it comes in a loose-leaf binder as opposed to a comb binder. However, it has been pored over and scrutinized — quite a few errors, inaccuracies and inconsistencies have been eliminated, and it is more complete. It also has more examples. But if you look at it, you will have no problem recognizing the standard UNIX System III manual style.
Supplemental documentation consists of four manuals. One is the general information manual, which is an overview and synopsis of facilities.
SYSTEM MANAGER’S GUIDE
There is also the Systems Manager’s Guide, which Bell’s versions of UNIX never had — and Interactive’s always had — a manual for whomever takes care of the system: how to install it, all the housekeeping tasks that you do with the system. It has been almost totally rewritten with the single-user system in mind.
Just to give you the flavor of it, it has several pages of definitions and describes privileged users, installation procedures, system startup, shutdown, accounts for users, tailoring the user environment and the queueing system.
That is the one thing we did add: the general purpose queueing system for printers, other devices or networks. It’s a much more general solution than you’ll find in System III. There are also sections on file system backup, creating new file systems, file system integrity, configuring the system and optimizing it, and interfacing terminals and modems. There is a section on configuring auto-dialers and a section on the file system check program, fsck.
REVIEW: Is it different from Kowalski’s article on using fsck?
Dolotta: Yes, we have improved that significantly. Using fsck is a much, much more automated thing. Very seldom is any user involvement required. And there is also the article I mentioned earlier on how to write device drivers for PC/IX, with plenty of examples, and a uucp installation guide.
There are two other documents. One is called the Programmer’s Guide, and one called the Text Processing Guide.
REVIEW: Are these not just the Bell documents warmed over?
Dolotta: Well, they are in many instances parts of the same documents, but they have been significantly revised, bringing them up to date and making them more consistent. There are articles on C programming for the PC/IX, the C Reference Manual and Assembler Manual, debugging aids, make, SCCS, lex, yacc, awk — all those. There is also the curses document.
The Text Processing Guide contains all the text processing documentation you need in System III for using nroff, troff, etc.
There are three new documents, one a beginner’s tutorial for PC/IX that is about 80 pages in length. There is also the INed Reference Manual and a document called “An Introduction to Text Processing on PC/IX.”
It is a very simple introduction to nroff and the mm-macro package for creating simple documents targeted for the PC/IX, and happens to be by design the only document not typeset, but rather run off on a PC printer. It is a short document that lets people get off the ground quickly and start formatting text.
These are the main documents. In addition there is a classic little eight or 16 panel fold-out mm reference and a plasticized keyboard template.
REVIEW: You mentioned curses, the package for cursor control and screen optimization. I noticed termcap is also in your port. Why?
Dolotta: They are there because the perception was that people would be interested in using them and it was not very difficult to put them in — so we did. As a general philosophy, we had no problem adding as a superset things we had available and that we perceived as useful, and so some of the Berkeley file system robustness is in the system.
REVIEW: The fast file system?
Dolotta: Not the fast file system. Just the re-ordering of writes to insure better reliability of the file system. Basically, we had no reason for not adding things except availability of resources and our desire to get the product out in time.
REVIEW: Are there any missing System III utilities?
Dolotta: Except for tar and a small number of device drivers, I really can’t think of anything significant that is missing.
REVIEW: What other Interactive enhancements have been made?
Dolotta: In addition to INed, our screen editor, we have replaced the cu program by our own program called Connect. The Connect program gives us a more general and more robust product. In addition to ls we have an li command, which is a Berkeley-style listing of directory contents and a number of other things of that nature, such as the ability to deal with a color monitor.
REVIEW: Is that an option that you can purchase from IBM or is that a purchase from another vendor?
Dolotta: IBM sells color monitors, as far as I know.
REVIEW: What about aids for backup. The dump and restor programs work with floppies. The same old dump and restor?
Dolotta: No, a more intelligent one.
REVIEW: Can you restart in, say, the middle of a dump on the fifth diskette?
Dolotta: Yes, I believe you can.
REVIEW: Is your version of mm stripped of comments?
Dolotta: I’m not sure I understand the question.
REVIEW: John Mashey put comments throughout the mm macros. However, as he said at a local Uni-Ops meetings, they were stripped out, condensed and have never seen the light of day.
Dolotta: If you get source, you get the whole thing. If you just get object, you get the condensed version.
REVIEW: So this is the condensed version of the mm macros?
Dolotta: It is not only condensed but it is one that does not insist on putting “Bell Laboratories’ on top of every letter, etc. It has been generalized so it is no longer Bell System specific, unlike the one that comes with System III and System V.
Generally, I think it is fair to say that the UNIX code and documentation took an awful lot of polish and improvement to make them more consistent, more robust and less buggy. We’ve done a significant upgrade of the system, although we did not go to great lengths to increase features.
But there are some increased features: for instance, we have a grep command that allows users to search for paragraphs containing patterns. But, by and large, there are not many new features.
SUPPORT FOR PC/IX
REVIEW: Who will support PC/IX?
Dolotta: IBM.
REVIEW: Will Interactive be supporting IBM?
Dolotta: Yes.
REVIEW: One of the questions I heard after the PC/IX announcement the Thursday before UNIFORUM was “Why Interactive?”
Dolotta: Because we are the best.
REVIEW: Everyone expected Microsoft or Bell Labs; some might have even expected UniSoft.
Dolotta: I cannot really comment on that. The fact of the matter is that we were asked by IBM if we would be interested in doing the project, and we said “yes” — and we did it. It’s as simple as that. As to why IBM chose to do business with us as opposed to any of the other entities you mentioned, you would have to ask IBM. Needless to say, we think they made the right choice.
REVIEW: What was your role in the project?
Dolotta: To stay out of people’s way. My role in the project, based upon my responsibilities at Interactive, is the management of the technical side of the house — so, as such, the project managers report to me. I did not have any direct technical hand in this particular project.
THE PORT...
REVIEW: Can we turn to the port itself? How long did it take? How many people were involved?
Dolotta: You are beginning to touch on issues which are dangerously close to contractual matters. Our contract with IBM contains a clause that says that all the details of the port are confidential, so I find it a little uncomfortable discussing that sort of detail. It was not a trivial project by a long shot. It was a significant project. It was not a two-week port — I promise.
Interview Heinz Lycklama
To get another slant on the race to develop PC/IX software, UNIX REVIEW went to Heinz Lycklama, Vice President of Technical Development at Interactive Systems Corporation. If there’s anyone who knows about PC/IX, it’s Lycklama. First, he worked with IBM to design the system and then he managed the ISC team that executed the port. Before going to ISC, Lycklama built a solid reputation as a designer and implementor of operating systems at Bell Laboratories.
------
REVIEW: What software currently exists for the PC/IX apart from standard System III offerings and the INed editor?
Lycklama: Well, for now, it’s basically System III. You can pretty much do a one-to-one comparison of what’s there and what’s not there. Of course, some machine-specific programs — you know, some DECisms — are not there. Some communications programs, X.25 programs and bisync stuff are also not there. It is the standard PC device that is supported — the floppy, the hard disk, asynchronous lines and the display monitor (both monochrome and color).
REVIEW: But, at present, there is no off-the-shelf software?
Lycklama: Right. Actually, besides the INed editor, there is one other package that plugs into the system. That is our (ISC’s) Connect program, which is a virtual terminal communication program. This is all bundled in with the basic offering. PC/IX is sold as one package, but it is bundled in subsets.
There are a total of 19 diskettes, eight of which make up the core system, which is completely functional with the editor. The other packages are things like SCCS tools, program development tools, communication tools and word processing tools, each offered on separate diskettes. So users can load the core system and use only a few MB of disk storage and then load other pieces selectively.
On a 10 MB disk in a minimum system, a user would typically take up, say, 8 MB for a UNIX partition and 2 MB for an MS-DOS partition. They would cohabitate so you could boot up either MS-DOS or the PC/IX system. If you loaded just the core subset, though, you would only take up 2.5 to 3 MB of disk storage.
REVIEW: With the IBM PC’s major account orientation, how long do you suspect it will be before business applications begin appearing?
Lycklama: We ourselves are communicating with IBM about marketing our own application programs, called IN packages. [Editor’s Note: A partial offering was announced by IBM in early May.]
REVIEW: Can you detail those a bit?
Lycklama: The packages include INmail, a complete user-friendly mail system not at all like the Bell mail system. The Bell mail system is also provided as part of the basic offering, but our INmail system is an additional option that we now offer to all our end user customers.
Then we have the INnet package, which is our networking package. This, again, is a proven product we currently market to our end users. The INnet package is fairly independent of whatever communication link is available. You could use an RS-282 line, you can use an RS-232 line with a modem or you could use an X.25.
Another program is what we call FTP, for File Transfer Program, to be used for interactively transferring messages or files between two systems. You just log into the remote system and extract the files you want. Those are the three basic communication packages.
We also have a word processing package called INword, which is much more simplified than nroff. It is not quite a “what you see is what you get” type of word processing system, but it is somewhere between that and the complex primitives of nroff/troff.
Then we have INfort, our FORTRAN compiler based on the FORTRAN from Bell, FORTRAN 77. It contains some improvements and, of course, it’s tailored to the architecture of the PC, which is no mean feat. Just try squeezing that compiler into a 64K address space and see if you can still generate fairly efficient code. [Editor’s Note: The IBM announcement made in early May unveiled two packages: INfort and an amalgamation of INmail, INnet and FTP.]
REVIEW: Will the packages be marketed by Interactive Systems or IBM?
Lycklama: They will be marketed by IBM as optional program offerings. You shouldn’t be surprised if IBM also works with some other third party vendors with industry standard applications for UNIX.
REVIEW: So IBM will offer options produced by other vendors?
Lycklama: Yes. There are a few good COBOL compilers on the market for the 8088 that are as good as you can make COBOL in that environment. And there are Pascal compilers, word processing systems and database systems that are being developed.
REVIEW: Will there be competing options within the IBM optional offering?
Lycklama: I’m probably not in a good position to comment on that yet. IBM makes up the rules as to what they are going to market and what they won’t. They will establish a relationship with companies to market specific applications but I’m sure others are not going to wait for IBM to port their packages to PC/IX.
REVIEW: So they’ll do it on their own?
Lycklama: Yes. The IBM PC/IX will become just another system that their product runs on.
REVIEW: Within which forums do you anticipate the competition will be most pitched?
Lycklama: I think if you look through the /usr/group catalog (The UNIX Catalog) of available applications, you’ll find a lot of relational database packages for small systems, a lot of accounting packages and some word processing systems. There is much being developed in a number of different categories.
REVIEW: Do you anticipate that support for the PC/IX will come chiefly from the traditional UNIX software community or from the companies that have been servicing the IBM PC right along?
Lycklama: I think we’re going to see more sophisticated programs initially that emphasize UNIX capabilities. There are a lot of programs available under MS-DOS today, but many of them are the obvious sorts of programs that are not very useful in a business environment. The more complicated programs like word processing, message systems and database systems are the kind that we are going to see developed for PC/IX. The PC/IX is not something I would characterize as a home computer system — at least not today. It is really for the professional.
REVIEW: But what of the office environment where PC-XTs running PC-DOS are already in use? Assuming the staff is comfortable with the software they’re currently using, it would seem there might be some resistance to learning a whole new set of utilities. Doesn’t that suggest it might not be long before the Micropros, the Digital Researches, the VisiCorps and other companies deep into MS-DOS software port their products to the PC/IX?
Lycklama: I’m sure there will be some of that. In fact, you might note that a lot of the new applications we’re beginning to see for MS-DOS have been written in C. There are also some good C compilers out there today for PC-DOS.
REVIEW: VisiCorp, in fact, has already made some public noises about porting some of its packages to UNIX.
Lycklama: It is a natural extension. The MS-DOS world is limited to a single task and that’s rather constraining for some applications. I’m sure you’ll see these applications migrate up to the PC/IX market.
REVIEW: Do you have a feeling for how long it will be until people who purchase PC/IX will have a true selection of off-the-shelf software?
Lycklama: Well, I would expect very shortly because IBM has been working with third parties to get application code ported. Those ports should encounter few obstacles since PC/IX is a true implementation of System III in terms of its system calls and its use of the C language. So it shouldn’t take that long for those applications to become available once PC/IX is generally available.
REVIEW: As you say, either with or without IBM blessings.
Lycklama: Of course, I think most companies would like to see their software come out under the auspices of IBM because that would give them a bigger market. But even without IBM, these companies are not going to wait. They will go out and market their software themselves.
REVIEW: Can you specify any of the software vendors we’re discussing here?
Lycklama: I think you can almost pick them by going through the /usr/group catalog. Ryan McFarland COBOL is a natural. Micropro’s COBOL or some other implementation of COBOL would probably be likely candidates. Database systems like UNIFY would also be strong possibilities. This is not to say that IBM is not working directly with any of these companies, but...
REVIEW: You would be very surprised if they didn’t generate something for the PC/IX?
Lycklama: That’s right. All those popular packages will be available one way or another. As I said before, if IBM doesn’t do it, they will do it themselves because they’re just not going to miss that market.
REVIEW: Do you see PC/IX ultimately selling to some market other than the small business market? Do you see the price dropping enough to push it into lower markets?
Lycklama: Initially, PC/IX will be made available only through IBM’s National Accounts Division, but I expect it will eventually be made available through retail channels as well. That’s just the next natural step and it should open up the market considerably. [Editor’s Note: PC/IX surfaced in IBM retail stores in late April. Nineteen diskettes and the PC/IX series come in a 17-pound package bearing a $900 price tag.]
REVIEW: Do you see an evolution of software for the PC/IX? What’s the most pressing need? What sort of software will surface first? What will follow?
Lycklama: Well, I think languages are the first natural step because if your application is written in a specific language, you want to make sure that language has been ported to the environment. That’s why I mentioned that COBOL will probably be one of the first languages to appear on PC/IX. There are a lot of accounting information programs written in COBOL, after all, and that can be ported to the PC/IX right after the COBOL compilers are. So, I think you’ll see the current generation of applications being moved over first. Then I expect you will see more integrated environments being made available. There are a lot of people putting a lot of effort into creating integrated environments under MS-DOS, PC-DOS, Lotus 1-2-3, VisiOn and all of that. I expect some of those will move into the UNIX environment as well. If they don’t, equivalent packages will. Quadratron has an integrated package that runs on UNIX and we (ISC) have our TEN/PLUS System. These packages really create an environment for building other applications in an integrated way.
I think you’ll also see software appearing that increases networking capabilities. You can’t do much with a single-user computer, after all — you can’t talk to anybody else or exchange data.
REVIEW: This is UNIX, after all.
Lycklama: Right. This is UNIX. PC/IX does come with uucp, but that is a rather slow way to communicate and it’s a rather limited environment. That’s one of the reasons why we use our mail system (INmail) in our networking system. It’s much more flexible than uucp. You can communicate over different communication links. It doesn’t just have to be an RS-232. You can also use X.25, a synchronous link or even Ethernet. So I think you will see more software supporting communication between PCs and between PCs and mainframes.
People already have hardware in place that will perform communication tasks from a hardware point of view. There are also some 3270 emulators available under both PC-DOS and UNIX that I expect to migrate into PC/IX.
REVIEW: That brings up a question raised in Groff and Weinberg’s “Understanding UNIX” about speculations that Interactive Systems is working on a port to the IBM 4300 series.
Lycklama: I’ve heard some rumors to that effect. That is not a thing I can comment on. [Editor’s Note: Rumors at press time had it that ISC would release the 4300 package May 16.]
REVIEW: Bearing in mind the software evolution we were just discussing, how do you see the lineup of players changing over time?
Lycklama: I expect PC/IX will widen the market for people presently producing applications for PC-DOS. We’ll see some of these applications ported to the UNIX environment. I also expect there will be new companies springing up.
REVIEW: Do you think this product will be hot enough to spawn a whole new wave of companies?
Lycklama: The market is big enough that there is room for more companies. There are only so many products that any one company can effectively build, market and support. There will be companies that have expertise in special niches that will want to market their products.
If you look at the microcomputer world revolving around the PC, you’ll find four main operating obviously, systems. You’ve got UCSD Pascal, which, of course, is written in Pascal; then you have Digital Research’s CP/M (and eventually Concurrent CP/M), UNIX and MS-DOS. Of those four, two — DRI’s CP/M and MS-DOS are written in assembler. Future versions of those are now being written in C. You can see the evolution. UNIX, of course, is already written in C, so that means that three of the four PC operating systems are C-based.
REVIEW: There are plenty of UNIX micros out there that offer arguably superior hardware to the IBM PC for running UNIX. But, obviously, Interactive holds high hopes for the success of this product. Is that hope premised on the strength of IBM marketing, IBM support and the IBM name or is there something intrinsic about PC/IX that makes it attractive?
Lycklama: I think if you look at some of the conventional benchmark comparisons with other equivalent systems, you’ll find we show very well.
REVIEW: “Equivalent systems” being other systems that work on the PC?
Lycklama: Right. We are rather proud of the way PC/IX performs. We have put a lot of effort into optimizing both the C compiler and the performance of the system itself — particularly in the areas of file handling and loading executable images off disk. We keep program images in contiguous files so that you can load the program with one seek to the disk. That has a tremendous impact on the performance of the system. When you benchmark that against some other systems, it really shows. Even the user level benchmarks come out very well.
REVIEW: Of course, we’re still talking about systems within the PC world. If we move outside that into 68000-based systems in particular, I suspect the comparisons are not so favorable. What is it about PC/IX that is going to lead a small business to buy a PC-XT instead of another piece of more powerful hardware?
Lycklama: IBM has the name behind it and the applications that will soon be available.
REVIEW: What about power per dollar? How does the PC/IX stack up there?
Lycklama: A PC-XT loaded with PC/IX costs much less than a 68000-based system, but if you compare it with other 8088 machines, the IBM PC tends to be somewhat more costly than PC clones. But I think you get what you pay for. You have to consider the whole picture — the package of applications available and the support. The documentation is also very important and we put a lot of effort into our documentation for PC/IX. We started with IS/3 manuals that were specific to the DEC world of the VAX and the PCP-11 and did a significant amount of work to edit out references to DEC devices and other DECisms.
REVIEW: How long was PC/IX in the works?
Lycklama: Well, it’s been a while. I don’t want to give you an exact timeframe, but the time that elapsed between the first kernel and the first customer was a fairly lengthy period — about six to eight months, I would say. That’s because of the quality assurance that’s gone into it. Beta testing took about eight weeks in itself and then when all the results came back, the bug fixes had to be folded in, documentation had to be reviewed and all those changes had to be folded in. There was quite a bit of detail to tend to.
REVIEW: The fact Interactive agreed to do the port for the IBM PC obviously indicates you believe the major account market is ripe for UNIX. What leads you to that conclusion?
Lycklama: I think you only have to read the UNIX press to validate that. There have been a few major announcements recently. AT&T is now in the UNIX market. That is the ultimate: first, IBM blesses the market and then AT&T blesses the market.
REVIEW: By your own conjecture, though, what is it that UNIX offers that major accounts don’t presently have?
Lycklama: Flexibility in buying hardware. They can now choose different hardware; they are not tied into one main factory because of the portability of UNIX. That’s flexibility. If Vendor A has cheaper hardware than Vendor B and they both have the same software, obviously a company would opt for the cheaper hardware — provided that vendor has a good reputation for support.
What computer ads would you like to see in the future? Please comment below. If you enjoyed it, please share it with your friends and relatives. Thank you.






