MacTech Network:   MacForge.net  |  Computer Memory  |  Register Domains  |  Printer Supplies  |  Cables  |  iPod Deals  |  Mac Deals  |  Mac Book Shelf


  MacTech Magazine

The journal of Macintosh technology

 
 
LUCY Gateway

Magazine In Print
  About MacTech  
  Home Page  
  Subscribe  
  Archives DVD  
  Submit News  
  Submit a Tip!  
  Get a copy of MacTech RISK FREE  
Google
Entire Web
mactech.com
Mac Community
More...
MacTech Central
  by Category  
  by Company  
  by Product  
MacTech News
  MacTech News  
  Previous News  
  MacTech RSS  
Article Archives
  Show Indices  
  by Volume  
  by Author  
  Source Code FTP  
Inside MacTech
  Writer's Kit  
  Editorial Staff  
  Editorial Calendar  
  Back Issues  
  Advertising  
Contact Us
  Customer Service  
  MacTech Store  
  Legal/Disclaimers  
  Webmaster Feedback  
ADVERTISEMENT
Click Here

Volume Number: 13
Issue Number: 4
Column Tag: From The Factory Floor

Avie Tevanian, Apple's New OSMeister

By Dave Mark, ©1997 by Metrowerks, Inc., all rights reserved.

This month's Factory Floor interview is with Avie Tevanian, Vice President of Engineering at NeXT, Inc., and recently appointed OSMeister at Apple. Avie is charged with bringing NeXT's OS technologies together with Apple's and producing Apple's next OS, code-named Rhapsody.

Dave: What will become of the existing Mac Toolbox? Will the investment developers are making in mastering the existing Toolbox be devalued as Rhapsody kicks in? Will Mac apps that run under today's System software continue to run under Rhapsody? If so, will this solution be a compatibility box like MAE?

Avie: Keep in mind that the System 7 based MacOS is going to be supported for a long time and that developers can keep their investment in this architecture and port to Rhapsody at their own pace. Many of the existing toolbox resources are being ported to Rhapsody.

Additionally, most applications that run under System 7 today will run on Rhapsody via the "blue box" which is not an emulation environment, rather it provides native access for System 7 apps at great speeds.

Dave: What can you tell us about the overall Rhapsody architecture? Will it be the OpenStep architecture with some modifications? Will any of the Macintosh architecture survive? Will resources (a la ResEdit) be part of Rhapsody?

Avie: Many aspects of the existing Macintosh architecture will exist in Rhapsody such as QTML (The QuickTime Media Layer). The "yellow box" included in the attached picture represents the new APIs based on OPENSTEP. These APIs will allow developers to build better applications faster. These apps will enjoy new features such as multitasking, multithreading, protected memory, etc. We plan on making these APIs public as soon as possible for developers to become familiar with Rhapsody's capabilities.

Dave: What will be done to make the new architecture thread-friendly?

Avie: The CoreOS has full support for threads, allowing multiple threads of execution to run in parallel on multiprocessor systems. Additionally, there is full support for thread synchronization and communication.

We've worked with multi-threaded programs for a long time. Sometimes they can be challenging to get working correctly. After all, there are a lot of synchronization issues to worry about. However, the multi-threaded model often leads to significant simplification of applications with partitionable functionality yet retains a high degree of state (memory) sharing.

Dave: What can you tell us about the Rhapsody kernel? Will NewOS be based on Mach? The Copland Kernel? A combination of both?

Avie: Fortunately Apple now has the option of incorporating a variety of new capabilities in their "core os" based on a number of kernel choices. We have not yet announced what the primary source base will be. What's important is the fact that it will support true multitasking, protected memory, and SMP. In anycase, I see us drawing on many of the code and ideas from many sources. "[Just as we went to press Apple announced their plans to use a Mach kernel, but not which version of Mach. -Eric]"

Dave: What will the Rhapsody user interface look like? Will it resemble the existing NeXT interface? For example, will the menu bar be the NeXT menu list or the more familiar Mac menu bar?

Avie: Our goal for the UI is to have it maintain the true spirit of the Macintosh while also making it become much more powerful. We'll draw on some of the best aspects of the NEXTSTEP UI and the existing Macintosh UI and deliver a world-class solution.

Dave: Will Objective-C become the standard language for future Mac development? Will there be any role for languages like C, C++, and Pascal? How will non-Objective-C languages work with Rhapsody? Will there be a set of APIs for languages other than Objective-C?

Avie: Metroworks has committed to providing Rhapsody development tools in a variety of languages. In addition, we have committed to start supporting Java based APIs within Rhapsody and expect that these APIs will become much more prevalent over time.

Finally, the Objective-C runtime is a simple ANSI C callable set of api's. It can be called directly from any language. We've found that many developers prefer to program in Objective-C once they've learned it - and learning it is not hard at all. However, we will not force developers to use Objective-C.

Dave: The newsgroups are saying that the performance of C and stack-based C++ is much greater (in terms of function dispatch speeds, for example) than Objective-C. What's your experience in this regard?

Avie: Rhapsody gives developers the option of also writing straight C and C++ code. Objective-C offers dynamic runtime binding giving developers capabilities that aren't possible in C or C++. While there is some overhead to dynamic binding, developers have the choice to statically or dynamically bind their objects in the system. We have had good experience building large systems using the dynamic features of Objective-C (all of NEXTSTEP uses it!). We don't see performance as being a problem at all.

Dave: Again from the newsgroups, there is concern that Display Postscript running on a PC offers some performance concerns. For example, window dragging is perceptibly slower than under NT or Win95, even on a 200Mhz Pentium. Will Display Postscript become part of the new OS? If not, what imaging model will be used?

Avie: Our intent is to use Display Postscript for the imaging model. Users will be impressed with the speed of window operations as well as the flexibility for output devices. In addition, other APIs will be provided for performing fast, direct to screen operations as would be used in multimedia, games, etc.

Dave: What is the plan for Java integration with Rhapsody? With Objective-C?

Avie: Apple is committed to Java and plans on adding Java APIs to Rhapsody. NeXT has already integrated Java into WebObjects such that developers can write their entire program in Java. Fortunately, the Java design is very close to the Objective-C design, with the primary difference being the syntax. In fact, Java was explicited designed with Objective-C-like functionality in mind. Java is a great match for our Objective-C technology, and you'll see us doing lots of interesting things with Java in general.

Dave: Is SOM officially out of the picture for Objective-C? Is there an alternative in mind?

Avie: We haven't looked at this in detail but it seems as though it would be technically feasible for SOM to interoperate with Objective-C.

Dave: Assuming that developers will need to retool and retrain to develop for NewOS, what can you say convince them to make this investment, rather than making the less risky switch over to Windows?

Avie: Rhapsody will allow developers to build new "best of breed" applications. They can focus on adding their own value to their apps rather than spending a lot of time, money and energy trying to make their apps work in Windows.

Further, it is false to assume that a "switch over to Windows" is less risky. In truth, competition in the Windows space is very difficult with shelf space given only to the largest developers with development budgets of tens of millions of dollars. To get your product on Windows you first have to compromise on the features, then you have to fight it out in the market (probably against Microsoft). Developers should be able to build a very nice business off their Rhapsody-based applications!

Avie Tevanian, Vice President of Engineering, is responsible for managing NeXT's industry renowned engineering department. Tevanian started his professional career at Carnegie Mellon University,where he was a principal designer and engineer of the Mach operating system upon which NEXTSTEP is based.

Tevanian joined NeXT as an engineer on the NEXTSTEP team in January 1988. He quickly moved up the ranks and managed the operating system.

Now a recognized pioneer in creating cross-platform development environments used worldwide, Tevanian heads up the engineering teams that make NeXT's current products award-winning and proven.Mr. Tevanian holds a Ph.D. and a Masters of Science degree in computer science from Carnegie Mellon University and a Bachelor of Arts degree in mathematics from the University of Rochester.



Click here to find out more about our best subscription bundle deal ever!
2 years of the magazine, and the all new MacTech DVD ... at 70% off!



Click on the cover to
see this month's issue!

TRIAL SUBSCRIPTION
Get a RISK-FREE subscription to the only technical Mac magazine!
 
 


MacTech Magazine. www.mactech.com
Toll Free 877-MACTECH, Outside US/Canada: 805-494-9797

Register Low Cost (ok dirt cheap!) Domain Names in the MacTech Domain Store. As low as $1.99!
Save on brand compatible and name brank ink jet and laser supplies.
Save on long distance * Upgrade your Computer
Movies with No Late Fees!

See local info about Westlake Village
SJ * BRJ * BJ * OJ * NITS
Staff Site Links



All contents are Copyright 1984-2007 by Xplain Corporation. All rights reserved.

MacTech is a registered trademark of Xplain Corporation. Xplain, Video Depot, Movie Depot, Palm OS Depot, Explain It, MacDev, MacDev-1, THINK Reference, NetProfessional, NetProLive, JavaTech, WebTech, BeTech, LinuxTech, Apple Expo, MacTech Central and the MacTutorMan are trademarks or service marks of Xplain Corporation. Sprocket is a registered trademark of eSprocket Corporation. Other trademarks and copyrights appearing in this printing or software remain the property of their respective holders.