<<

Unit 10: Interoperability

10.3. The Subsystem for Windows 2000

AP 9/01 The Interix Subsystem for Windows 2000

• Interix - a full POSIX subsystem for Windows 2000 – Interix replaces the original POSIX subsystem on Windows 2000 – Full network support – Interoperability between POSIX and Win32 subsystems (CreateProcess()) – Bundled with many essential tools (including X11R5 clients)

acquired Softway Systems, the makers of Interix on Sept. 17, 1999 • Interix allows to run UNIX applications and scripts on Windows. • Microsoft Interix 2.2 was released to manufacturing on Jan. 26, 2000.

AP 9/01 What is Interix?

• A complete, high-performance environment to run UNIX applications and scripts on Window NT and Windows 2000. • The easiest way for customers to take advantage of their previous investments in UNIX-based legacy applications as they move to the Windows platform.

AP 9/01 Interix Benefits

• Easily run UNIX-based applications and scripts on Windows • A Single Enterprise Platform to run all Windows, UNIX, and Internet applications • Take advantage of existing UNIX expertise

AP 9/01 Easily Run UNIX Applications and Scripts on Windows

• A complete environment – Over 300 utilities and tools • High-performance environment • Development Kit – Supports over 1900 UNIX

AP 9/01 Single Enterprise Platform

• Full integration with Windows – Desktop, security model, • Lower TCO • Enhanced application development

AP 9/01 Leverage Existing UNIX Experience

• Extensive Scripting support • Familiar administration tools • UNIX look and feel

AP 9/01 Interix Features

• A complete environment to run UNIX applications and scripts on Windows – Fully integrated with Windows • Over 300 utilities and tools • A complete software development kit – Support for more than 1900 UNIX APIs

AP 9/01 Interix 2.2 Features

• Shells: KornShell and Shell • Scripting languages: , , sed, and Tcl/Tk • Admin tools: rsh, rlogin, telnet and xterm • Batch tools: At, cron and batch

AP 9/01 Interix 2.2 SDK

• Support for 1900+ interfaces – ANSI C, POSIX.1 and POSIX.2 interfaces • Development tools: make, RCS, lex, yacc, cc, c89, nm, ar, strip • Compilers: gcc, g++, g77 • Color curses • BSD-style sockets library support • X11R5 libraries and header files • MS Visual C/C++ 4.0 & 5.0 support

AP 9/01 The Windows 2000 Architecture

Environment Subsystems Functional Subsystems

Microsoft Win32 INTERIX I/O Security POSIX Subsystem Subsystem Subsystem Subsystem Subsystem

Windows 2000 Kernel

Hardware Abstraction Layer

AP 9/01 Applications and Subsystems

Win32 Win32 Interix Interix Interix App App App App App

Functional Interix Win32 Subsystem Subsystems Subsystem

Windows 2000 Kernel

AP 9/01 Interix/Win32 Integration

Interix Common Win32 App Desktop App Interix Win32 App App

Pipes, sockets Interix Win32 Subsystem Win32exec Subsystem COM

Windows 2000 Kernel Common File Systems CDFS NTFS FAT AP 9/01 Common Desktop

• Interix shell appears in a console window with standard controls • Cut-and-paste support between Interix, Windows, & X11 applications • Launch Interix applications from a desktop icon or menu • Standard Windows tools apply – InstallShield, etc.

AP 9/01 Common File System

• Interix supports NTFS, FAT, CDFS. • NTFS provides case sensitive filenames, group ownership, file modes (ACLs) and hard links • NTFS I/O operation audit features are now available to ported UNIX apps on Interix

AP 9/01 Common Execution Environment

• Interix applications can exec( ) Win32 applications • Can Win32 apps – Used in the product in lp and cc • Write Win32 apps explicitly for the “UNIX” environment

AP 9/01 Interprocess Communication

• Applications can share data between subsystems via – Pipes – Sockets (Local and Remote) – Shared Memory (Win32 mapped files to SVID shared memory)

AP 9/01 INTERIX COM Example App

Existing X11 Existing UNIX Graphical Character-based New Windows Application Application Graphical Application VBTIDE.EXE xtide tide TIDEWRAP.DLL TIDE.XLS UNIX X11 C UNIX C INTERIX COM Visual Basic GUI Application Application DLL Module Or Excel Plug-in

INTERIX Subsystem Win32 Subsystem

Windows 2000 Kernel AP 9/01 Interix Futures

• The Interix subsystem to be improved • Interix and Services For Unix to – One comprehensive UNIX interoperability and application migration solution. • For more information – www.microsoft.com/windows/sfu

AP 9/01