Taking advantage of the SAS System on Windows NT

Mark W. Cates, SAS Institute Inc., Cary, NC

ABSTRACT Unless specified, all the SAS System products and features are provided on both Windows NT Windows NT is fast becoming the universal Workstation and Windows NT . This desktop client as well as an paper assumes the current release of Windows important file and compute server for mission NT is Version 4.0. For brevity, the abbreviation critical applications. This paper presents a NT will be used for Windows NT. discussion of the state of Windows NT and how the SAS System Release 6.12 for Windows takes advantage and integrates with the operating Windows Family - Single Executable Image system. Areas such as the user interface, OLE and Web integration are presented. Data access Windows NT is now in its full 3rd generation, and BackOffice integration, and with the release of Windows NT Workstation hardware considerations are also presented. 4.0 and Windows NT Server 4.0. NT Workstation and NT Server share the same microkernel, and is portable to several RISC INTRODUCTION platforms, including DEC Alpha AXP, and the PowerPC Prep Platforms. The MIPS chip NT sales grew dramatically is no longer supported by Windows NT. The in 1996, as many corporations which have been majority of NT installations still run on the Intel investigating Windows NT have now begun to Pentium® and Pentium Pro® processor. The deploy Windows NT for the client desktop. SAS System Release 6.12 only supports the Intel Many of these deployments were replacing platform, and the Pentium Pro processor is ® Windows 3.1 and . Also, highly recommended. At this writing, the Windows NT Server is making major inroads market demand for the SAS System for NT on for mission critical file and compute servers. RISC platforms has not been great enough to Just what does Windows NT provide that is so warrant a production release. Please contact appealing to corporations? And, how does the your SAS Institute sales representative if you are SAS System integrate with Windows NT? This interested in using SAS for Windows NT on a paper presents the current state of the SAS RISC platform. System for Windows NT. It introduces the basic system features of Windows NT as well as some Although this paper focuses on Windows NT, it of the more advanced features of Windows NT. is important to note that the SAS System for At each point, features and products of the SAS Windows Release 6.12, supports the Windows System that integrate well with Windows NT are family of operating systems with a single presented. A brief overview of Windows NT executable image. There is a single CD that Server is discussed within the context of SAS supports all three Windows operating systems Institute’s plan for continued support. The Windows NT (workstation and server), paper concludes with hardware considerations Windows 95, and Windows 3.1 using Win32s. for the SAS System on Windows NT and a However, the product has run time checks for glimpse of future directions for Windows NT Windows NT to take advantage of NT specific and the SAS System. (application programming interfaces). Microsoft’s strategy is to have a family of Note: Throughout the paper, unless otherwise Windows offering from the low end Windows specified, the term Windows NT generally refers 3.1, to the entry level business environment to the code base and feature set that is Windows 95, through the high end power user represented in both product offerings, Windows and server platforms with Windows NT. NT Workstation and Windows NT Server. Applications should be able to run across all of

1 these environments unmodified. Now, this programmatically send a simple email message strategy is being narrowed to Windows 95 and from within a Data Step or SCL program, Windows NT Workstation and Windows NT without requiring a user interface. Server, with the demise of Win32s. Development at SAS Institute focuses on Print Preview for all display manager and graph Windows NT. The SAS System release is later windows is a new feature provided in Release tested on Windows 95 and Windows 3.1 with 6.12. This allows for the printed output to first Win32s for compatibility. Future releases of be reviewed before printing. the SAS System will only support Windows NT and Windows 95. ActiveX Support User Interface - Windows 95 Explorer Shell There has been much confusion over the Windows NT 4.0 has released the Windows 95 difference between OLE and ActiveX. Mostly Explorer shell as the default user interface shell. the confusion has been caused by a name game This means that the user interface between the and marketing push by Microsoft. ActiveX is highly popular Windows 95 and Windows NT, the new generic name for OLE, and OLE is now and the newly released Windows CE®, is the specific acronym for what it should be, that largely the same. This user interface is of Object Linking and Embedding. Much of the commonly believed to have become the defacto confusion has happened because new OLE standard for client workstations. Also provided technology is now being released named as on NT is the Windows 95 , wizards, ActiveX and there really was never a previous my computer, network neighborhood, recycle OLE name for the technology. For example, bin, interactive help, and other Windows 95 consider ActiveX scripting, where there was applets. never previously an OLE scripting model. In general, ActiveX includes objects, controls, It is important for applications to follow the user documents, and various scripting models. OLE interface guidelines provided by Windows, and has not fundamentally changed; it has just been the SAS System is no exception. The SAS renamed as ActiveX. System is a native Windows NT application. Developers at SAS Institute have paid special Support for ActiveX continues strong in Release attention to Windows 95 user interface 6.12. This includes Object Linking and guidelines outlined in Microsoft’s Windows User Embedding support in SAS/AF and SAS/EIS. Interface Handbook in designing the SAS These SAS products can function as an OLE System user interface. Container and host any ActiveX object. Visual editing, drag and drop, and OLE automation is Additionally, Windows NT supports messaging supported. OLE automation server support was through Microsoft Exchange. NT provides for provided experimentally in Release 6.11 and has an email client named the Inbox, and Microsoft now been fully tested as a production feature in Office97 provides for a Personal Information Release 6.12. This provides for the ability to Manager named Outlook that combines email program the SAS System and access the full inbox, scheduling, and contacts. Through functionality of the SAS System from products support of Microsoft Messaging API (MAPI), such as Microsoft’s Visual Basic, PowerSoft’s the SAS System integrates nicely with the Inbox PowerBuilder, or any OLE automation and Outlook, allowing email messages controller. For example, from a Visual Basic containing rich text and attachments to be program, any SAS procedure or Data Step created and mailed by the SAS System. The statements and DM commands may be SAS System uses the email user interface submitted to the SAS System and the results consistent with the program installed. The may be brought back into the Visual Basic messaging APIs supported are MAPI and VIM. program, including text and graphic reports. Please see “OLE and the SAS System for Also provided as a new feature in Release 6.12 Windows Release 6.12” in these proceedings for is the SMNP email access method. This a complete description of ActiveX (OLE) experimental feature makes it much easier to support in Release 6.12.

2 DCOM Support • The FTP access method allows for accessing remote files, directory listings, ActiveX is built on top of a systems and accessing anonymous FTP sites from infrastructure named within the SAS System. (COM). COM provides the software architecture for software components or objects • The TCP/IP socket access method can be to communicate with each other. COM is used to establish peer-to-peer connections limited to coordinating objects all executing on with a remote program. In this way, a the same local workstation. However, now remote program can be set up to provided in Windows NT 4.0 is production communicate with the SAS System. support of Distributed COM referred to as DCOM. DCOM allows for the invocation and • The URL access method allows a SAS coordination of objects across networks. With program to access remote files using the DCOM provided in Windows NT 4.0, the SAS universal resource locator protocol. (Of System can now access objects that are course this is a standard protocol used on remotable across the network. DCOM has now the world wide web.) provided the beginning infrastructure for powerful distributed computing. SAS Release Several new tools are available and can be 6.12 provides support for DCOM in the SAS downloaded from the SAS Institute home page OLE Automation Server. under the Research and Development section. ( http://www.sas.com )

WEB Integration • The HTML Output Formatter is a tool to save output from any SAS procedure to an As Microsoft positions Windows NT to be a HTML file, making the static pages of the premier web client and server, the SAS System data immediately available for users to also is adding features aimed at the web. The access from their web browsers. SAS toolbar now sports a new tool that provides for the invocation of the current web browser. • The HTML Data Set Formatter is used to Additionally, URLs can be typed in any format the contents of a SAS Data Set into a command line or command bar, which will html page. invoke the browser and load the specified URL. DM commands are provided to allow this • A JDBC driver is one of SAS Institute's functionality to be placed in an SCL program. open interfaces to SAS data. It is written completely in Java and conforms to the Java Upon installing the SAS System with the Setup Database Connectivity (JDBC) API application, various system registry tags are developed by Sun Microsystems. The driver defined to allow the invocation of the SAS enables you to write Java applets that access System from a web browser or from the data through a direct connection to a Windows Explorer. For example, while in a SAS/SHARE*NET server. web browser viewing a .htm (or .html) page, when clicking on a SAS file type, the SAS • Finally, a Netscape plugin enables you to System is invoked with the appropriate SAS place a push button on a Web page that is program to process the file. Also, new in associated with a SAS action. When a user Release 6.12, if the SAS System is invoked selects the push button, the predefined from an .htm page, the SAS System will display action is sent to the local SAS session. If a within the window frame of the browser, session is running, the plugin sends the providing a more seamless user interface. action request to that session. If a session is not running, the plugin starts one. Three access methods are available in Release 6.12 that make accessing the internet easier. These fileref based access methods can be used from a Data Step or SCL program.

3 Security Data Access - ODBC Support

An essential part of an industry strength client The SAS System provides for open data access. workstation or mission critical server platform is To provide data access to SAS Data Sets from security. NT provides for per-file and per- other applications such as Microsoft’s Excel or directory security within the NTFS , Microsoft Access, the SAS ODBC Driver as well as local desktop security. A user id and provides for support for both local and remote password is required for logging into Windows access. Local access is supported by a local SAS NT. Across the network, APIs are provided for ODBC Server provided in BASE SAS. Remote a single network login, and NT prevents use of access to SAS Data Sets is provided through the resources by unauthorized users. Finally, SAS/SHARE ODBC Server. And using Windows NT is C-2 certified. SAS/SHARE*NET, clients can access data on remote SAS/SHARE servers without requiring The SAS System takes advantage of the security the SAS System to be executing on the local PC. features of Windows NT within the file system. The SAS ODBC Driver supports data access In addition, SAS products such as through TCP/IP sockets, DDE and Network SAS/CONNECT and SAS/SHARE only allow DDE communication access methods. data access from authorized remote sessions. SAS/ACCESS supports accessing any ODBC compliant data source for both 16 and 32 bit Data Access - File Systems drivers, thus making available data external from SAS, to the SAS System for processing. The file systems supported on Windows NT This provides for a large array of PC and data include FAT, HPFS, CDROM, and NTFS. The base data sources to be accessible from the SAS FAT file system is provided for compatibility System. with MS-DOS, while the High Performance File System (HPFS) provides compatibility with OS/2. The NT File System provides for a secure Data Access - Microsoft SQL Server file system that provides for 64-bit addressing, supporting large files greater than 2 Gigabtes. The SAS System can access data in Microsoft’s Release 6.12 of the SAS System properly SQL Server data base through the supports NTFS allowing SAS Data Sets to be SAS/ACCESS for SQL Server product. This accessed that are larger than 2 Gigabytes. Data provides for the ability to read, write or update a Sets around the size of 8 to 10 Gigabytes are SQL data base. The data base can reside locally common in this scenario. Windows NT and the or across the network. SAS System also support long filenames up to 256 characters long. Network Connectivity Disk sharing services are provided for peer connections. And NT provides for file SAS/CONNECT access methods have long compression per file or per directory with the supported a comprehensive array of network NTFS file system. access methods. Windows NT also supports a large variety of network protocols including For large scale file server capability, Windows client services for Netware, TCP/IP (DHCP, NT Server is a network operating system that WINS, PPP, PPTP, SLIP), RAS, WinSock provides for powerful and secure file server Sockets, NetBEUI / Netbios and IPX-SPX. capabilities that can support many users. See SAS/CONNECT and SAS/SHARE support the section, Comparing Windows NT Server TCP/IP, Netbios, IPX-SPX, DecNet, and APPC. to NT Workstation, Release 4.0 New in Release 6.12 is the SAS Domain Server which provides protocol bridging. The SAS Domain Server works in combination with SAS/CONNECT and SAS/SHARE software.

4 SAS Viewer files, named shared memory, and dynamic loading and unloading of code libraries. The SAS System Viewer is a freely Applications execute in a robust tasking redistributable application for viewing and environment and the memory management printing files that were created by the SAS architecture virtually removes the out-of- System. The Viewer provides a quick and memory constraints of previous Windows 3.1 convenient way to view the contents of a SAS releases. This includes the removal of the 64 Data Set or catalog without invoking the entire kilobyte limitations of the USER and GDI SAS System, or even having the SAS System segments. NT provides for the ability to execute installed on your computer. The features of the multiple concurrent SAS sessions. Multiple SAS System viewer include: SAS sessions do not strain the system because these concurrent sessions share all the same • View/Print SAS Data Sets and SAS code in memory, and only the data and stack catalogs in a grid format. sections of the SAS System are allocated in memory per executing session. This is often the • View/Create/Print and edit SAS programs, best way to take advantage of multiple text files, LST files, LOG files, and RTF processors. files.

• View/Print SAS files created by versions of Symmetric Multiprocessing Support the SAS System that run on other platforms. Out of the box, NT supports up to four • Supports ftp and http protocols processors in which any thread of execution could execute on any processor, at any time. Up • Launch the SAS System to work with local to 32 processors can be supported but requires Windows or OS/2 SAS files that the customer purchase a software component named a HAL (Hardware Abstraction Layer) directly from the PC • Supports sorting, subsetting the data hardware vendor. Windows NT Workstation (WHERE clause), find, filter, email, column and Server takes advantage of multiple threads re-sizing, and drag and drop even down to the kernel level. This provides a significant value to applications, because even though applications are not full multi-threaded, Multitasking and Memory Management applications may often gain considerable performance from multiple processors because Windows NT provides for preemptive API requests tend to be multi-threaded as the multitasking. Applications execute within their API is completed down at the NT kernel level. own address space and are prevented from corrupting other applications. Windows NT The SAS System uses multiple threads of runs in full 32 bit mode, using the protected execution, but SAS procedures are not fully mode of the Intel architecture. All of Windows multi-threaded. Where possible the SAS System NT is 32 bit, and all of the SAS System is 32 bit does take advantage of multiple thread execution code. (except the 16 bit ODBC drivers for such as in SAS/CONNECT and SAS/SHARE. backward compatibility) The SAS System is Future releases of the SAS System will utilize compiled for optimum performance on Intel threads in a much smarter design. Pentium and Pentium Pro microprocessors. This includes using a highly tuned floating point It is recommended to install multiple processors compiler optimizer for creating optimized especially in the case of using SAS/SHARE or floating point instruction sequences. SAS/CONNECT on a Windows NT Server. Typically there are other server processes Memory is addressed linearly up to a limit of 2 running on the NT Server system, and can gain Gigabytes of address space per process. from multiple processors. Additionally, Memory management APIs are provided for a multiple SAS sessions running concurrently can rich set of memory including memory mapped

5 significantly improve if multiple processors are Setup available. Windows NT provides a applet Note: CPU usage of all processors can be that is responsible for installing and de- monitored by using the NT Performance installing applications. Applications should be Monitor provided in the Administrative Tools installed in the Program Files folder, and should program group, from the start menu. keep a log of the changes made (including folders created, files copied, registry changes made). Later, the de-install applet for the Portability application, can remove cleanly the entire application. Setup programs should not update From a strategic point of view, portability can be or maintain .INI style files but instead update measured in two ways: 1) portability of the SAS the system registry. The SAS System setup applications, and 2) portability of the Windows allows for custom installs allowing specifics operating system to be provided on a new and parts of the SAS System to be installed, different processor and architecture. First, SAS reducing the overall disk usage. applications are portable across SAS Institute’s MVA® supported platforms. This includes SAS Data Step code, procedure code, and SCL code. The SAS System’s approach to Client Server Care needs to be taken not to use platform specific extensions typically found in advanced The Institute’s MVA architecture provides for file i/o APIs and in the user interface. the entire SAS System functionality to be able to run on either a client (Windows NT Second, Windows NT itself is portable across Workstation) or server (Windows NT Server). differing hardware platforms, including Intel, There is not a unique SAS System release for DEC Alpha, and the PowerPC. Clearly, Windows NT Server, instead the same Microsoft is working on a 64 bit version of executable system runs on both NT Workstation Windows NT targeted towards the Intel P7 and NT Server. This provides for maximum processor, code named Merced. Expectations flexibility in designing a client server solution. are that NT and the existing SAS System will Functionality on the client side or the server side port easily to this new processor. Portability was is not limited. By providing the SAS System on one of the design goals of Windows NT, and both client and server, total flexibility and provides customers with hardware granularity is available in creating the optimal independence. This is accomplished with the client server application. use of a portable microkernel built on top of modules named HALs (Hardware Abstraction There are a few guidelines for creating Layers). optimized client server applications. For example: It’s a pretty good bet that the combination of Windows NT and the SAS System provides one • Attempt to minimize data traffic across a of the best portable or vendor independent local area network, realizing the data access solutions available. Windows NT can and most is usually faster on a local machine than likely will be ported to the most successful across a network. Therefore, execute the workstation platforms in the future, and SAS SAS System and other related server Institute has already proved the portability of the applications on the same machine if SAS System, having ported to every major possible. operating system in the industry. Also, SAS applications remain portable even across • Determine what data is to be accessed and differing platforms. how. Define the application architecture that accesses the data in the best way to keep the data traffic at a minimum. Consider using subsetting WHERE clauses

6 to trim down the data to be transferred for remote SAS Data Set access from client across the link between server and client machines. A SAS/SHARE or SAS/CONNECT server would provide the • Have available symmetric multiple data access. RLS is best suited for small processors on the machine that is executing amounts of data to be accessed and the SAS System and other related server transmitted across the network. applications. • The SAS Domain Server - Can provide • Have available large amounts of memory on cost savings for protocol conversions. For the machine that is executing the SAS example, suppose a SAS System running on System and other related server Windows NT Workstation running only applications. Also, provide additional TCP/IP needs to access data on an IBM memory for data caching on server MVS Mainframe which uses the APPC machines. protocol. The SAS Domain Server could run on the NT Server, and convert the data access request from the NT Workstations However, certain SAS products will tend to be running the TCP/IP protocol to the APPC better utilized on Windows NT Server. For protocol. Thus, each NT workstation would example: not need access to the APPC protocol.

• SAS/CONNECT applications server - This scenario provides for executing SAS Windows NT Server Support System programs (typically Data Step, procedures, or SCL code) on the NT Server In the previous discussion, it was presented that machine, as the result of a request from the the Institute does not provide a customized client machine. Multiple processors should version of the SAS System for Windows NT be installed on the NT Server machine for Server. Regardless, the SAS System is still maximum processing power. optimized for Windows NT Server, based upon Microsoft’s NT Server application guidelines. • SAS/SHARE data server - Provides Microsoft has created a logo certification concurrent SAS Data Set and catalog access program that creates a level of functionality for in read and write modes. This provides for products designed to run optimally on Windows sharing a SAS Data Set across an NT Server. This logo certification program is organization. called Designed for Microsoft BackOffice. Microsoft BackOffice is a family of products • Processing data from Microsoft SQL designed to run on Windows NT Server. Server with SAS/ACCESS - In order to limit the data traffic across a LAN, its best The certification requirements are specified for to execute the SAS System on the same both BackOffice client and server applications. server machine where the data base is The SAS System meets the requirements of a executing. Again, this will require large BackOffice client, and SAS/CONNECT and amounts of memory and multiple processors SAS/SHARE meet the requirements of the preferred to support concurrent executions BackOffice server. The requirements of being a of the SAS System and SQL Server. BackOffice server include:

• • Processing large amounts of data from Run as a Windows NT Server service ODBC compliant data bases or Lotus Notes - This is similar to the above • Support Windows NT unified logon scenario. Attempt to reduce data traffic across the LAN. • Network independence (support both IPX/SPX and TCP/IP using RPC, OLE, • Supporting data access serving through Named Pipes, or WinSock) Remote Library Services - RLS provides

7 The SAS/CONNECT spawner runs as a service Specifically, NT Server provides for a number of on NT. A service is automatically invoked at additional features such as: boot time by the operating system and operates in a specified security context. It does not Network Monitor - provides for the monitoring require manual intervention to start. The SAS of network traffic, making it easier for spawner listens for SAS/CONNECT or administrators to trouble shoot network SAS/SHARE requests, and invokes the SAS performance. System on behalf of the requesting remote SAS Session. The spawner service allows a remote Windows Network Directory Server - NT machine to be accessed by authorized users, provides for single network logon to all network without first having to invoke the SAS System resources and centralized administration for on the server PC. Authorized users must have user accounts. an appropriate NT login account. The spawner will compare the login request with the list of Internet Information Server - provides an authorized sessions before letting the connection integrated WEB server. succeed. The spawner, SAS/CONNECT, and SAS/SHARE are independent of the network Microsoft Index Server - provides the ability protocol being used. The spawner supports to index for fast retrieval information in all files TCP/IP, Netbios, and SPX protocols. and HTML documents on the NT Server.

• Installable using Microsoft’s Systems Microsoft FrontPage - WEB authoring tool. Management Server

The SAS System can be installed from Hardware Considerations Microsoft’s Systems Management Server using Program Description Files (PDF). This provides In general, Windows NT Workstation is the support for unattended installs. This feature preferred environment for SAS data analysis will be provided to SAS customers during 1997. and end user application development. It is highly recommended for advanced development The essential requirements of being a with the SAS System, to have at least 16 BackOffice client is to properly interface and additional megabytes of memory available for support one of Microsoft’s BackOffice products. use by only the SAS System, above what is The SAS System meets this requirement by required for the operating system. Typically, supporting Microsoft’s SQL Server™ within the this would suggest a minimum of 32 Megabytes SAS/ACCESS to SQL Server product. memory on the NT Workstation. 64 Megabytes performs exceptionally well. An Intel Pentium Pro 200Mhz processor is highly recommended, Comparing NT Server to NT Workstation, but a 200 Mhz Pentium also is very acceptable. Release 4.0 Multiple processors should be considered especially if performing concurrent SAS NT Workstation and NT Server are built upon processing, or if substantial concurrent the same code base and execute the same processing is required by other applications. programs. Typically, not even special server (When purchasing new hardware, check to versions of programs are required to run on NT ensure the motherboard allows for additional Server. What then are the basic differences in processors to be added.) NT Workstation and NT Server ? Simply stated, NT Workstation is optimized for the When using Windows NT Server, the size of client workstation even for power users, while machine is dependent on the type of processing NT Server is optimized for system and serving being provided, as well as the other administration of NT based networks and for applications to be executed. NT Server setting up large server applications. machines can be configured at the low end (32- 64 Megabytes memory and 4 Gigabytes disk storage) to the high end (512 Megabytes

8 memory and 64 Gigabytes of disk storage). In getting us closer to the holy grail of code reuse. general, for optimal performance using the SAS Within the SAS System, expect to see System on Windows NT Server, at least dual applications and procedures broken down into Intel Pentium Pro 200Mhz processors and at components that can be accessed independent of least 64 Meg memory is recommended. Provide the SAS System. 16 Megabytes of memory for the SAS System and an additional 12-16 Megabytes of memory 4.0 - to be released in 1997, for SAS data processing. Microsoft Internet Explorer 4.0 will merge the Windows Explorer with the Internet Explorer. The disk space required by the SAS System The user interface differences will diminish varies widely, but can range from under 100 between using the web and exploring your local Megabytes to 350 Megabytes for the entire or network resources. The user interface should system. The product can be custom installed for be consistent between exploring the web or the less disk utilization. network. The internet will become just an extension of your computer; a shared public Care should be taken reviewing the hardware network, just like your LAN. Also, on line requirements for Windows NT. Windows NT is documentation will be provided in HTML and not supported across all Intel based PCs. The viewed in browser controls. The interactivity Windows NT Hardware Compatibility Guide provided in web pages will also influence the should be consulted to determine compatibility directions of the Windows user interface. with existing hardware Windows User Interface - Currently, the user interface in Windows is based upon the Future Directions Windows 95 model. But as the internet explodes with active content, expect to see the At a Microsoft Professional Development general user interface of Windows NT to change Conference in Los Angeles in November 1996, to be more active, like the web. This includes Microsoft laid out plans for future releases of windows with water marks, dialogs and wizards Windows NT. Although the plans include a that are much more colorful and graphical, great deal of new technologies, five specific hypertext linking, as well as using the basic directions are clear and will influence the controls of web browsing like the Rebar (often direction of the SAS System on Windows NT. called the Coolbar). With the explosion of For a complete listing of new Windows NT ActiveX control development which provides for technologies, consult the Microsoft WEB page reuse of specific graphical controls, tied together (www.microsoft.com). with scripting languages Java and VB Script, we can expect to see future Windows applications DCOM - will have a major influence on that are indistinguishable from web or Java Windows and the SAS System. DCOM based applications. SAS Institute is following provides an industry standard infrastructure for these user interface evolutions carefully. robust distributable objects. Expect to see applications broken down into objects or OLE DB - Today the most widely used data components, where the objects could run either access model in Windows is ODBC. ODBC is locally or remotely. DCOM provides the built for data that is columnar based and can infrastructure to accelerate distributed support SQL queries. OLE DB (OLE Data Base computing by making it easier to develop interface) will soon be provided to not only distributed applications. access SQL based data like ODBC, but also non- tabular data. OLE DB, designed around Object based - implied in the above discussion DCOM, has a concept of data providers. A data concerning DCOM, applications will be broken provider is built for each proprietary data down into separate executable components. source. The OLE DB interface and various high Components will then be threaded together to level APIs will provide access to all types of data create an application. Components will bring us sources to Windows programs. In effect, OLE to a higher level of programming productivity by DB is more inclusive of data sources than is

9 ODBC and will replace ODBC data access. In Annual SAS Users Group International future releases of the SAS System, an OLE DB Conference provider will be supported allowing third party applications to access SAS Data Sets and the Mehler, Gary (1997), “Integrating Windows SAS System will be able to access thirty party Clients and the SAS System into the data through OLE DB. Enterprise”, Proceedings of the Twenty-second Annual SAS Users Group International Conference CONCLUSION Microsoft Corporation (1995), The Windows The SAS System for Windows Release 6.12, is Interface Guidelines for Software Design, designed to run across the Windows family of Microsoft Press, Redmond, WA, Microsoft operating systems. Specifically, Release 6.12 Corporation targets Windows NT Workstation and Windows NT Server Version 4.0. On Windows NT Microsoft Corporation (1996), Microsoft WWW Workstation, the SAS System exploits the Home Page, http://www.microsoft.com , Windows 95 user interface, ActiveX (OLE), Windows NT Product Specifications, Web integration and large files. For Windows http://www.microsoft.com/ntworkstation/ NT Server support, the SAS System supports a ActiveX vs. OLE, SAS spawner as a NT Service, and server http://www.microsoft.com/devnews/archive/ products such as SAS/CONNECT, SAS/SHARE Windows NT Hardware Compatibility Guide, and the SAS Domain Server. The Institute’s http://www.microsoft.com/ntserver/hcl/ MVA Architecture provides for the optimal hclintro.htm, client server application to be developed, DCOM because it provides for the possibility to have http://www.microsoft.com/ specific processing or data access, placed on Windows BackOffice Logo Requirements, either the client or server. http://www.microsoft.com/backoffice/designed./

SAS Institute will continue investing in research and development for Windows NT and can Author Information expect to further embrace ActiveX, OLE DB, and Windows NT Server development. Mark W. Cates SAS Institute Inc. 100 SAS Campus Drive Trademarks Cary, NC 27513 (919) 677-8000 SAS, BASE SAS, SAS/ACCESS, SAS/AF, [email protected] SAS/CONNECT, SAS/SHARE, SAS/EIS are registered trademarks or trademarks of SAS Institute Inc. in the USA and other countries.  indicates USA registration.

Other brand or product names are registered trademarks or trademarks of their respective companies.

REFERENCES

Clegg, Jennifer and Rigsbee, Carol (1997), “OLE and the SAS System for Windows Release 6.12”, Proceedings of the Twenty-second

10