ad info

 
CNN.com  technology > computing
    Editions | myCNN | Video | Audio | Headline News Brief | Feedback  

 

  Search
 
 

 
TECHNOLOGY
TOP STORIES

Consumer group: Online privacy protections fall short

Guide to a wired Super Bowl

Debate opens on making e-commerce law consistent

(MORE)

TOP STORIES

More than 11,000 killed in India quake

Mideast negotiators want to continue talks after Israeli elections

(MORE)

MARKETS
4:30pm ET, 4/16
144.70
8257.60
3.71
1394.72
10.90
879.91
 


WORLD

U.S.

POLITICS

LAW

ENTERTAINMENT

HEALTH

TRAVEL

FOOD

ARTS & STYLE



(MORE HEADLINES)
*
 
CNN Websites
Networks image


Moving to OS X: A bridge made of Carbon

MacWorld Online

June 27, 2000
Web posted at: 11:07 a.m. EDT (1507 GMT)

(IDG) -- In 1997, when Apple was still charting its OS roadmap, one of its biggest challenges was providing a smooth migration path for current Mac applications. A modern operating system like Rhapsody--as the forthcoming OS was known back then--promised such long-overdue capabilities as protected memory and pre-emptive multitasking.

However, most developers would have to rebuild their applications nearly from scratch to take advantage of the new features, and applications created for the new OS would not run on the old one. The only alternative was the Blue Box--the Mac compatibility environment now dubbed "Classic"--where current applications could run, but without the benefits of a modern OS.

  MESSAGE BOARD
 

Mac developers were not thrilled with this scenario, and some--including Adobe Systems--held out the possibility of shunning Rhapsody. Coming at a time when Apple was still losing bucketfuls of money, it appeared that the company's latest OS scheme might go the way of the ill-fated Copland project.

Fast-forward to Apple's Worldwide Developers Conference, May 1998. Apple had just introduced the iMac, and a month earlier had reported its second consecutive profitable quarter. But developers were still awaiting word on what the company said would be a new Mac OS strategy. The word they would hear was "Carbon."

Carbon, they learned, is a software specification that would provide a bridge to Mac OS X, which Apple revealed as the new name for the next-generation operating system. It defines a set of application programming interfaces (APIs) that developers can use to run the same software on Mac OS 8/9 and Mac OS X.

By making relatively modest changes to their code, developers can take advantage of Mac OS X's modern OS features while retaining compatibility with legacy systems. Soon, developers who had been skeptical about Apple's prospects were making plans to migrate to the new OS.

MORE COMPUTING INTELLIGENCE
IDG.net   IDG.net home page
  MacWorld Online home page
  Moving to OS X: Introduction
  Moving to OS X: Plunging into Aqua
  Moving to OS X: A new Finder
  Reviews & in-depth info at IDG.net
  E-BusinessWorld
  TechInformer
  Questions about computers? Let IDG.net's editors help you
  Subscribe to IDG.net's free daily newsletters
  Search IDG.net in 12 languages
  News Radio
  * Fusion audio primers
  * Computerworld Minute

The basis of life

APIs provide a standard means for one piece of software to access functions within another. Adobe Photoshop plug-ins, for example, use Photoshop APIs to apply filters to bit-mapped images. In a similar way, Macintosh programs use APIs in the Mac OS to access the operating system's underlying functions: drawing windows and dialog boxes on the screen, interpreting mouse and keyboard input, and so on. (Some programs "cheat" by accessing low-level system functions directly, but these are the exception.)

Apple engineers found that most of the APIs in the current Mac OS would work in a modern OS environment. Carbon consists of those "approved" APIs, along with some new ones designed to exploit Mac OS X's more-sophisticated architecture. By sticking to the Carbon APIs and reworking their code to operate within a modern OS environment, developers could move to OS X with relative ease.

Apple says the Carbon APIs cover about 90 percent of the functions used by most current applications. Many of the APIs that didn't make the cut provide support for 68K Macs and other old technologies, what Steve Jobs described as the "crusty barnacles" of the Mac OS.

To demonstrate the ease of developing Carbon applications, an Adobe engineer took the stage during the WWDC 98 keynote to show a prototype Carbonized version of Photoshop that he assembled over a two-week period.

Apple named the technology "Carbon" because the element is the basis of all life forms. The company posted a utility called Carbon Dater that developers could use to determine how much of their source code had to be overhauled.

Carbon applications will take advantage of Mac OS X's modern OS features, but can also function within the confines of Mac OS 8 and 9. Running in their own protected memory spaces on the new OS, Carbon applications won't freeze the system if they crash, and they'll benefit from OS X's pre-emptive multitasking and advanced virtual memory functions. However, Carbon applications lose these advanced OS functions when running under the current system.

Likewise, Carbon applications assume Aqua interface features when running under Mac OS X, but revert to the Platinum appearance in Mac OS 8 and 9 (unless Apple grants the wishes of some users and releases an Aqua theme for the current OS). You can see the difference in the screen shots of AppleWorks 6 running in each environment (see link below).

Carbon is one of three primary application environments in Mac OS X. The other two are Classic, which we covered in Part Four of this series (see link below), and Cocoa, which is designed for creation of brand-new Mac OS X applications.

Slow evolution

The news at WWDC 98 did not cause a flood of new Carbon applications. Apple was still in the preliminary stages of defining the spec, so developers had only a rough idea of which APIs would be included or omitted in Carbon. Apple provided enough information that most developers could begin Carbonizing applications for Mac OS 8 and 9 as part of their regular upgrade cycles.

However, it wasn't until WWDC 2000 in May that developers received the tools they needed to fully Carbonize their applications to run under Mac OS X: Developer Preview 4 (DP4) and a beta version of Carbon development tools for Metrowerks CodeWarrior.

In his WWDC 2000 keynote, Steve Jobs told developers that they had no more excuses to avoid moving applications to Mac OS X. "The train is leaving the station and the time is now," he said. Many sessions at the conference were designed to help developers get on board.

For now, however, only a handful of applications are fully Carbonized. Aside from AppleWorks 6, they include Microsoft Internet Explorer 5 and Casady & Greene's SoundJam MP Pro. The latter two are available in prerelease versions; Apple included a beta of IE 5 on the DP4 CD that shipped to developers last month, and C&G has posted a preview of SoundJam MP that works only with DP4.

Almost all software components in Mac OS X are written in Carbon or Cocoa. The new Finder, for example, is a Carbon application.

What's new

Although Carbon is derived from the current Mac OS APIs, it makes some changes to accommodate Mac OS X's modern OS features and system services. For example, Carbon applications will access memory differently to exploit Mac OS X's protected memory and advanced virtual memory schemes. They'll use new drivers for printers, network cards and other hardware devices; Apple says the revamped I/O architecture in Mac OS X will streamline driver development.

Carbon also introduces the Carbon Printing Manager, which allows applications to take advantage of Mac OS X's enhanced printing capabilities, while also supporting Mac OS 8 and 9's printing system.

Developers who have not yet brought their applications up to speed with recent Mac OS technologies will have to do so. This means using Open Transport instead of AppleTalk Manager, Navigation Services instead of Standard File Package and OpenGL instead of QuickDraw 3D. (A group called Quesa has developed an open-source implementation of QuickDraw 3D that runs on top of OpenGL.)

Apple provides thorough documentation for Carbon on its developer site.

Carbon will be the vehicle that allows familiar Mac applications to make the transition to Mac OS X. But the next-generation OS also includes tools that allow developers to build new applications from the ground up.




RELATED STORIES:
Taking a look at Mac OS X's new Finder
June 19, 2000
Opinion: Apple heads for interface oblivion
May 4, 2000
Aqua: New Mac interface is cool, refreshing
January 25, 2000
Jobs announces new MacOS, becomes 'iCEO'
January 5, 2000
Review: Mac OS 9 boosts Internet access, file sharing, security
October 29, 1999

RELATED IDG.net STORIES:
Moving to OS X: Introduction
(MacWEEK.com)
Moving to OS X: Plunging into Aqua
(MacWEEK.com)
Moving to OS X: A new Finder
(MacWEEK.com)
Moving to OS X: The Classic environment
(MacWEEK.com)
CodeWarrior for Mac OS X
(MacWEEK.com)

RELATED SITES:
Carbon Dater from Apple
Screen shots of AppleWorks 6
AppleWorks
Quesa
Carbon documentation from Apple

Note: Pages will open in a new browser window
External sites are not endorsed by CNN Interactive.

 Search   

Back to the top   © 2001 Cable News Network. All Rights Reserved.
Terms under which this service is provided to you.
Read our privacy guidelines.