image ResEx Logo
ResExcellence www : Powered by Google
Cell Phone Themes Icons Mighty Mouse Cursors Software Reviews Widgets & Widgets


Files are in Stuffit 5 or greater format.
Free download.

Tell us about a bad link.

Thank You!


Running 18 days
without a restart.

An Interview with Samuel Rydh, Lead Programer of Mac-on-Linux - Part II

This open source project has allowed for collaboration with another well know name in the Mac/Linux community, Benjamin Herrenschmidt. His work on BootX has made LinuxPPC available to thousands who normally wouldn't have bothered because of Open Firmware hassles.

How is the work load distributed on an Open Source project like this? Is the majority of coding done by Samuel, some by Ben, and occasional input from others, and do they have virtual online meetings?

"That reflects the work distribution quite well, (but) it is a much looser process. Virtual meetings would be all but impossible due to time-zone differences and the fact that Open Source programming is almost axiomatically a spare time occupation. E-mail, however, is an invaluable tool for discussing idea tossing.

Another great thing with Open Source is the short distance to the end user. This make it possible to fix bugs efficiently and also target the most wanted modifications."

Quicktime playback (click for larger)
It's a little tough to gauge Apple's opinion of the Linux community, but the recent hosting of Benjamin's BootX development page at Apple could mean a warming of relations. Does Apple have any opinion on MOL work? Have they offered any support, or tried to restrict it in anyway?

"No, I haven't had any contacts with Apple. Due to the underlying design choices, MOL does not contain any legally questionable code. However, it might be a violation of Apple's Software License to run MacOS inside MOL on a machine not Apple labeled nor Apple licensed."

That's an interesting point. Apple's software license states the following:

2. Permitted Uses and Restrictions. This License allows you to install and use the Apple Software on a single Apple-labeled or Apple-licensed computer at a time.

So it appears that as long as you run Linux/PPC and a legally purchased copy of the MacOS on an Apple computer (or an older licensed clone), you are not violating the agreement. This will become problematic when motherboards from IBM's PowerPC Open Platform reference design become available. You will not be able to run MOL legally on these machines.

"Well, MOL does not need a Mac motherboard to run - a PowerPC processor is sufficient. It should be possible to run MOL in principal on any machine running PPC Linux (with the reservation that multiprocessor machines are not yet supported).

However, it is certainly true that Apple is the dominating manufacturer of PowerPC based computers. Hopefully, we will see a wider range of hardware in the future.

Unfortunately, it is not possible to port MOL to non-PPC platforms. The technical reason for this is that MOL does not rewrite any part of the Toolbox since this is completely unnecessary on PowerPC based hardware."

But how does MOL work its magic? The responsiveness is excellent on my 266Mhz G3 Powerbook, on a G4 desktop, the performance must by outstanding!

"Basically, MOL does two things; it makes the full PowerPC processor available to MacOS and it installs custom device drivers. The first part is accomplished by low-level kernel code which translates certain OS-level functions of the processor (like virtual memory management) to equivalent requests that do not conflict with the Linux kernel.

In particular, this allows a processor intensive application (e.g. a Photoshop filter) to run with very little overhead since no emulation is involved. Certain video operations (like scrolling) are slower in MOL than in "the real" MacOS, because MOL does not yet support video accelerators. If MacOS is run in an X-window, then there is also extra overhead related to the (slow) X-protocol.

From the above it might be clear the term "emulator" is perhaps not entirely appropriate. Very little is actually emulated. "Runtime environment" might be a better term, but it is not perfect either since it indicates that parts of the toolbox have been rewritten which is not the case.

Times are in seconds. Please email if you would like the specifics.
Mac-on-Linux Benchmarks
Test Native MacOS 9 MOL w/o Xserver MOL w/ Xserver
Photoshop
Texturizer
6 10 12
Photoshop
Rough Pastels
20 25 29
Scroll 215
lines of text
4 22 25
Copy 52 items
22 Meg
8 20 20

When I am working in it, I can easily forget that it's an emulated environment, but there are some pieces missing in the puzzle - sound support and video acceleration.

Mac Netscape in MOL! (click for larger)
Yes, sound support is one of the pieces yet missing. There is however work in progress in this area. The sound support already present in PPC Linux should be sufficient for our needs, I think.

Much performance can be gained by supporting hardware video acceleration. But there are other areas which can be improved too. Different solutions have been discussed. One solution would be to write a MacOS video driver supporting video acceleration. Actual drawing would be performed from the Linux part (either by adding support for certain chipsets directly, or by interfacing a package that provides accelerated video).

(And) Disk storage, for instance, is currently accessed synchronously instead of asynchronously.

From a purely technical standpoint, Mac-on-Linux is an amazing accomplishment. The fact that it is a stable, useable environment for the MacOS under Linux makes it invaluable for the medium to serious Linux user who still needs to run Mac applications or to exchange data, even if it's on an HFS+ partition.

ResExcellence wishes to thank Samuel Rydh for chatting with us about Mac-on-Linux.
For additional information on MOL, visit the projects web site, the MOL FAQ, or join the MOL email list.

Return to page one

Cell Phone Themes Icons Mighty Mouse Cursors Software Reviews Widgets & Widgets

Maintained by the Staff of ResExcellence. This entire site ©1997-2006 ResExcellence
Privacy Statement? Sure we gotta Privacy Statement. [an error occurred while processing this directive]