Archives
 
 
 
  Special
 
 
 
  About Us
 
 
 

Newsletter
Free E-mail Newsletter from BYTE.com

 
    
           
Visit the home page Browse the four-year online archive Download platform-neutral CPU/FPU benchmarks Find information for advertisers, authors, vendors, subscribers Request free information on products written about or advertised in BYTE Submit a press release, or scan recent announcements Talk with BYTE's staff and readers about products and technologies

ArticlesWhither NextStep?


November 1994 / Core Technologies / Whither NextStep?

Next's proselytizing for object-oriented development may set the stage for Taligent and Windows NT

Bruce F. Webster

Version 1.0 of NextStep was released on September 18, 1989. At its first public showing 11 months earlier, Steve Jobs showed a slide to illustrate his theory that advances in operating-system technology tend to come every five years--thus, CP/M (1979), Macintosh (1984), and NextStep (1989). According to Jobs, as the new technology arises, the old one starts a slow glide downward, diminishing in influence and innovation, held back by its installed base and the need to maintain compatibility.

It's now 1994. NextStep has been arguably the most influential operating system of the last five years: widely envied, often imitated, seldo m matched. It offered a true object-oriented environment with system foundation classes, a uniform imaging model, and a graphical interface builder in a time of MS-DOS 3.x, Windows 1.0, and Mac System 5.4. It has been cited as having the best user and development environments around. It has won awards and received glowing reviews. It currently runs on three platforms, with more to come, and the OpenStep effort may establish its concepts and technology as a standard.

What NextStep lacks is a significant number of users. After five years of sales, the total number of active NextStep seats--systems at which you can sit down today and use NextStep--is less than the number of new Mac systems sold each month or the number of new Windows systems sold each week. Lack of users means lack of income for Next; as important, it means scant revenue for NextStep VARs and third-party developers, which is prompting them to cut back on or abandon Next. For Next to succeed, it must convince potential customers to adopt N extStep--and that's the challenge it faces.

The State of NextStep

At the core of NextStep is a version of the Mach microkernel, which handles memory management, process management, and interprocess communications. It is buried within a Unix-derived operating system that is compatible with the BSD 4.3 release. On top of this sits NextStep itself, comprising Display PostScript, which provides a common imaging model for screen rendering, faxing, and printing; the Window Server, which manages the display, as well as user events and interactions; the Application Kit, an object class library for building NextStep applications, including user-interface objects; and Workspace Manager, the NextStep user interface.

The current NextStep, release 3.2, is available for Intel-based systems, Hewlett-Packard HP-PA workstations, and the original Next hardware. At this writing, release 3.3 was due out in November 1994 and should include a native SPARC-based version that can run on Sun workstations. Release 4.0 is due in 1995; it will adhere to the OpenStep API specification and have other enhancements. Beyond 4.0 is Mecca; its name is an intentional double pun, which plays off both Microsoft's Cairo and Next's market focus on mission-critical custom applications, or MCCAs.

Besides the user version of NextStep itself ($795), Next also sells the NextStep development tools ($2995); its PDO (Portable Distributed Objects) toolkit ($4995 to $9995) for developing NextStep-compatible server applications on plain-vanilla Unix systems; and a wide assortment of training and consulting services for object-oriented development. Next has also set up what it calls the Object Channel to distribute and sell software components developed by Next and third-party firms.

Where Have All the Users Gone?

If NextStep is so wonderful, why isn't it used more widely? First, for a long time, NextStep was available only on Next hardware. Next hardware was, frankly, great stuff, but corporate America wasn't ready for a cu stom Unix workstation made by a small company. Next finally dumped the hardware and pushed NextStep out onto Intel-based systems, but that version has been available only since mid-1993.

Second, NextStep has high secondary costs. Besides its own stiff price tag, it has significant CPU, video, memory, and hard disk requirements: I recommend a 486DX with local-bus and/or accelerated video, 16 MB of RAM, and 300 MB of hard disk space for starters. For development, plan on double the RAM and hard disk capacity.

Third, because NextStep is targeted at mission-critical custom applications, corporations and government agencies that adopt it typically deploy a small number of seats for evaluation and development purposes. Once they complete the custom application, they typically deploy additional seats for end users, but most firms using NextStep have not reached that phase yet.

Fourth, NextStep tends to take over a desktop. You can run DOS and Windows applications via SoftPC (from Insignia Soluti ons), but users haven't been entirely happy with its performance and other constraints.

Finally, Next is not Microsoft, and NextStep isn't Windows. Nobody ever got fired for selecting Microsoft, but championing NextStep can entail a lot of risk.

The OpenStep Initiative

To broaden the focus and appeal of NextStep, Next has joined with SunSoft (a Sun Microsystems division) to create OpenStep, an object-based application environment standard derived from NextStep. OpenStep implementations sit on top of various operating systems, providing a standard API and set of facilities for custom and third-party applications. Any program written to the OpenStep API is supposed to be source-code compatible with any OpenStep implementation.

The OpenStep standard includes three major components: the Foundation Kit, which provides fundamental object classes; the Application Kit, which provides application and user-interface object classes; and Display PostScript, which provides a uniform, device-inde pendent imaging system. The specification has been published, and any vendor is free to implement it for a given operating system. In practice, however, it is much easier to license the technology from Next.

Two OpenStep versions have been announced. First, SunSoft is doing a Solaris version and plans to bundle it with Solaris 2.3; the combination should ship in early 1995. All Sun workstations shipped after that release will have OpenStep on them; likewise, all Solaris upgrades to version 2.3 will get OpenStep.

Second, NextStep 4.0 itself will be OpenStep-compliant. Developers can then use the same source code for OpenStep and NextStep 4.0 (except for minor differences in direct calls to the operating system), because most NextStep applications have few direct Mach dependencies. For those that do, Next and SunSoft have published porting guidelines showing what matches exist between Mach and Solaris calls.

However, the API and architectural changes in OpenStep--including a new set of foun dation classes and methods for creating and freeing objects--will require that current NextStep 3.x developers do significant rewriting of their applications to recompile them under 4.0. Next may offer scripts and other automated tools to help with the rewriting, but it will still be no easy task.

Taligent and Cairo/OLE

Having spent the last several years promoting and demonstrating the benefits of an object-oriented environment, Steve Jobs must be watching with some chagrin as Microsoft and the Taligent consortium--Apple, HP, and IBM--follow in the path blazed by Next.

Taligent is attempting to learn from Next's lessons. The TalAE (Taligent Application Environment) is designed to sit on top of any operating system meeting certain standards (e.g., 32-bit and preemptive multitasking). Versions of TalAE for OS/2, AIX, HP-UX, and PowerOpen have been announced, and Taligent has shown TalAE running on top of Windows NT. TalAE is thoroughly object-oriented and attempts to provide as many service s as possible to applications, easing the development task.

Taligent is targeting the mission-critical market in corporations, where it could be a real threat to NextStep/OpenStep. The key issue deals more with business than technical superiority. Standing behind NextStep is Next, with support from SunSoft for OpenStep. Standing behind Taligent are Apple, HP, and IBM. For corporations making large commitments, the last three names carry much more weight than the first two.

Microsoft, for its part, is seeking to retrofit the Windows environment with object technology, or at least what it calls object technology. Few outside of Microsoft with significant training in object-oriented development would call OLE 2.0 object-oriented, since it lacks both key aspects of object-oriented technology (e.g., inheritance) and key benefits of object-oriented development (e.g., reusable code and faster development).

As for Cairo, beyond making some comments about an object-based file system, Microsoft rem ains vague about what truly object-oriented features the next major version of Windows NT will provide. The delivery date also remains in question. It has moved from mid-1995 to early 1996.

The very fact that Microsoft says it will do an object-oriented environment has frozen the decision making of many prospective NextStep/OpenStep (and, for that matter, Taligent) customers. Such is the influence of Microsoft.

What's Next for NextStep?

Regardless of its technical merits, and regardless of the fact that it will be in its fourth major release before version 1.0 of TalAE or Cairo ever ships, NextStep faces a continuing uphill battle for acceptance. The OpenStep effort will ease, but not eliminate, these challenges. Next's best chances probably lie in emulating Taligent: moving OpenStep into as many operating systems as possible and lining up major partners for distribution and backing.

On top of all its other troubles, NextStep is five years old. If Jobs' theory of operating-system cy cles is correct, NextStep should be starting on the downward slope, with some new technology rising to replace it. That advance may be Taligent, it may be Cairo, or it may simply be Chicago, dominating through installed base and application support. Or it may be NextStep itself, reborn through OpenStep. Even if NextStep does decline, its legacy and influence will be felt for years to come, but that may be small comfort to those who have poured their lives into it.


Illustration: NextStep Time Line
Bruce F. Webster is chief technical officer at Pages Software, Inc., a San Diego developer of NextStep-based compound document technology. He can be reached on the Internet at bwebster@pages.com or on BIX c/o ``editors.''

Up to the Core Technologies section contentsGo to previous article: What is VLIW?Go to next article: Power Mac Code OptimizationsSearchSend a comment on this articleSubscribe to BYTE or BYTE on CD-ROM  
Flexible C++
Matthew Wilson
My approach to software engineering is far more pragmatic than it is theoretical--and no language better exemplifies this than C++.

more...

BYTE Digest

BYTE Digest editors every month analyze and evaluate the best articles from Information Week, EE Times, Dr. Dobb's Journal, Network Computing, Sys Admin, and dozens of other CMP publications—bringing you critical news and information about wireless communication, computer security, software development, embedded systems, and more!

Find out more

BYTE.com Store

BYTE CD-ROM
NOW, on one CD-ROM, you can instantly access more than 8 years of BYTE.
 
The Best of BYTE Volume 1: Programming Languages
The Best of BYTE
Volume 1: Programming Languages
In this issue of Best of BYTE, we bring together some of the leading programming language designers and implementors...

Copyright © 2005 CMP Media LLC, Privacy Policy, Your California Privacy rights, Terms of Service
Site comments: webmaster@byte.com
SDMG Web Sites: BYTE.com, C/C++ Users Journal, Dr. Dobb's Journal, MSDN Magazine, New Architect, SD Expo, SD Magazine, Sys Admin, The Perl Journal, UnixReview.com, Windows Developer Network