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

ArticlesRhapsody with Blue


Ap ril 1997 / Bits / Rhapsody with Blue

Apple's new OS strategy offers compatibility and a path to Unix and Windows.

Tom Thompson

With its next-generation operating system, code-named Rhapsody, Apple will leverage Next Software's OpenStep and other technologies to let developers write an application once and run it on many platforms. Rhapsody will use OpenStep to provide modern OS features such as a kernel, preemptive multitasking, memory protection, and symmetric multiprocessing. It will also use OpenStep's imaging engine, Display PostScript. Rhapsody will incorporate portions of the Mac OS, such as ColorSync (for color matching), QuickTime, QuickTime VR, and QuickTime 3D. The Java virtual machine will also be supported.

The new OS, which will play a crucial role in Apple's overall strategy for the future, is slated to arrive in 1998. So far, develo pers are encouraged. Many like what they see. "Apple is taking exactly the right pains to preserve their customers' investment, and as a leader in Mac applications, we are happy to see that," says Steve Ruddock, spokesman for Claris. Says Greg Galanos, president of tool vendor M etrowerks, "With Rhapsody, Apple now has an industrial-strength OS for server and Internet applications, an easy-to-use OS for consumer desktops with System 7, and a fantastic user interface to span both."

Getting to Rhapsody without jeopardizing the existing Mac OS software base requires Apple to pursue a two-pronged OS strategy. First, the existing System 7.x Mac OS will be supported and improved, which ensures software compatibility for Mac OS applications for the short term (several years, actually). During this time, OpenStep will be migrated to PowerPC hardware, both the Power Mac and the PowerPC platform (aka CHRP, the Common Hardware Reference Platform). A mid- to late-'97 developer relea se will probably be little more than an OpenStep port that lets a Mac boot into either OpenStep or Mac OS, but it will let developers begin writing to the OpenStep 4.1 API. A "Premier" release, currently slated for delivery in approximately January of next year, will feature an OpenStep user interface tailored to provide the Mac's look and feel.

The Premier release will also provide limited Mac application support through a "blue box." The blue box is an OpenStep process. It hosts a compatibility environment that will consist of a single preemptive thread that executes the Mac OS and Mac applications. It also uses a single contiguous memory space, as required by the current Mac OS architecture.

The blue box is not a virtual machine or an emulator: All the PowerPC-based Mac OS and Toolbox code executes natively, and low-level system calls are redirected to the appropriate kernel services. This means that Mac OS applications still execute cooperatively and that low-level OS services (such as the Fil e Manager) composed of 680x0 code must execute in an emulator.

OpenStep applications execute in a "yellow box" as processes with full access to preemptive tasking, multithreading, and memory protection ( see the figure ). By mid-1998, a "Unified" release of Rhapsody will provide seamless support for both Mac OS and OpenStep applications, Apple says.

A big advantage of Rhapsody is the OpenStep framework, a set of object-oriented libraries. Both the framework and the kernel have been field-tested over several years and so provide a stable foundation upon which to build Rhapsody, which is crucial for producing a reliable OS within Apple's own aggressive schedule. OpenStep is also well known for its application framework, which allows custom business-critical applications to be designed rapidly, a valuable feature for enterprise computing. The devil is in the implementation details, but the Rhapsody scheme breaks the job into independent, manageable projects.

Porting OpenStep shouldn't be difficult: The job has been done several times before: The OS has been ported to Intel, HP PA-RISC, and SPARC processors. The frameworks have been ported to Solaris (on SPARC processors) and Windows NT (on x86 processors). Technology that will provide the basis for the blue box has been done already: The Macintosh Application Environment (MAE) is software that hosts Mac OS 7.5.3 inside an X window on workstations running Solaris 2.5 or HP-UX 9.05. According to Jim Gable, vice president of marketing for Applesoft: "We've already got many of the MAE engineers working on the Rhapsody blue box." While the goal is to have Mac OS application windows appear indistinguishable from OpenStep application windows on the Unified release, it's likely that for initial releases of the blue box implementation the Mac OS will live in an OpenStep window, similar to MAE. Modifying OpenStep to inherit the Mac's look and feel shouldn't be difficult since the UI objects are decoupled from the rest of the class librari es. According to Fredric Bonnard, product manager for OpenStep, "Moving to Rhapsody shouldn't be difficult. The major issues will be integrating the Mac technologies with OpenStep and the trade-offs in the UI between the Mac OS and OpenStep."

Rhapsody's support for multiple development paths means that when you write a Mac OS application, you'll no longer write for a single platform. Instead, the program has the potential to be used on Unix and NT platforms. This "write once, run many" scheme is what made Apple's QuickTime the de facto standard for multimedia work, since it runs on Macs, Windows PCs, and SGI workstations. The potential for writing a program that runs on all computers -- whether Macs, NT PCs, or Unix workstations -- is perhaps Rhapsody's biggest benefit.


Tentative Rhapsody Architecture

illustration_link (36 Kbytes)


Up to the Bits section contentsGo to next article: Getting from Here to RhapsodySearchSend 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