BRACKENRIDGE@USC-ISIB@sri-unix.UUCP (08/12/83)
From: Billy <BRACKENRIDGE@USC-ISIB> Here is a response to my Visi On message and a reply as carried in INFO-IBMPC. Date: 7 Aug 1983 15:00-PDT Subject: Visi-On From: William "Chops" Westfield <BillW @ SRI-KL> To: brackenridge@ISIB Remailed-To: info-ibmpc Just how much of a "virtual machine" is provided by Visi-On? Normally, when someone mentions a virtual machine, I envision something like Smalltalk, where object code is trasnportable from machine to machine, and the underlying "engine" ends up interpreting byte codes or some such. However, from the general tone of your message, I got the impression that Visi-On provides more of an operating system type environment - You have a set of system calls that are callable from many languages, and are present on all machines. Sort of like Unix, which is the only major operating system that I can think of that runs on a bunch of different hardware. Bill W ------------------------------ Date: 7 Aug 1983 2103-PDT Subject: Re: Visi-On From: Billy <BRACKENRIDGE@USC-ISIB> To: William "Chops" Westfield <BillW@SRI-KL> cc: info-ibmpc I suppose "virtual machine" is a misnomer as it has come to mean so many things as to be "virtually meaningless". I believe the preferred terms are Visi Host for the low level stuff and Visi Machine for the higher level code. The system calls are not callable from many languages -- Visi C is the only language. Visi C is a fairly restricted subset of C designed for maximum portability and to be independent of word size while currently optimized for 16 bit words. I think in the Visi On system we see something fundamentally different from any portable operating system like Unix or CP/M. The Visi On system incorporates a model of a machine with a large virtual address space, a bit map display, and a mouse. Currently a hardware implementation of such a machine is not competitive in the office marketplace. The best compromise was to take a cost effective machine like the PC and write a lot of assembly language code to do raster-ops and memory management in software. I think Visi Corp was wise not to adopt a p code model. It makes terribly inefficient code on the current generation of PCs and as Perq and Xerox have shown us it is difficult to compete in the marketplace with special purpose hardware. Some of the UCSD Pascal people were at the Visi seminar. Their intent is to write Pascal to C translators that could port the UCSD base of programs into various C environments. I haven't looked in to the details, but I suspect some built in Pascal functions could be directly mapped to Visi On machine calls. Many of the low levels of the Visi On system may be made available in silicon. I expect many of the PC compatible companies will make super set PC machines to exploit the Visi On model. Currently, for example, the Compaq has a high resolution screen mode that is a superset of the IBM-PC graphics capability. Some of the people from the Intel display processor chip design team were at the seminar. The current Intel display processor (and the NEC equivalent) are selling about as well as stand alone word processors or dumb video terminals. Texas Instruments has already announced their chip entries in the raster-op race. They have a dual ported RAM that has a built in shift register and a raster-op engine based on the TMS320 architecture (fast multiply, built in barrel shifter, etc.) The Intel 286 processor is code compatible with the current 8086 but some dozen times faster. An upgrade to this chip would speed up memory management and provide memory protection while requiring no changes in user or Visi Machine level code. I don't think MS-DOS or applications that run directly under MS-DOS will be able to utilize the 286 without extensive recoding and a basic change in memory management and process structure. Unix is a great program development environment. While not competing in that area, Visi On corrects some of the basic flaws in Unix. I already mentioned that Visi On has a bit mapped screen/mouse model of interaction. More importantly the Visi On environment improves on the Unix shell in that programs can pass typed structured data. Currently the only exotic data type that I know of is spread sheet format, but if I decide my activity wants to import and export LPC encoded speech I can register my structure with Visi Corp and other applications may or may not accept it. While this is not as exotic as one might find on a Lisp machine it is practical and efficient as the types are checked at installation time. ------------------------------ -------