Virtually NT on Unix
Accessing Windows apps from your Unix workstation or X-terminal is now easier than you think
Access to the world of Windows applications has always been a thorny issue for network users. Now with virtual Windows NT desktop systems in full swing, we will show you how your Unix workstation or X-terminal can have complete access to the entire range of Windows applications without sacrificing anything due to incompatibility. (2,200 words)
NTrigue and similar packages, such as Citrix's WinFrame and Tektronix's WinDD software, make use of a modified Windows NT Server operating system and function very much like X Windows server systems. The remote server handles actual application processing while the local client performs graphical updates and screen management.
Today, these packages are going a step further -- Windows NT applications inside your Web browser or Network Computer. I think it's important to examine this change in technology and I believe you'll agree that this system will provide a great Windows application server mechanism for a good number of your Unix workstation and X-terminal users as well.
Unix vs. Windows NT applications
The Windows NT market is strongly based on the traditional personal productivity market of the Windows platform. Microsoft created NT Workstation and Server as a way to enter the business and corporate market on a higher level than the well-known, unstable Windows 3.x system. This resulted in direct competition with long-established server markets, primarily Unix systems.
Although a large number of server-end applications have been added to NT's plethora of end-user software packages, most high-end server applications like databases, Web servers, online transaction processing systems, or e-mail servers have long been available on Unix systems. There has really been no need for further access to these systems through Unix. NT's distinct advantage, personal software, and end-user applications, is Unix's weakness.
So a problem from the vendor's point of view is this: How do you give Unix users access to commercial word processors, groupware, schedules and calendars, and personal spreadsheets without spending a lot of time porting applications from their current environments and without setting up a separate technical support department for all this?
The solution: If Windows NT now supports multiple users well enough, why can't we run NT applications on a server and show them on our Unix systems as we do with X Window System applications?
This is where products such as NTrigue, WinFrame, and WinDD become interesting. Insignia, Citrix, and Tektronix essentially have taken the source code of Windows NT through carefully constructed licensing agreements with the Redmondians and extended it to make the multi-user system display on networked systems. In addition, a new protocol called Intelligent Console Architecture (ICA), created by Citrix and licensed by the others, provides a network communications mechanism similar to the X11 client/server protocol.
Here's how it works
The ICA desktop client can open up a remote session on the Windows NT server and display either individual applications in separate windows or an actual desktop inside a window on your X11 desktop. When you launch the client, you need to log into the Windows NT server with your user name and password as you would with any Unix system.
You then are presented with the virtual Windows NT desktop which looks and acts almost exactly as if you were on the server directly yourself. Windows NT can keep separate profiles or desktop views of users, as well as control which applications users can access. This means that one virtual Windows NT user's desktop might have a different set of applications, settings, or even file system access control than that of another user. It should or it wouldn't be much of a multi-user system.
The ICA protocol communicates directly with the Windows NT operating system. The modified version of NT incorporated in this technology extends all levels of the system to a true multi-user environment. Devices at the hardware level are still sometimes limited to one user at a time. For example, a modem hooked directly to the serial port of the server can only be used by one user at a time. All other users will be informed that the device is busy or in use. However, all applications run in separate areas of memory and as separate tasks for all users just as they do in Unix.
The server system used in these products are all Intel-based Windows NT servers. Typically, you would use a Compaq ProLiant 4000 or similar class of enterprise PC server. The power of the server system directly relates to the number of users you will have running on the system at any one time. This is very much the case for the X-terminal/Unix server environment as well.
There are some downsides to virtual Windows NT server systems, however. First of all, they make heavy demands on memory. In order to provide a reasonable level of end- user performance, you need to multiply the number of concurrent users by the amount of memory you would need for a typical Windows NT workstation. Microsoft suggests that NT will work with 12 megabytes of memory although 16 megabytes is more realistic. The vendors claim that their products will run in smaller per user memory environments -- as little as four megabytes per user. But 10 megabytes per user would be safer. In addition, a base of 32 megabytes for the system itself is recommended. This means for 20 concurrent users, you will need to put approximately 256 megabytes of RAM on your machine. Additionally, you might want to consider a multiprocessing hardware platform for Windows NT.
Although the vendors claim you can run any type of Windows application on the system, you should be careful about what you select. Not all Windows software works perfectly in Windows NT. If you run common productivity applications such as Microsoft Office, there won't be a problem. If you have custom Windows or DOS applications created for the Windows 3.x environment, you will need to test it on an ordinary Windows NT workstation system first. Few DOS applications behave well under Windows NT, and there are a handful of Windows 3.x applications that fail as well. Furthermore, device-level applications like instrumentation control or access to hardware-based Windows NT applications will probably falter with too many users at a time.
Finally, the worst news is that virtual NT can't run on the most powerful Windows NT hardware platform. I'm talking about Digital Alpha computers. The DEC Alpha 8400 is one of the fastest computers in the world, and coupled with Digital's Windows NT clustering software, it can be one of the most powerful server systems ever. It would be great to get a powerful NT server like that to perform all the multi-user tasks that many overtaxed PC server hardware systems are being forced to do. The Alpha NT market is still small despite best efforts by Digital and Microsoft (5 percent compared to the 93 to 94 percent Intel NT market), and there certainly are not as many applications built natively to the Alpha architecture. (An agreement between Digital and Microsoft last year called for all new Windows NT applications from Microsoft to be released on the Alpha platform concurrently with the Intel platform. Despite all of the hyperbole, this agreement has yet to be fulfilled completely by Microsoft.)
Citrix was one of the first to come up with this solution of virtual NT desktops using ICA. WinFrame was built originally for use in minimal Windows desktops. This means you could build an NC-like device that has the bare minimum to run a Windows environment and perform all actual processing on the remote server. Citrix has since expanded the environments that WinFrame currently runs on; namely Windows 3.x, Windows for Workgroups, Windows 95, or even a minimal Windows NT Workstation. The OS/2 version of the client has been released, and Citrix is working on Unix and Macintosh clients as well.
One hardware terminal vendor has taken Citrix's design to heart. Wyse Technology is basing its concept of the NC on WinFrame by creating minimal terminals that run only the ICA client software and require a dedicated Intel Windows NT server system.
Insignia Solutions NTrigue
Insignia claims that NTrigue is the fastest and easiest-to-use NT application server. NTrigue is actually more like X Windows than the others. The client is essentially just an X-client for the specific platform that you are using. You need an X-server on your client system to display the virtual desktop. Insignia supports other platforms, such as the Macintosh, by repackaging platform X-servers, eXodus from White Pines Software in this case, along with its NTrigue client. Insignia also incorporated the Citrix WinFrame ICA system into its NTrigue for WinFrame product.
Like Citrix, Insignia has support in the NC world. HDS, the first vendor to release an NC system based on its X-terminal line (See the Connectivity column in the December 1996 issue), includes NTrigue clients with its netOS operating system on each terminal.
Display and X-terminal vendor Tektronix came out with WinDD early on as a solution to provide Windows NT applications to the Unix market. Incorporating X11 features into its own customized version of Windows NT, it originally enabled its X-terminals to access a dedicated Intel NT system. Later, Tektronix expanded the supported client platforms to any X11-capable server. Tektronix has now incorporated the ICA protocol into its product. This means you can run a virtual NT from other non-X11 client stations.
The next generation
With so much noise about Network Computers and the Web, it was very likely that vendors would take ICA to Web browsers and the Java environment. Citrix already has a plug-in module for Microsoft Internet Explorer and Netscape Navigator that allows Web users to run Windows applications within their browsers.
The plug-in is basically a controlled WinFrame client module that performs tasks similar to those a non-Web client would while limiting certain factors like desktop management and interaction between the local machine and the virtual application. There's practically no difference otherwise. Take a look at the demo on the Citrix Web page. Keep in mind that Citrix is running one server for access by the entire Internet for this demo, so focus on use and features rather than performance.
Sun licensed the ICA protocol and client to create a Java version that can be used inside the Java virtual machine. This is a strategic move by Sun to incorporate the world of Microsoft applications into its JavaStation and NC architecture, which only has a handful of native applications. Instantly, the NC platform deployed by Sun will have a huge base of applications that can be accessed over the network. This will be extremely beneficial until native Java-based applications become commonplace.
Will you use it?
True Unix die-hards will scoff at using a word processor such as WordPerfect or Microsoft Word -- preferring, of course, tools like GNU Emacs and troff for editing and formatting, respectively. I don't know about you, but I just don't have the time to format and encode style information personally with these tools anymore. Call me lazy, but I use MS Word for most of its automatic page layout, editing, and support facilities. I, however, use Emacs for HTML work because I don't trust a Web editing package to handle this at the speed and level to which I have become accustomed.
These virtual NT server systems provide a departmental or even an enterprise-wide solution for accessing Windows applications through X-terminals and Unix workstations. I cannot vouch for one product or another since I haven't done complete tests of each of these products yet. There is also little to differentiate one from the other. Keep in mind that they only support Windows NT 3.51 environments and haven't moved to Windows NT 4.0. This won't mean much in most cases other than the fact that the GUI will be radically different.
The main benefit of virtual Windows NT is the elimination of the need to support Windows stations in addition to X-terminals and Unix workstations. You don't have to manage individual Windows stations either -- only the server itself. All software resides on the server, so you only need to have enough licenses to go around. You could minimize the per-license cost by creating a ratio of run-time licenses to users rather than one license per PC user. You also could have access to a powerful workstation from a cheaper machine, such as a low-cost PC, Macintosh, or maybe even an NC. Finally, if you plan to do away with workstations and convert to NCs on most desktops, this would be the best way to keep your investment in current desktop software while providing for all NC user needs through these systems. One virtual NT system represents the best of all worlds in a unified system.
About the author
Rawn Shah is vice president of RTD Systems & Networking Inc., a Tucson, AZ-based network consultancy and integrator. Reach Rawn at firstname.lastname@example.org.
If you have technical problems with this magazine, contact email@example.com