Jump to content

Will Apple Drop Mach?


Swad

There has been a lot of talk in recent months about the sense in Apple keeping its Mach kernel, a remnant of Steve’s NeXT days. While it certainly presents advantages, its microkernel architecture has serious drawbacks. (Check out that link to get up to speed on the debate)

 

I, Cringely has an interesting take on Windows on Macs and thinks that Boot Camp is a sign that Apple will be dropping the Mach kernel with Leopard.

Don't be surprised, either, to see that OS X 10.5 has a new kernel, finally giving up Mach and a big piece of its NeXTstep heritage. I write this for one thing -- because OS X has kernel problems and needs some help, especially with swap space. I say it also because of the departure of Avie Tevanian, Apple's chief software technology officer, and the guy who hung onto Mach for so long.

 

I have no insider knowledge here, but it isn't hard to imagine an instance where Avie's favored position with Steve Jobs was finally undermined by someone pointing out just these problems, so Avie had to go. That's the way it is with Steve, who sees his people as either part of the solution or part of the problem.

This is a very interesting idea and makes quite a bit of sense. While Apple has improved the speed of the kernel over recent years, it’s still not as fast as it may become by switching architectures. Also, the longer release cycle for Leopard may be so that Apple engineers have time to bring a new kernel up to snuff.

 

It seems that almost every aspect of Apple’s future is up for debate at this point. Where do you stand on the microkernel - good idea or a Mach(o) mistake by Steve?


User Feedback

Recommended Comments



I think it makes no sense for Apple to do anything rash with the kernel. There is still the issue of backcompatibility for developers. Secondly I think using any MS based kernel makes no sense. The mach kernel is much more adaptable then anything else out there (check out the wiki article about it). While the mach kernel is slow, there is good reason they chose it. Its ideal for multi CPU systems.

 

A good alternative would be a Linux Kernel. This would work out well for all involved, Apple would become a cash player in the Linux world, thereby developing and evolving Linux in a way never possible before. With Apple's GUI and the Linux installed base and fans, it would pack a 1 - 2 punch that would be tough to top by MS. Open source has the unique advantage of being developed by people who do it for fun rather then as a job, therefore making things perfect becomes easier for the ??hobbyist?? developers. This would give Apple the capatibility to run anything designed for Linux, and allow any current and new OS X products compiled X code to easily be ported to a different system.

 

Apple has essentially laughed at the computer industry in a sense. They have proven that their software doens't care what it runs on. Heck they could probably make it run on a cell phone if they wanted to. The fact of the matter is it doesn't matter what system they put it on, it will just work (thanks to the geniouses at Apple).

 

All this is interesting speculation though, but if you consider the amount of effort that has been put into the Mach kernel to get it to run on both PPC and Intel, it makes little sense to abandon it this early. I would forsee a merging of some mach tech and linux to make a better version of mach. If Apple were smart they'd free up their reigns a bit and go for the linux crowd, assimilate them and then move forward.

 

 

In my opinion Dvorak is WAY out in left field (in fact I'm not even sure he's playing in the same stadium).

 

There is little to zero incentive for Apple to use a vista or NT kernel unless......

 

If you think about it Apple and MS are a weird kind of necessity to each other. Without Apple, MS would be shut down for monopoly, and without MS there, the same would happen to Apple (think about it Apple makes it all and doens't let anyone else in). Where the two companies differ is how they do it. MS is software proprietary (and makes developers pay for developer kits). On the other hand Apple is hardware proprietary, but is much less software proprietary (by necessity and experience). Its in Apple's interest to make it easy for developers to write for OS X.

 

This in mind I think it makes more sense for MS to try to use technology that is more Apple like. The delays on Vista are proof of this. Apple has a stable kernel which they have proven can be changed and evolved much more easily then Microsoft's.

 

Keep in mind that Mach kernel was designed for 64 bit long before 64 bit was affordable. Dos on the other hand was an attempt to make a copy of Unix. So the heritage of the two products is significantly different. Windows has gained all the attention, while the maturity of Mach has been maintained and evolved over the years. It seems quite clear that a major rewrite of Windows was in order. Upgrading to a 64 bit OS and catching up with all the latest GUI needs as well as maintaining backward compatibility is a major headache for Microsoft (in my opinion). Apple will run into the same problem if they are not careful. So far they have done well to not do this. However if they make to quick of changes it will create a problem similar to the MS Vista Problem.

 

As a last thought, the fact that Steve put Apple dollars into making Windows XP run on Mac hardware, suggests that something unusual might be happening. I wouldn't be surprised if most people are shocked at the next news from Apple. But thats just my speculation.

 

I think the best we can hope for is a hybrid of mach and linux, and maybe a switch to linux. But something with Linux doesn't feel perfect yet. And Steve likes perfect (or darned close to it).

 

BTW does anyone know how to contact Steve Jobs at Apple?

Link to comment
Share on other sites

Please point out somewhere in what I said that leads you to the conclusion that Apple thinks Mac OS X is "uncrackable". Apple is simply satisfied with the tolerance barrier needed to pirate Mac OS. What I said was that Apple has several much more effective options to increase the enforcement of anti-piracy measures besides doing something so drastic as swapping out the entire kernel.

 

I wasn't aiming directly at you as much as it was aimed at those who continually scream that Apple can't secure their OS from being pirated and Apple is awful when it comes to keeping the OS on their own systems, blah blah blah. Thankfully, the rest of the clip was rolled, but you didn't focus on the next sentence. You instead went on and on about the "uncrackable" thing, which wasn't meant to be a stab at Apple.

 

Apple (as well as any other vendor) knows their wares won't be 100% pirate-proof, and any company that thinks their stuff is deserves to be pirated (if for nothing less than to punish stupidity). What Apple is doing is making it rather difficult for everyone to pirate the Mac OS. Each system update disables the Maxxuss patch, forcing people to work in single user mode to restore it (and patches tend to make a program/OS inherently unstable, but let's not get into that). Watch as a future Apple update will disable starting up in single user mode unless you specifically do it from Sysem Prefs as a way to diable the workaround.

Link to comment
Share on other sites

same reason you needed an OS 9 license for classic. Darwine can only do so much without native DLL's which require that you own a copy of XP to use them. I can see Apple requiring an installed copy of XP on a FAT partition as a prerequisite for implementing the Win API inside OS X.

 

{censored}. Darwine/Wine doesn't require you to own a copy of XP therefore Apple *if* it did that wouldn't require you to either, period.

 

And it's not that you need a damn license of Mac OS 9 for Classic, you need Mac OS 9, absolutly nothing to do with a damn license. Once for all, you can't compare Classic with Darwine, it hardly has anything in common.

 

A good alternative would be a Linux Kernel. This would work out well for all involved, Apple would become a cash player in the Linux world, thereby developing and evolving Linux in a way never possible before.

 

Cringely? Is it you?

Link to comment
Share on other sites

{censored}. Darwine/Wine doesn't require you to own a copy of XP therefore Apple *if* it did that wouldn't require you to either, period.

 

And it's not that you need a damn license of Mac OS 9 for Classic, you need Mac OS 9, absolutly nothing to do with a damn license. Once for all, you can't compare Classic with Darwine, it hardly has anything in common.

Cringely? Is it you?

 

ah to hell with it.. i don't like to bite back at a post like this normally... but seriously?

 

1. Darwine/Wine does not in fact require a copy of XP. HOWEVER if you want to use the Windows NATIVE DLL files you are to have a legally installed copy of Windows from which to supply those DLL files. I've used Wine for a long time. It is better to use native DLL's for certain things. Apple is not going to take time to develop everything single DLL from the ground up as clones of the the MS ones. Why would they?! When the user could just install a legal copy of XP and the their Wine like implementation could just use those!

 

from the Wine HQ site:

 

3.1.2. Libraries Settings

 

Likewise, some applications require specific libraries in order to run. Wine reproduces the Windows system libraries (so-called native DLL's) with completely custom versions designed to function exactly the same way but without requiring licenses from Microsoft. Wine has many known deficiencies in it's built-in versions, but in many instances the functionality is sufficient. Using only builtin DLL's ensures that your system is Microsoft-free. However, Wine has the ability to load native Windows DLL's.

 

It's not always possible to run an application on builtin DLL's. Sometimes native DLL's simply work better. After you've located a native DLL on a Windows system, you'll need to place it in suitable place for Wine to find it and then configure it to be used. Generally the place you need to put it is in the directory you've configured to be c:\windows\system (more on that in the drives section). There are four DLL's you should never try to use the native versions of: kernel32.dll, gdi32.dll, user32.dll, and ntdll.dll. These libraries require low-level Windows kernel access that simply doesn't exist within Wine.

 

Now I don't think Microsoft is going to look to well upon Apple if they are telling people to basically *steal* copies of these native DLL's from any old Windows installation they may/may not have rights too. So once again it IS reasonable that Apple could require a Windows XP installation to ensure maximum compatibility.

 

2. You need Mac OS 9. Correct. Which means you need a license to install it. Unless you are supporting the notion of installing a copy of it you have no right to install. My G3 has Classic in OS X. I have OS 9 installed on the machine. I own a legal copy of OS 9 that I purchased in order to have this functionality.

 

3. It is NOT completely different. It is emulating the base of one operating system to be used seamlessly inside of another. It may be technically different, but the ideal is the same. It is on par with classic in X, and even colinux in windows.

 

4. this is WAY off topic from the original post. (i apologize to everyone else)

Link to comment
Share on other sites

And it's not that you need a damn license of Mac OS 9 for Classic, you need Mac OS 9, absolutly nothing to do with a damn license.

 

Everything has to do with a license. You cannot just install Mac OS 9 simply because you have a disc for it. It's for one single use, on one computer.

 

It pisses me off when people think that just because they got the torrent of Mac OS X, that they have the right to install it on any commodity piece of sh*t PC. These are usually the same people who are bitching that Apple is using a TPM chip, and ironically they are the reason that chip is there in the first place. Either that or they are pissed that OS X isn't open source, or it's not free... yada yada, write your own OS and then you can do whatever the hell you want with it.

 

We love mac OS X, but we're trying desperately to hurt the company that makes it.

 

[/rant]

 

I feel better getting that off my chest.

Link to comment
Share on other sites

Everything has to do with a license. You cannot just install Mac OS 9 simply because you have a disc for it. It's for one single use, on one computer.

 

It pisses me off when people think that just because they got the torrent of Mac OS X, that they have the right to install it on any commodity piece of sh*t PC. These are usually the same people who are bitching that Apple is using a TPM chip, and ironically they are the reason that chip is there in the first place. Either that or they are pissed that OS X isn't open source, or it's not free... yada yada, write your own OS and then you can do whatever the hell you want with it.

 

We love mac OS X, but we're trying desperately to hurt the company that makes it.

 

[/rant]

 

I feel better getting that off my chest.

 

woah there. appreciate the sentiment, but we're not trying to hurt Apple. It may not be *legal* but at least installing a torrented copy of OS X on vanilla hardware is doing something that can not be done legally. I have 100% faith in this community and that *most* of us would in fact purchase and install a legal copy if it were available.

 

Installing a torrented copy of OS 9 is something that can be done legally and thus no excuse can be made for installing it without a license.

 

either way as I stated before.. we are way off topic (and I am aware I am not helping that)... let's try to get back on the subject of this thread.

 

just say no to :poster_oops:

Link to comment
Share on other sites

Adaptability(easy of coding)+Parallel Computing+Virtualization

 

 

Imagine a MachKernel moudular Light runing in the 5% of the Dual Core space. Imagine the Quartz runing under the 100% graphic adapter space (Like an other paralel computer, using the vga procesor as central cpu and VGAmemory as their ram) they can use the DMA to comunicate fast.

 

 

The VGA its really a mini-PC under the control of the dual core. In fact you are using only the 5% of the POWER of the machine. The rest will be free to emulate everything you want (Rosseta, Linux, Vista) in a fast way because the mach kernel will be another EFI ring and the graphic system is really another Macintosh independent interface.

 

 

While vista wants to use the native power of the VGA to redraw the screen , Apple can use the VGA as other indeopendent computer!!

 

Using Paralel Computing you can bypass the memory problems ad the Kernel can be open source because is in the VGA KERNEL SYSTEM where you have your "MAGIC" software.

Link to comment
Share on other sites

Does this analysis contribute anything to this discussion?

 

http://www.p2pnet.net/story/8723

 

Linux trumps OS X

 

p2p news feature / p2pnet: Which is faster for stats, Linux or Apple's OS X?

 

Linux, says Jasjeet Sekhon, associate professor, Travers Department of Political Science Survey Research Center at UC Berkeley.

Link to comment
Share on other sites

Does this analysis contribute anything to this discussion?

 

There is not much analysis but the data seems to re-confirm what has been shown on AnandTech. Apple's kernel is a little slow. The only difference is that this guy seems to be showing it in a more general way, as opposed to the problems with OS X running a large number of threads.

 

On side note, for somebody who is supposed to be an Associate Prof. at Berkley this guy's work looks like third rate garbage (but I believe his numbers are accurate).

Link to comment
Share on other sites

Dvorak and his cronies never cease to amaze me with their {censored}.

 

Apple will certainly not use linux IF they do switch the kernels.

 

any developer knows the Linux kernel is in dire need of a complete code audit,

there are so many stupid bugs in linux (/dev/random is one of them) and for apple to switch from

xnu to an open source kernel where they would have to release the source code and allow people to pull apart their proprietry API's

 

Also, i don't think people seem to realise how serious changing kernels is, the kernel is literally the core of the OS and any switch would need rewrites of device drivers and applications that use kernel hooks (apple's kernel is already constantly changing and devs have to keep updating code)

 

But replacing the kernel would be too much for apple at the moment, and cause alot of problems,

it would be like in a game of jenga, replacing one of the pieces at the bottom with a cylindrical piece, then see how that affects everything else.

Link to comment
Share on other sites



×
×
  • Create New...