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



Believe me guys, if Apple decides to replace the kernel, they will choose whatever that be the hardest to crack. That's why I think they're going to use a propietary kernel.

 

Piracy has no bearing on Apple's decisions in regards to this. If Apple wanted to make Mach almost impossible for people like Maxxuss to crack, they could do so without any trouble from the existing platform. Apple is passively allowing for the hacking of Mac OS X to gain popularity with the top 1% of computer users.

Link to comment
Share on other sites

Piracy has no bearing on Apple's decisions in regards to this. If Apple wanted to make Mach almost impossible for people like Maxxuss to crack, they could do so without any trouble from the existing platform. Apple is passively allowing for the hacking of Mac OS X to gain popularity with the top 1% of computer users.

 

Yeah Apple will just use the easier to steal and customize without releasing the source and contribuite back , Passively ? huh that's why there are around 400 retarded cpu checks in the whole os and 100 in coregraphics only. Apple tried they lost against maxxuss it's different

Link to comment
Share on other sites

/* I would point out that there is another version of Darwin using a different kernel already, albeit experimentally. Its Darbat, with the L4 kernel.

 

MkLinux is dead.

 

FreeBSD works well and is open source...This makes it a nono. It would - and does - run on any PC. Anyone seen code for Darwin kernel 7.x recently?

 

*/

 

written on an iBook running Ubuntu Breezy Badger

Link to comment
Share on other sites

Piracy has no bearing on Apple's decisions in regards to this. If Apple wanted to make Mach almost impossible for people like Maxxuss to crack, they could do so without any trouble from the existing platform. Apple is passively allowing for the hacking of Mac OS X to gain popularity with the top 1% of computer users.

 

ANY copmany that believes their software is uncrackable and doesn't need updated to address hacking IMHO, deserves to be pirated to death. Maybe that's why every system update disables the Maxxuss stuff...

Link to comment
Share on other sites

That anand comparison is flawed. It was pointed out that the original comparison of MySQL on OS X with linux was with binaries they compiled with the GCC 3.x compiler instead of the 4.x compiler supplied with Tiger. They also did not compile with the proper compiler flags and make files. Their compiled version was biased towards the linux threading model rather than the mach threading model. Had they used the freely available binaries for OS X or followed the compile instructions for OS X properly with the proper version of GCC, the differences would not be as pronounced.

 

It is true that linux does have some advantages in certain server situations but on the desktop, OS X is optimized to provide a usable and responsive UI.

 

I have every confidence that Apple will continue to improve the performance of XNU borrowing ideas from other kernels to improve performance.

 

It is not always necessary to throw out the baby with the bath water.

Link to comment
Share on other sites

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.

 

Cringely... Cringely! CRINGELY!!! DON'T LISTEN TO CRINGELY DAMNIT!!!! what's the last thing Cringely said about Mac OS X? Wasn't it that Apple would drop Mac OS X for Windows, or was it that Apple would open source Mac OS X, or was it Dvorak? Cringely is a f***ing joke, got it, when he claims some {censored} about Apple it's only to give Slashdotters a good laugh

 

oh yeah I found the last stupid thing our beloved Robert X. Cringely said about Apple : "Cringely Predicts Apple to Ship OS X for Any PC" http://apple.slashdot.org/article.pl?sid=06/04/08/1421229 lol don't listen to Cringely for f***s sake!

Link to comment
Share on other sites

Yes, we all know a monolithic kernel is faster. But the thing that IS OSX is Cocoa. Cocoa is really where Apple has spent it's time developing. The immensity of Cocoa dwarfs Darwin. That's why Cocoa is NOT open source and Darwin is. If they were to change from a mach kernel to a monolithic one, they'd be re-writing all of Cocoa, and I highly doubt that's going to happen from 10.4-10.5. But I do think that the Xen idea actually makes the most sense. Because when it came time to virtualize Windows, Linux, etc. It would by-pass all of the memory management and slowness issues of Mach.

Link to comment
Share on other sites

Plus a hideous change like dumping mach would mean a horrific rewrite (because a lot of apps are Cocoa) of everything in the system. Is there any chance the slowness is due to the nature of the PPC processors themselves (considering Next was originally an X86 system), because the Intel processors really shine with things like system startup compared to even the G5.

Link to comment
Share on other sites

Replacing XNU with FreeBSD's kernel would be no small task. A lot of people think that since OS X/Darwin supports BSD APIs, its kernel must be highly compatible with BSD's. Very much untrue. User-level APIs are one thing, but if you take a look at the kernel calls, they are vastly different. The driver models are also worlds apart. Swapping out the kernel is serious business, although since the Cocoa and Carbon APIs are already cross-platform (Cocoa used to run on top of Windows and Carbon -- at least a subset -- must because of iTunes on Windows) it might be a bit easier than one would think at first glance.

 

And as far as Cringley, he's just another pundit who thinks he knows a lot more than he does.

 

I really don't see serious issues with XNU unless Apple wants to get into big servers. In that case, using the open Solaris kernel might be the best way to go. But OS X performance has improved steadly and is really good now for desktops. I'm not sure why they'd want to abandon all their work.

 

Linux has got some serious issues with drivers in that the driver API changes almost daily. The developers don't want to create a stable API; they just expect you to open source it and let them take care of changes across kernel releases. That's not going to work for a consumer OS.

 

I'm not saying a kernel switch won't happen; I'm just saying it's not quite as simple as everyone might think.

Link to comment
Share on other sites

ANY copmany that believes their software is uncrackable and doesn't need updated to address hacking IMHO, deserves to be pirated to death. Maybe that's why every system update disables the Maxxuss stuff...

 

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.

 

Yeah Apple will just use the easier to steal and customize without releasing the source and contribuite back , Passively ? huh that's why there are around 400 retarded cpu checks in the whole os and 100 in coregraphics only. Apple tried they lost against maxxuss it's different

 

And you think replacing the kernel is an effective solution? Apple knows the Mac OS is going to be pirated... that's been happening for 20 years without the aid of an Intel chip. Big deal. You are drawing way too much from what I said, go back and re-read it.

 

The bottom line here is that some pundit made a prediction with no testing of his own hypothesis. I consider it a pontification, and nothing more. There is zero evidence to show that any kernel besides Mach runs Cocoa any better, and there are tons (literally) of evidence to indicate that this would be the dumbest shell-shock move to hit developers with in Apple history.

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.

And you think replacing the kernel is an effective solution? Apple knows the Mac OS is going to be pirated... that's been happening for 20 years without the aid of an Intel chip. Big deal. You are drawing way too much from what I said, go back and re-read it.

 

The bottom line here is that some pundit made a prediction with no testing of his own hypothesis. I consider it a pontification, and nothing more. There is zero evidence to show that any kernel besides Mach runs Cocoa any better, and there are tons (literally) of evidence to indicate that this would be the dumbest shell-shock move to hit developers with in Apple history.

 

no you misunterstood me , i don't think that swapping kernel will help apple fightning piracy, actually i don't think that apple will swap kernel at all i only said that if they do it will be freebsd because the freebsd license is so open that they can freely steel it without the hassle to provide the source or to contribuite to the project

Link to comment
Share on other sites

Switching to FreeBSD would be like trading in a 2005 BMW for a 1985 Pinto. Sure, the 2005 BMW isn't perfect, but going back to a 1985 Pinto is the dumbest thing anyone would ever do on the face of the earth.

 

Mach already has the necessary licenses from FreeBSD to be fully commercial while only having to publish the technical core changes (to Darwin). And the Darwin community has contributed more than enough to make Apple consider that a wise choice for the development of the Mac OS.

Link to comment
Share on other sites

:D I think that apple will take NTkernel and builing around mac interface

the macos aroud ntkernel das not mean fully compatible with windows

apple will attach new devices drivers and service that is not for windows

in that case apple will reduce time of development by adopting ntkernel

Link to comment
Share on other sites

Personall, I don't see them switching kernels anytime soon. OS X APIs have been a moving target for developers for quite some time now (e.g. the intel transition), so Apple might like to smooth some ruffled feathers by allowing for some stability for a change. Ripping out the kernel and replacing it with another one is nothing you do in a year's time.

 

Furthermore, the intel transition is bound to drain resources inside Apple. If you look at QuickTime performance, you'll see what I mean - there are lots of areas that desperatel call for optimization.

 

Therefore, Apple will stick with XNU for the time being and further refine it. Maybe in some 5 years down the road, when support for current G5 machines has ended, we'll see a completely new kernel arch supported only on intel and sold as MacOS X 11.0.

Link to comment
Share on other sites

I've been following this with interest, especially having just bought a 20" iMac after enjoying OSX on my P4 3.2 box so much.

 

I do not believe Apple will change the Kernel at this stage.

 

I think they they will simply have an Apple X86 virtualization darwine type deal in Leopard if you own an XP license. I'm guessing the experience to be closest to Classic (os9 under OSX on PPC machines) where it can load windows on boot or when a windows app is loaded. windows itself hopefully stays in the background, but the application window can float around with the rest of your OSX apps, and work with expose etc. If you need real deal 100% performance, you can reboot into the same windows instalation. Done properly, this could be an elegant solution.

 

Pretty much the entire screen under OSX is running as an Open GL scene on your video card. Apple should be able to make the windows desktop etc just be a part of that. Running on intel hardware should means this would be quick and snappy, probably without 3d support under windows apps but would be nice if they could.

 

OS/2 Warp did a similar thing. If you installed it with Windows 3.1 already on the machine, you could run windows apps (complete with their own minimise/maxmise buttons) in floating windows with and around your OS/2 native applications. It did this by launcing program manager in the background, hidden.

 

The following is from wikipedia on OS/2's ability to run windows 3.1 apps. I don't think this is so different. OS/2 was a completely different OS from windows/dos, but running on the same hardware. Like OSX on intel machines in more than a few ways.

 

 

From wikipedia:

 

"""Windows 3.x compatibility

Compatibility with Windows 3.x was achieved by adapting Windows GUI code to run inside a 16-bit OS/2 process, rather than above the original Windows kernel. Originally, Windows code was included in the distribution (Windows 3.0 in OS/2 2.0 and Windows 3.1 in OS/2 2.1), but later (OS/2 2.1 for Windows and red OS/2 3.0) versions reused whatever Windows version the user had installed previously, patching it on the fly, and sparing the cost of an additional Windows license.

The process containing Windows was given a fairly extensive access to hardware, especially video, and the result was that switching it in or out could occasionally hang the entire machine.

It could either run full-screen, using its own set of video drivers, or "seamlessly", where Windows programs would appear directly on the OS/2 desktop. This required specially enabled OS/2 video drivers."""

 

 

 

Wine isn't windows, but if Apple have a streamlined way of having windows and explorer.exe running as a process in the background, and when you open a windows .exe file it just runs that program, but due to the custom apple video drivers on this virtual version of windows the application you launch appears alongside your normal windows apps, well this could be cool.

Link to comment
Share on other sites

ps. that Dvorak article was easily was on the funniest things I've ever read. Dvorak is a moron. Period.

 

Sometimes I think Dvorak and Cringley are a team. They both seem to come up with totally outlandish theories, especially about Apple, and either of them is only as accurate as a coin toss, at best.

Link to comment
Share on other sites

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?

 

not sure this guy really knows(has insight/done homework)...it seems to me that:

 

the same MACH kernel has been used in DEC OSF-1/Ditgital Unix/DEC True 64 Unix

all running on DEC/Compaq/HP Alpha Servers and they consistantly are at the top

of the scale for performsnce/speed.....so is this guy saying the Mac OS X is the real issue??

 

It's isn't the kernel as Dec started using it in the 1992 time frame and it is still the kernel

used today on the HP Alphaservers, that are still at the top

of the scale for performsnce/speed......

Link to comment
Share on other sites

I think they they will simply have an Apple X86 virtualization darwine type deal in Leopard if you own an XP license.

 

Dude, why on earth would you need an XP license in order to run a made in Apple Darwine?

Link to comment
Share on other sites

Dude, why on earth would you need an XP license in order to run a made in Apple Darwine?

 

 

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.

Link to comment
Share on other sites



×
×
  • Create New...