Path: utzoo!mnetor!uunet!husc6!bu-cs!bzs From: bzs@bu-cs.BU.EDU (Barry Shein) Newsgroups: comp.unix.wizards Subject: Re: Help us defend against VMS! Message-ID: <20788@bu-cs.BU.EDU> Date: 21 Mar 88 16:47:24 GMT References: <695@unm-la.UUCP> <4583@garfield.UUCP> <2134@ukecc.engr.uky.edu> <3201@phri.UUCP> <1149@csun.UUCP> Organization: Boston U. Comp. Sci. Lines: 89 In-reply-to: sef@csun.UUCP's message of 20 Mar 88 21:47:51 GMT Re: What stops people from porting VMS to another machine? In the first place, let's distinguish between "port" (ie. moving a significant portion of the original source code) and "rewrite" (writing a program and/or OS on the new machine with the semantics of VMS.) People are confusing those two terms (perhaps the "rewrite" people are thinking "port" the semantics but not the code.) You can't port the code en masse (didn't they go out of business* :-) because it's not portable, a lot of it is Vax assembly code. In theory someone might be able to write a cross assembler or something which discompiles Vax assembly language to a higher level language but that's a fairly hard thing to do and the result is oftentimes unmaintainable. So, let's generally agree that you're not going to take the few hundred thousand lines of assembly code and non-portable Bliss code etc in VMS and just dump it on another machine and recompile it. Can you rewrite it? Maybe, it depends. You can almost certainly rewrite (and port, some of it will probably be reasonably portable) 90% or more of it. The problem is that the last few per cent may depend upon hardware features of the Vax (eg. the structure of the page translation hardware, security levels, interrupt structures etc) in ways that are critical to its performance. You could conceivably emulate these hardware elements with software in the kernel etc but this is a risky business and might impact performance or interfere with other parts of the system in an unacceptable manner. So chances are you'd have to compromise some of the semantics of the system, possibly important semantics (such as the entire presentation of the interrupt/signal structure to the application layers.) Would it still be VMS? Sure, as long as the lawyers register the name properly. Would it be desireable to people wanting VMS? Possibly, it would be quite a long bet as it could require many millions of dollars to accomplish only to find the result is not acceptable. A lot of that money could be saved, of course, by a careful analysis before setting out on the venture. DEC has, according to rumors, looked into this in different ways over the past few years. I know some of those attempts have turned up negative, it's conceivable they can take a different approach and succeed. No doubt the first thing they would have to do is define exactly what VMS is in a portable environment and whether or not a portable VMS will track the Vax version feature for feature, especially at every update release, etc. The upshot is, most anything is possible, whether it is potentially profitable or desireable is a different question. The other approach that seems to be DEC's is to try to extend the Vax hardware architecture into areas which the market seems to want, rather than porting VMS. For example, they've more or less extended it into the low end and another generation of that (eg. a $5K Vaxstation based on the new 3000 chip) might cover that well enough. Their real troubles seem to be in the high end right now, delivering anything close to what people want in mainframe performance (MIPs+IO, eg the IBM3090) and minisupercomputer performance (I don't think DEC should want to compete with Cray, but folks like Alliant and Convex in one spectrum and Encore and Sequent in another might be a reasonable goal, some of these folks have clear shots into the area of hundreds of MIPs for well under $1M, and others 100MFLOPs or more.) Right now they're attacking these domains with marketing hype (there was some system they had which claimed to rival the 3090, it had a dozen 8800s in the room or something like that, I don't think that's what users think of when they read "3090".) Eventually they're going to have consider providing an actual product which fits the bill. Again, there are rumors of real symmetrical multiprocessing using the Vax architecture, and possible new generations pushing it up into the speed range they will need to compete. This seems more plausible than porting VMS. Although a lot of these developments will no doubt make the Vax architecture more desireable in some arenas it still begs the question Unix answers, portability across distinct architectures which allows the rapid deployment of state of the art hardware into the marketplace which is critical to many fields to keep them competitive. At any rate, it should be interesting. -Barry Shein, Boston University * I better explain that before I get flamed, En Masse used to be a vendor.