Skip navigation

NT News Analysis - 01 Dec 1998

Linux is on a roll. For applications ranging from Web servers to databases, third-party developers everywhere are turning to freeware operating systems (OSs). As a result of freeware's momentum, Microsoft purportedly sees Linux as a competitive threat to Windows NT.

On the surface, Linux and its freeware distribution model seem to be gaining steam. Each week, new vendors announce support for the Linux platform. These endorsements have self-serving motivation. Major industry players are advancing Linux as their latest competitive pawn in the war against Microsoft.

On the Linux bandwagon, you'll find IBM, Oracle, and Netscape, all Microsoft competitors that stand to gain from the emergence of a competing platform. Even Intel (the other half of the Wintel marriage of convenience) has come out in support of Linux. This support is not because Intel believes in the freeware model, but because Intel resents living in Microsoft's shadow. (For more on the deteriorating relationship, see Mark Smith, "Is NT Windows?" page 11.)

However, developing for Linux takes on a whole new meaning as independent software vendors (ISVs) contemplate releasing to the masses what is essentially their core asset--the intellectual property that the original source code they've written represents. According to intellectual property lawyers, the Linux licensing agreement binds any developers who produce software using components of the Linux OS (e.g., libraries, runtimes) to release the source code for their additions (i.e., applications) to the public domain. This limitation, more than any other issue, will stop mainstream commercial Linux development dead in its tracks. Evaluating strategies involving Linux-based solutions, IS planners need to consider that commitments made today may vanish tomorrow. As a result, customers who invest in Linux may end up without crucial applications.

In the end, lack of support or questions about open source security will not cause Linux to fail in its bid to unseat NT. Rather, the very nature of the freeware model will kill off this contender. (For more about Linux and NT, see David Chernicoff, "Walking the Walk and Talking the Talk," November 1998.)

Putting the Jini Back in the Bottle
Sun Microsystems' new Jini application architecture could pose a threat to Microsoft's desktop Win32 API. Jini is Sun's controversial attempt to stitch its Java-based computing model into a cohesive enterprise infrastructure.

Sun will leverage the Remote Method Invocation (RMI) capabilities of the Java 1.2-based Virtual Machines (JVMs) to create a platform-independent distributed computing environment. Under the new Jini model, all JVM-enabled devices will register themselves as participants in a federation of systems, advertising the services of any locally stored applications and taking advantage of services that other applications on other systems author.

Sun's strategy is to dislodge Win32 as the API standard. However, Microsoft isn't ready to give up its hard-won position without a fight. Microsoft is talking about its distributed computing efforts, specifically a series of new technologies the Microsoft Research Group is developing under the code name Millennium Project.

Like Jini, Millennium includes a distributed computing component. However, instead of creating a loosely coupled federation of independent Java objects, Millennium specifies a more abstract model. Linked, individual JVMs form a single, distributed JVM. This approach lets Java applications use the computer resources of all participating systems seamlessly with little or no participation by the developer.

Greater abstraction is at the center of other parts of the Millennium project, as well. One core Millennium effort involves extending the forthcoming COM+/DNA architecture to remove any existing distinctions between local and remote objects. Developers will create applications without concern for where they will execute, giving system architects more flexibility in how they configure and deploy components.

This extension of the Windows object infrastructure gives Microsoft an advantage. Millennium represents a less dramatic, incremental step toward distributed computing for application developers. Jini requires faith in the JVM model of computing (a notoriously unreliable environment) and in third-party developers building the necessary foundational components (e.g., Java-based device drivers, abstraction layers).

Jini is a curiosity. Like most Sun-inspired anti-Microsoft initiatives, it will gain supporters in the UNIX and network computing communities. However, Jini fails to offer anything compelling to shops that have already invested in Windows as a development platform.

Is Embedded NT for Real?
Industry pundits refer to the Embedded Windows NT initiative as Windows for Routers. With Microsoft representatives touting NT's potential as a function-specific operating system (OS), many customers struggle to understand the fragmented embedded systems strategy.

Microsoft's other embedded OS, Windows Consumer Electronics (CE), is gaining momentum in consumer circles, and Microsoft's CE group continues to stretch the platform's coverage. For example, the CE group is positioning the new Jupiter-class CE devices, such as Hewlett-Packard's Jornada 820 handheld PC, squarely against the low end of the traditional fat-client notebook market. Microsoft has said no coverage conflicts between CE and Embedded NT exist. However, the release of Jupiter-class CE devices has set a precedent. Microsoft appears willing to let the CE team compete with the NT team for control of certain market segments, but buyers are confused about which platform is the real deal. As a result, customers still don't believe that Microsoft is serious about embedding NT.

When you examine the issue from a technological perspective, you can address the issue of Embedded NT's necessity. First, you must look at the question of suitability to task. Windows CE is a small-footprint OS that Microsoft designed for single-user operation on non-PC devices. CE is 32-bit and supports multitasking and multithreading like NT. But this support is where the similarities end. NT is designed to be a high-performance OS. NT acts as a server because it supports critical scalability features, such as symmetric multiprocessing (SMP) and virtual memory.

By contrast, Microsoft designed CE for uniprocessor operation only. Microsoft tuned CE's memory management architecture for fixed-size environments (i.e., no virtual memory). These architectural differences define the suitability of each platform to various tasks. For example, NT is better suited to manage a complex infrastructure-level component, such as a router or fax gateway. NT's robust memory management and support for SMP lets it meet the demands of large enterprise customers, whereas such a load would overwhelm CE's more modest architecture.

The independent software vendor (ISV) community and the majority of in-house enterprise developers already understand how to program to NT services. The fact that you can build a single Win32 application and deploy it across a broad spectrum of systems represents a powerful selling proposition for the Embedded NT concept.

Embedded NT is necessary to bring an adequate Windows-based platform to certain enterprise-caliber devices, and it's a logical strategy given the benefits that a single, reusable code base built on a unified enterprise API platform will offer to Windows developers.

Hide comments


  • Allowed HTML tags: <em> <strong> <blockquote> <br> <p>

Plain text

  • No HTML tags allowed.
  • Web page addresses and e-mail addresses turn into links automatically.
  • Lines and paragraphs break automatically.