Software Requirements
Choosing the right software can be very difficult. Many times it seems that there are too many applications to choose from, and at other times nothing really seems to meet your needs. It can be hard to find the perfect match. To make matters worse, deployment of software to a heterogeneous network can be one of the worst administrative nightmares an IS professional experiences. Thin-client/server solutions, such as those using WinFrame technology, allow organizations to deploy a wide variety of client/server, productivity, and legacy applications with a single integrated software platform.
The thin-client/server solution supports the following types of Windows-based applications:
Thin-client/server architecture using WinFrame supports Win32, Win16, MS-DOS text, OS/2 text, and POSIX text applications.
-
Win32 applications (Windows NT and Windows 95)
-
Win16 applications (except applications using virtual device drivers)
-
Client/server and LAN-based applications
-
Database servers (Microsoft SQL Server, Oracle 7, or Lotus Notes)
-
DDE and OLE support
It also supports the following MS-DOS–based applications:
-
Full MS-DOS implementations
-
16-bit MS-DOS–based applications
-
LIM EMS (Lotus/Intel/Microsoft Expanded Memory Specification) and extended memory specification (XMS) memory support
-
DOS Protected Mode Interface (DPMI) support
-
Background execution
-
MS-DOS graphics and MS-DOS mouse not supported
And it supports the following types of applications:
-
OS/2 text applications
-
Portable Operating System Interface for UNIX (POSIX)–compliant text applications
Choosing software for the multiuser environment presents its own set of intricacies. Remember that all of the users are executing on the same server concurrently, with each user in his or her own protected space. However, an application must properly relinquish system resources when it is not actively using them. This means that not only does the application have to run on the server, but it also needs to know how to share with others.
Applications run in their own protected space.
As you plan your client/server environment, you should review some of the application considerations for a thin-client/server environment that are recommended by Citrix Systems. Certain application design characteristics that seem relatively benign in single-user desktop conditions might lead to decreased performance or incompatibilities in a multiuser, distributed presentation environment. Understanding these characteristics and avoiding (if possible) their negative impact will help you ensure the smooth integration of an application in a thin-client/server environment that uses the WinFrame server.
Application design characteristics will affect performance.
The first step is to check an application for compatibility with Microsoft Windows NT Server. For additional information regarding Windows NT Server application compatibility, please refer to these Microsoft resources:
-
http://www.microsoft.com/ntserver (Keep in mind that URLs can and often do change.)
-
Microsoft TechNet (For more information, see http://www.microsoft.com/technet/.)
-
The Microsoft Windows NT Resource Kit for NT Workstation and NT Server version 3.51 (Microsoft Press)
-
The Windows NT Server Concepts and Planning Guide (This manual is included in the Windows NT Server package.)
General guidelines Following are some key guidelines for when you’re developing or selecting applications for a thin-client/server environment that uses the WinFrame server:
-
Win32 applications are more efficient than 16-bit Windows-based applications. Since the WinFrame native operating system is a Win32-based system, Win32 applications are better designed for efficient use of system resources. The 16-bit Windows-based applications inherently use more overhead because they must always load the WOW.EXE subsystem for each user executing the application. An additional 25 percent performance hit is generally incurred by all 16-bit applications.
Win32 applications are the most efficient to use in the thin-client/server environment.
-
Accessing INI files through the proper APIs is preferred. Although an INI file appears to be a standard text file, it’s actually a database stored in a text file format. When ap-plications access an INI file through the proper API calls, WinFrame’s MultiWin technology will be able to detect changes in the file and propagate these changes to users upon login. If instead an INI file is edited in a text editor that does not use the proper APIs for reading and writing, the changes will not be proliferated by MultiWin.
-
Polling or “looping” on any device will have an adverse effect on system performance. Polling or looping for in-put from a device uses an unnecessary amount of processor memory when an application is essentially inactive. Applications that yield the processor to the operating system when they are not making necessary I/O requests are preferred so that the MultiWin scheduler can best allocate higher priority requests to the processor.
-
Using standard Windows APIs instead of custom code is preferred. Applications that are based on Windows stan-dards are most likely to be executed properly and to ex-ploit the advantages of the MultiWin and ICA technologies.
-
Avoid hard coding of paths and network identifiers. The MultiWin technology of WinFrame allows for the concurrent use of a single machine by multiple users. In a MultiWin environment, it is preferred that all users have private file stores and environment settings. Applications should not require that any file or environment variable point to a single location on a given machine, since this might cause data corruption or performance problems.
-
NetWare applications must be able to run in bindery mode. WinFrame will authenticate users in a NetWare Directory Services (NDS) environment. However, applications that make use of the NDS-specific APIs will not function properly in a WinFrame environment. Applications that are fully functional in a NetWare bindery-based environment are preferred.
-
The use of MS-DOS programs that use BIOS interrupts to generate graphics or that write directly to a video buffer is not supported on ICA Windows-based terminals. Be-cause ICA video data is implemented at the driver layer, any application that writes data directly to the video buf-fer will not be viewable over an ICA connection. Many of the older MS-DOS graphics programs write directly to the video buffer to achieve their graphic functionality. These applications will not function properly in an ICA environment.
-
Using bitmaps should be avoided; use vector-based graphics instead. Bitmaps require more bandwidth than vector-based graphics since all of the image data for each unique bitmap must be transmitted from the server at least once.
-
Virtual device drivers (VxDs) are not supported in a WinFrame environment. In many cases, VxDs write directly to the hardware. One of their major roles is to coordinate access to a hardware device from multiple virtual MS-DOS–based machines (VDMs) in a Windows 3.1 enhanced-mode environment. Since Microsoft NT does not allow applications to directly access hardware, these drivers are not supported. In WinFrame, the operating system already handles most of the functions that these drivers perform and, therefore, these drivers are not actually necessary.
Other considerations The extra bonus to doing research is that you might get valuable tips that will save you some trouble during implementation. Most software companies, including Microsoft and Citrix, have spent a lot of time trying to make many of the most popular applications run at peak performance on their platforms. From their Web sites, these companies provide service packs, software fixes, and installation tips that can save you a lot of time and trouble. Citrix has an ongoing program of compatibility testing, and the company works closely with hardware and software vendors to make their products WinFrame compatible. For more information, use the World Wide Web to access the Citrix Web site at:
http://www.citrix.com
Use the World Wide Web to find tips, tricks, patches, and service packs.
When you arrive at the Citrix Web site, choose the Support topic. You can also get the latest version of the Citrix Solutions Guide, which is updated quarterly and contains a wealth of information about installing, configuring, and using applications with WinFrame. For information about Microsoft Windows NT compatibility issues, you can check the Microsoft Web site at:
http://www.microsoft.com/ntserver
You can check out the support links and tools at this site as well.
Don’t forget to look at the WinFrame Readme, an online help file supplied with the WinFrame application that contains detailed information on application tuning.