4 ms·
I don't know of any public information at that level. Here's a few tidbits. The system was originally called the IBM RT PC, but it wasn't really a PC, it was a
by todd8 4y ago
I don't know of any public information at that level. Here's a few tidbits.
The system was originally called the IBM RT PC, but it wasn't really a PC, it was a Unix workstation. We were going for the market dominated by companies like Sun, HP, DEC, and Apollo. However, IBM already had a range of computers that were important to its business. At the low end, there was the PC-AT running OS/2, but we were shooting for higher performance and higher price point. We had to do this without threatening the interesting AS/400, a mid range business machine, and the large IBM/390 mainframe computers. Traditionally the IBM/390 systems required a dedicated machine room with an elevated floor and fire suppression equipment and so forth. However, they were interested in producing a desk-side 390 machine and didn't understand why we would want to have RISC hardware running Unix, instead of running a personal 390 architecture machine the size of a file cabinet with the VM/390 operating system. I think the name was picked to make us less threatening to other well established lines of business.
IBM's John Cocke did foundational work on RISC systems at IBM Research and won the Turing award while I was at IBM. He didn't work in Austin where AIX and the RT PC (RS/6000) development was going on, but he did stop by to talk to me a few times when he had business down the hall from my office in Austin. He was very interesting. I was just a young OS Architect, but I was working on things he was interested in. I got to work with other IBM Fellows too and learned a great deal from these talented people.
The plan for AIX was complicated because we were supposed to produce a working version of AIX at the same time that the hardware guys finished the PC RT (the first RS/6000 hardware). The compiler was developed at IBM Research (probably T.J Watson Research or Hawthorn Research centers I had occasion to visit both, but I can't remember which was the location for the PL.8 compiler) so the Austin team didn't have to worry about that.
AIX was based on Unix System V with some additions from 4.3BSD. Because we didn't have a stable hardware platform (as it was being developed along side our efforts) AIX adopted a micro-kernel, written in PL.8. The micro-kernel interacted with the hardware while providing a consistent abstraction of the hardware for a traditional Unix kernel written in C running on top of it. For example, the virtual memory manager was written in PL.8 and was in the micro-kernel as were the floating point exception handlers that took care of corner cases to provide a clean IEEE floating point abstraction to higher levels of the OS.
I didn't enjoy PL.8 very much. I had written PL/1 for assignments as an undergraduate years before, and although PL.8 was intended to keep just 80% of PL/1, it still wasn't my cup of tea. In truth, I never had to write any PL.8 code. I attended code reviews, but the team doing the VM was so good that I didn't need to dive into the code very deeply for the virtual memory manager.
Before the first release of AIX, I did work on integrating the Unix file system with the micro-kernel virtual memory management. I was also responsible for the design of the distributed file system DS.
Like you, I've always had an interest in compilers and programming languages. I happen to have John Cocke's 1970 book Programming Languages and Their Compilers. It's one of my oldest books on compilers.
- pjmlp 4y agoMany thanks for sharing this information with us.