COLLECTED BY
Organization:
Alexa Crawls
Starting in 1996,
Alexa Internet has been donating their crawl data to the Internet Archive. Flowing in every day, these data are added to the
Wayback Machine after an embargo period.
this data is currently not publicly accessible.
The Wayback Machine - https://web.archive.org/web/20070225043831/http://www.macguild.org:80/rhapsody.html

Overall summary on Apple Rhapsody:
A User Overview
By Larry Peng
After 4 reports of my initial tests with the various components of the first developer
release for Apple Rhapsody, I would like to summarize how things come together overall.
I hope to unify the 4 reports to present the bottom line. My aim is to strike a balance
between ordinary users and programmers, so the discussion is simplistic. Please pass
this along as appropriate.
Much of this (including figures) is taken from slides from an 8700 Center Seminar
I gave on December 17, 1997, and includes new results over the last few weeks. In
that seminar, the slides showed mostly Wintel screen shots, and I used a Power Mac
for live demo purposes.
ADDENDUM: Larry also wrote articles on the Rhapsody
Blue Box, and Yellow Box for Windows.
You can view them as html in your web browser, or download them as MS Word documents.
CONTENTS:
I. WHAT IS RHAPSODY?
II. WHAT IS UNIQUE ABOUT RHAPSODY?
III. WHAT IS THE ADVANTAGE OF RHAPSODY?
IV. THE OVERALL PICTURE
I. WHAT IS RHAPSODY?
WHAT RHAPSODY IS NOT:
- It is NOT an immediate replacement for Mac OS 8 and 9.
- It is NOT Copland or Gershwin--early code names for Mac OS 8 and 9.
- It is NOT a new code name for Mac OS 9. The Mac OS 9 code name is Allegro.
- It is NOT a new code name for BeOS, from Be Software, Inc. BeOS is not involved.
- It is NOT just another OS peculiar to Apple hardware.
WHAT RHAPSODY IS:
- It IS a computing/development/deployment architecture which includes an OS, rather
than just another OS.
- It IS the eventual successor to Mac OS. Provides clear upgrade path, while retaining
strong back compatability.
- It IS designed for heterogeneous networks.
- It IS designed with enterprise computing in mind.
- It IS based on OpenStep from NeXT (commercial grade code). OpenStep is well tested
and well regarded.
- It IS NO more proprietary than Windows (3.1, 3.11, 95, 98, NT 4, NT 5, CE) code.
OVERALL STRUCTURE :
The general schematic of Rhapsody is given in the following 2 figures. There are
several critical points to note:


- The complete Rhapsody package has 5 principal parts: Mac OS (Blue Box), Yellow
Box, Core OS, Advanced Mac look-and-feel, and hardware. Design-wise the components
are largely independent of each other. Thus component mix-and-match is possible,
and the Yellow Box/Java component can be hosted on different operating systems.
- Rhapsody will operate on PowerPC or Intel style hardware.
- Core OS is Berkeley Unix 4.4 (BSD 4.4) with the Mach microkernel. All UNIX advantages
are present: pre-emptive multitasking, memory protection, multiuser access, password
protection, etc.
- The advanced Mac look and feel is the same, whether on PowerPC or Intel.
- Blue Box (Mac OS compatability environment) is only available when using PowerPC
hardware. Apple continues to improve the current Mac OS, and will increase the ability
of Mac OS to utilize the core OS of Rhapsody. Please see the report on the Blue Box
beta for more details.
- The Yellow Box is a set of cross-platform object-oriented development application
programmer interfaces (API). It is derived from OpenStep (from NeXT) and includes
existing OpenStep technologies, many of the Apple technologies which distinguish
the Mac, and other industry standards and technologies (e.g. Java).
II. WHAT IS UNIQUE ABOUT RHAPSODY?
So far this sounds like another flavor of UNIX with development tools which is
incompatible with most everything else. This is true if one associates a particular
operating system with particular hardware. But this is not true in the case of Rhapsody.
The primary reasons for this are the Blue Box and the Yellow Box. The Yellow Box
is the strategic component since its original design is nearly totally hardware and
operating system independent.
THE BLUE BOX--THE MAC OS COMPATIBILITY ENVIRONMENT
The Blue Box is a complete process image (can be modified like any Mac OS System
folder) of the Mac OS, starting with Mac OS 8. It operates with the rest of the Rhapsody
system, and provides a seamless upgrade path for current Mac OS users. Blue Box is
part of Rhapsody for PowerPC, since Mac OS has dependencies on PowerPC/680X0. This
is like DOS, Windows 3.1/95/98, and (to a lesser extent) Windows NT being dependent
on Intel 80X86.
When running Blue Box, it is basically impossible to tell the difference between
running Blue box and standalone Mac OS--and that is the point! From a user standpoint,
you are working on a Macintosh. Thus current Mac OS users can leverage the vast majority
of their existing equipment and software to do critical work today. Mac OS users
are not automatically forced to upgrade existing hardware and software.
Since the Blue box is a direct image of the current Mac OS, as Apple improves Mac
OS, the Blue box will simultaneously improve as well. Right now we are looking at
Mac OS 8.1 (minor update) around January, and a major update (code-named Allegro)
at the end of summer 1998--tentatively called Mac OS 9.

Mac OS About Box; after Blue Box beta install, and double-click various applications.
YELLOW BOX--THE DEVELOPMENT PLATFORM
The components of the Yellow Box are shown in the following 2 figures. The first
shows the capabilities of the Yellow Box, while the second shows some (but not all)
of the various technologies which make up the Yellow Box.
- Yellow Box is a superset of the OpenStep frameworks, and includes many of the
Apple technologies which distinguish the Mac--color management, true plug-and-play,
QuickTime Media Layer, AppleScript, and AppleEvents to name a few.
- Yellow Box frameworks support a variety of widely used cross-platform technologies
such as CORBA, Java, COM, databases, the World Wide Web, etc.
- Yellow Box includes the Display PostScript imaging model, which is the same PostScript
used in printers, imagsetters, and typesetters.


The POWER of the Yellow Box is that the design does NOT explicitly require a specific
hardware design, operating system, or user interface. As OpenStep, it already runs
today on Intel (Mach, Windows NT), SPARC (Solaris) and PA-RISC (HP-UX). As Rhapsody,
it runs on PowerPC (Mach, Mac OS), Intel (Mach, Windows 95/NT), and SPARC (Solaris)
and PA-RISC (HP-UX)--with help from Sun and HP. OpenStep on Windows shipped commercially
in 1994.
As an example, the following figure shows the program called Interface Builder running
on Windows 95/NT using the Yellow Box for Windows 95/NT component of the Rhapsody
Developer Release for PC Compatibles. Interface Builder is a programming tool used
to build Rhapsody applications, and was originally written for the Rhapsody environment
(running on Mach). The figure shows some very simple program building in progress.
Note that in the figure Interface Builder looks-and-feels like a Windows program,
but the construction of menus (lower right) is Mac-like! So I am developing within
Windows 95/NT, but creating programs that run on Windows 95/NT, Rhapsody, Mac OS,
and Mach! I am not tied to writing explicitly for Windows 95/NT!

Interface Builder running on Windows 95/NT
YELLOW BOX APPLICATION DEPLOYMENT--MAC
OS, WINDOWS, UNIX:
The Yellow Box is a key differentiator of Rhapsody compared to other environments.
The independence from hardware, operating systems, and user interfaces allows the
Yellow Box to be deployed on various platforms. Two targeted platforms are shown
in the next 2 figures.
Yellow box deployment prefers a 32-bit or greater memory model. For Wintel, one
must use at least Windows 95. Windows 3.1, 3.11 do not qualify, and the vast majority
of Windows programs are still 16-bit. Windows 95 is not a 32-bit operating system,
but does understand the same 32-bit memory model as Windows NT. Mac OS has been 32-bit
for almost 10 years now. UNIX has been 32-bit for some time, and now moving to 64-bit.
The above type of arrangements have several advantages:
- Applications utilizing the Yellow Box are available to all desktop users. Applications
retain full functionality, and adopt the look-and-feel of the host operating system.
- Users do not have to get retrained on new operating systems in order to use the
software. Contrary to popular perception; Windows is NOT a Mac, and vice-versa.
- Users can still use their existing software for critical functions they need
to do. Users are not being forced to do wholesale upgrades of software and hardware.
- The Yellow Box includes the Display PostScript imaging model, which is the same
PostScript used in printers, imagsetters, and typesetters.
|
|
In the following figure, the Rhapsody Draw program is shown on Windows 95/NT. This
program was first constructed to run on Rhapsody DR1 for Power Mac. Except for the
look-and-feel, the program is the same as the Mac version (feature and code-wise)!

Rhapsody Draw program running on Windows 95/NT
JAVA:
The previous figures imply that the Yellow Box and Java are linked. Java has
been touted as a solution for write-once, deploy anywhere software. The Yellow Box
has been made completely accessible to Java-based programs. This gives Java programmers
access to the maturity and power of the Yellow Box, along with automatic cross-platform
deployment capability. One of Java�s current limitations is that it is still rather
inmature as a development and deployment platform. By opening up the Yellow Box to
Java, Java developers get full access to all the advanced development and deployment
capabilities of the Yellow Box.
III. WHAT IS THE ADVANTAGE OF RHAPSODY?
DEVELOPER BENEFITS
- Possible for the vast majority of code (if not all) to be common across all significant
desktop platforms today. This is in contrast to many current tools which are particular
to a given platform, thus necessitating multiple code sets. Now developers can focus
on the program, and know that they automatically have cross-platform deployment.
Just recompile for whatever platform you are targeting.
- Because developers work from one (or nearly one) set of code, applications have
better code and file compatibility across platforms.
- Application runs native and runs as expected for each targeted platform.
- Great deal of functionality already built into the Yellow Box for fonts, imaging,
etc. This is all free to developers, so you do not have to constantly write the same
code repeatedly.
- Developers can focus on creating robust and truly useful software. Less reliance
on specific operating system vendors, and emphasize on what customers really need.
- Since software and hardware are separated, developers can create applications
that tie into data located on just about any type of hardware (mainframes, minis,
etc). This is critical for heterogeneous enterprise computing.
USER BENEFITS
- choice to use hardware systems which best does their job--whether as a new purchase,
or utilizing existing equipment.
- developers can quickly get versions of programs to run on user�s platform of
choice.
- file compatability should be much easier to attain since programs are compose
principally of one set of code.
- leverage their existing and legacy systems, and be able to upgrade software and
hardware when it makes sense to do so.
- applications run as users expect to see them. Thus programs Rhapsody OS have
the advanced Mac look, on Mac OS look like Mac programs, same for the Windows.....
Training costs are kept under control.
- programs retain functionality regardless of the platform. An example is Display
PostScript. The Rhapsody program has the look and feel of Mac OS or Windows, but
still retains full PostScript functions. Non-Yellow box applications work as always.
- continue to leverage any existing software on their preferred hardware that is
critical for performing their jobs today.
- when the host OS is BSD 4.4/Mach, users can bypass the Yellow Box and just use
the system as a UNIX workstation. There are definitely things the UNIX shell does
very well. However, using the shell is strictly the users CHOICE.
- when the host OS is BSD 4.4/Mach, users can bypass the Yellow Box and just use
the system as a UNIX workstation. There are definitely things the UNIX shell does
very well. However, using the shell is strictly the users CHOICE.
SOFTWARE AVAILABILITY
There is definitely quite a bit of software that will run on Rhapsody today:
- Current Mac OS software via the Blue Box.
- Because the core OS is BSD UNIX 4.4, any software that runs on BSD 4.4 runs on
Rhapsody--you just may need to use the UNIX shell.
- OpenStep applications run on Rhapsody. There are quite a few programs which are
full content creation programs analogous to Office, Ilustrator, PageMaker, cc:Mail,
etc.
- Initial developer reaction to Rhapsody DR1 positive
- OpenStep developers
- Adobe has committed to trying it.
- Id Software (Quake, DOOM) is seriously considering it as platform of choice.
Quake is already ported to Rhapsody. Id Software is big in the PC game market.
- UNIX developers have access to all standard UNIX tools.
- Because of the cross-platform deployment capability of Rhapsody, software which
may be developed with the PC market in mind is automatically available for people
in the Mac and UNIX worlds. Better yet, they do not run crippled--like Microsoft
Office 95 for Mac.
IV. THE OVERALL PICTURE
THE RHAPSODY PACKAGE
- get up to 3 complete and mature OS in 1 package: Mac OS, OpenStep, and UNIX.
- close to 100% compatibility for existing Mac programs.
- full Java platform. Full Yellow box frameworks access to Java.
- superior object-oriented environment for rapid application development. Great
tools for enterprise and distributed computing, and web development.
- cross-platform development and deployment strategy.
- full BSD 4.4 UNIX distribution. Includes BSD command line shells, utilities,
POSIX libraries, programming tools, and other UNIX amenities.
- all major UNIX utilities, servers, and applications been ported to BSD UNIX and
will run without change in Rhapsody.
POWER MAC VERSUS PC COMPATIBLES
Why continue to buy PowerPC hardware?
- Blue box for running Mac OS software.
- Better unity of hardware and software--true plug and play
- Lower maintenance costs, higher return-on-investment
- Better performance--especially with the now shipping G3 systems.
- More stable and reliable with system software upgrades. Windows NT 4 is 16 million
lines of code, and NT 5 is 28 million lines of code-- who knows how many service
packs are needed. These are Microsoft advertised numbers. Rhapsody is about 6 million
lines of code, with about 40 thousand for the core OS.
- User needs and/or preferences
- Access to full Rhapsody package on PowerPC. Run multiple operating environments
from one box.
- Due to plethora of PC hardware possibilities:
- doubtful Rhapsody for Intel will have the same plug-and-play benefits as Power
PC
- reduced hardware and software integration as Rhapsody for PowerPC.
RHAPSODY VERSUS OTHER CROSS-PLATFORM ALTERNATIVES
- Developers who use Yellow Box and no platform-specific features can write programs
once and deploy everywhere on 100% of the modern PC market!
- Commercial cross-platform development products, but expensive and not as advanced
and rich as OpenStep.
- OpenStep superior to the current major alternatives for cross-platform development,
although 100% pure Java is closest reasonable contender.
- Java is an immature technology. AWT and IFC frameworks not nearly as good as
OpenStep. Java applets/applications are interpreted.
- Web CGI gateways and server plug-ins OK for simple tasks, but very limited. Human
interfaces abysmal, even with help of Java applets.
CONCLUSIONS
I hope this has helped in understanding the potential that Apple Rhapsody provides,
both as an architecture and as an operating environment. Judging from the media,
there is still a lot of confusion over what Rhapsody is.
I will be available to keep people updated on any major new developments and releases,
and whatever results I come up with as I am beta-testing the software.
Sincerely,
Larry Peng
Org 8713
510-294-2402
Updated: 12-Feb-1998
This page served by the Augusta Web Server
Webmaster: Bill Catambay