No doubt a good microkernel is a nontrivial thing to write but it can be done, has been done and as far as I can tell Mach isn't it:)
Even Mac OS X seem to have some fairly major latency issues and it isn't even a micorkernel [though it does have Mach inside]. I think mach tries to do too many things and has too many of its own system calls to be easily done well.
If indeed the port of the Hurd servers ever happens to go to L4... I will be sure to try it out but as it stands now GNU/Hurd seems to have the same basic problems it did back 1998 when I last dared to run it.
I haven't been running FreeBSD now for almost a month because my job is linux related and the more familiar I am with it the better I do.
I wasn't planning to use FreeBSD again until 5.0 got released which I *think* is slated for the end of the month still [whether it makes it or not is a different situation].
Anyway I hope this driver continues to work on later FreeBSDs as it was a major bummer to not have it the last 2 years I ran this OS.
But you know what... If I had the extra bucks right now I would probably buy one [I am a computer junkie.... ouch my wallet.].
I believe one of the AmigaOSs was the first true multitasking OS on a PC level system in existence... it would be really interesting to see how far they have come now. Linux PPC can't be all that bad either... perhaps even Darwin runs on these things [or could be made to anyway]
Luckilly for me the university I went to didn't teach us tools but techniques and algorithms and how to analyze a problem and attack it.
We used g++ on AIX for C++ courses... I have yet to really use Visual C++.
Many students demanded that we be taught with Visual C++ assuming it would be better for their futures. I think its only better for the resume for companies with bad HR departments who only look for keywords and not people and experiece.
For the same professor who taught both classes. I remember her leaving for the day and coming back in the next morning when I pointed at her and said "YOU!".
She started laughing.... It was a challenge but I got A's on both assignments.
Don't have these sessions unless you have to... they aren't good for the human body but if you must I suggest Dunkin Donut's "Box of Joe". Its a giant coffee drinkbox. I don't even know if they still make it since I don't live near a Dunkin Donuts anymore.
You didn't try NetBSD current. I have a friend with other benchmarks showing context switching and pipe performance of NetBSD to be higher than Linux... He has to publish it though.:)
Normally you would be correct but in this case the personality is not a "mach server" but in the same address space as mach. This just means they both access the same memory regions and the BSD layer isn't as "protected" as it would be if it were a userspace implemented personality.
The reason for putting XNU and BSD together [I bet] is that it reduces the amount of IPC [mach messages and ports] to do Unix things. This should improve the latency of system calls and other things.
Unfortunately the improvement isn't that much from what I can tell. Latency is still pretty high on XNU compared to NetBSD or Linux on the same hardware [I don't know if my friend published his results of some tests he has done so I won't point there]. Anyway I don't know if the version of Mach used in XNU has all the various improvements I have only read about like Mach Continuations [Unix Internals: The New Frontiers Uresh Vahalla] but such things would further improve OS X in general.
The nice thing is if we want to play with this stuff we can. Its !Linux and !FreeBSD so it is good exposure to something else with a slightly different perspective and design. Also if you go to OpenDarwin you can get the source pretty easily and tweak it yourself.... I did a little and ran my own custom kernel on my TiBook for months before I got Jaguar. [UFS implementation logging and exploration... nothing terribly fascinating].
Would you rather we test real nukes instead?.... Didn't think so. Basically this testing is going to happen either in a massive simulation form or with real nukes... take your pick. I think this is good technology.
I should note that there are lots of "custom tailored kernels" out there for clustering. Some of them do things you would never want on your workstation like yank out the entire VM subsystem. Chances are you won't want a good deal of the changes that will be "fruits" of this labor.
Anyone who has been paying much attention around the web should/would have been able to read this information elsewhere just like me:). There are MANY people who knew of this problem existed well before the release of Jaguar.
Perhaps because I look into things and try to tinker and understand them as well as do silly things like assembly language programming I picked up on this sooner than others. This isn't news to a lot of people I hang with...:)
Uhm... This is news? I am not shocked at all. In order to get the product out sooner rather than later they stuck with the old ABI that was used for Motorola 68k[probably wrong but I have had no coffee yet]. Anyway some people say that the performance loss as a result of this "corner cutting" may be up to 7 cycles per function call which just means we should all write our code as inlines and macros:).
Just kidding.... Anyway it may or may not be easy/hard to fix... the problem is now that its out there changing the ABI [the C ABI !!! the way functions get called and parameters get passed] is going to break everything. Maybe they can fix it but not at a significant cost to 3rd party software... I could be wrong and not have thought this out well enough though.
Then wait till 5.0 comes out and use it. As far as I know FreeBSD current is the only Unix running gcc-3.2.1 [prerelease] and they just imported a new gcc snapshot a few days ago [or yesterday.... I forget].
The only Unix I run on my PC right now is FreeBSD CURRENT which is only for the uber-geek or the person who doesn't care when stuff dies:). I am pretty impressed at 5.0's progress as of late. I can't wait till they get it more stable:)
So... like why is this important news? I don't think this would upset any mac user... it might make them laugh a bit that someone would throw away the expensive Mac innards for cheap PC stuff.
:) Of course most newer PC's will outrun a Mac easily but I really dig the Mac experience... especially with OS X:).
I don't even turn my dual MP 1600 system on anymore... it went two weeks before I decided to buy another mouse for it so I could run windows. UT2003 is out though so I may turn it on again today:)
I remember a certain team called Blackdown being quite pissed about all the crap they put up with from Sun when they were trying to do their high quality release of the Java SDK/RE... They were mistreated quite a bit...
What Microsoft did may have been wrong but Sun didn't exactly embrace Open Source and try to win by expanding into everything with Java... Their lack of willingness to make an open standard probably didn't help much either...
1) CDs were probably burned way before yesterday when you got OS X. 2) The use of Open Sourced technology makes it somewhat easier to find bugs and patch them. 3) Someone found a bug... most likely after the CDs were declared to have a "golden image". Companies have a hard time changing deadlines and Apple was not only "on time" with this product but "ahead of schedule" [sure you could say that you want them to wait till they get it right but think of the scheduling costs of all those "100 minutes of OS X" presentations which would have to be moved]
They patched it immediately. All you had to do was start the software update program. The only thing I would have recommended differently is maybe some sheet of paper in the box saying to run Software Update manually to get the update or a notice on www.apple.com about it.
Here here!
:)
No doubt a good microkernel is a nontrivial thing to write but it can be done, has been done and as far as I can tell Mach isn't it
Even Mac OS X seem to have some fairly major latency issues and it isn't even a micorkernel [though it does have Mach inside]. I think mach tries to do too many things and has too many of its own system calls to be easily done well.
L4 compliant microkernels [L4 is a spec and there are implementations of that spec... like Fiasco,/A>] conentrate on doing only a few things very well.
If indeed the port of the Hurd servers ever happens to go to L4... I will be sure to try it out but as it stands now GNU/Hurd seems to have the same basic problems it did back 1998 when I last dared to run it.
I haven't been running FreeBSD now for almost a month because my job is linux related and the more familiar I am with it the better I do.
I wasn't planning to use FreeBSD again until 5.0 got released which I *think* is slated for the end of the month still [whether it makes it or not is a different situation].
Anyway I hope this driver continues to work on later FreeBSDs as it was a major bummer to not have it the last 2 years I ran this OS.
But you know what... If I had the extra bucks right now I would probably buy one [I am a computer junkie.... ouch my wallet.].
I believe one of the AmigaOSs was the first true multitasking OS on a PC level system in existence... it would be really interesting to see how far they have come now. Linux PPC can't be all that bad either... perhaps even Darwin runs on these things [or could be made to anyway]
.... Didn't I compile this on FreeBSD last summer?
(2001)...
Luckilly for me the university I went to didn't teach us tools but techniques and algorithms and how to analyze a problem and attack it.
We used g++ on AIX for C++ courses... I have yet to really use Visual C++.
Many students demanded that we be taught with Visual C++ assuming it would be better for their futures. I think its only better for the resume for companies with bad HR departments who only look for keywords and not people and experiece.
For the same professor who taught both classes. I remember her leaving for the day and coming back in the next morning when I pointed at her and said "YOU!".
... they aren't good for the human body but if you must I suggest Dunkin Donut's "Box of Joe". Its a giant coffee drinkbox. I don't even know if they still make it since I don't live near a Dunkin Donuts anymore.
She started laughing.... It was a challenge but I got A's on both assignments.
Don't have these sessions unless you have to
At least we do where I work... its basically people with the fax equivalent of a war dialer sending us bullshit we don't want
NetBSD 1.6 beats linux in some areas [on PPC]... now if I could just legally get those benchmark results :)
Dave
You didn't try NetBSD current. I have a friend with other benchmarks showing context switching and pipe performance of NetBSD to be higher than Linux... He has to publish it though. :)
Normally you would be correct but in this case the personality is not a "mach server" but in the same address space as mach. This just means they both access the same memory regions and the BSD layer isn't as "protected" as it would be if it were a userspace implemented personality.
The reason for putting XNU and BSD together [I bet] is that it reduces the amount of IPC [mach messages and ports] to do Unix things. This should improve the latency of system calls and other things.
Unfortunately the improvement isn't that much from what I can tell. Latency is still pretty high on XNU compared to NetBSD or Linux on the same hardware [I don't know if my friend published his results of some tests he has done so I won't point there]. Anyway I don't know if the version of Mach used in XNU has all the various improvements I have only read about like Mach Continuations [Unix Internals: The New Frontiers Uresh Vahalla] but such things would further improve OS X in general.
The nice thing is if we want to play with this stuff we can. Its !Linux and !FreeBSD so it is good exposure to something else with a slightly different perspective and design. Also if you go to OpenDarwin you can get the source pretty easily and tweak it yourself.... I did a little and ran my own custom kernel on my TiBook for months before I got Jaguar. [UFS implementation logging and exploration... nothing terribly fascinating].
Its XNU... mach+a bsd personality in the same address space with some FreeBSD userland tools.
Would you rather we test real nukes instead?.... Didn't think so. Basically this testing is going to happen either in a massive simulation form or with real nukes... take your pick. I think this is good technology.
I should note that there are lots of "custom tailored kernels" out there for clustering. Some of them do things you would never want on your workstation like yank out the entire VM subsystem. Chances are you won't want a good deal of the changes that will be "fruits" of this labor.
Anyone who has been paying much attention around the web should/would have been able to read this information elsewhere just like me :). There are MANY people who knew of this problem existed well before the release of Jaguar.
:)
:)
Perhaps because I look into things and try to tinker and understand them as well as do silly things like assembly language programming I picked up on this sooner than others. This isn't news to a lot of people I hang with...
Sorry if I came off sounding arrogant
Uhm... This is news? I am not shocked at all. In order to get the product out sooner rather than later they stuck with the old ABI that was used for Motorola 68k[probably wrong but I have had no coffee yet]. Anyway some people say that the performance loss as a result of this "corner cutting" may be up to 7 cycles per function call which just means we should all write our code as inlines and macros :).
Just kidding.... Anyway it may or may not be easy/hard to fix... the problem is now that its out there changing the ABI [the C ABI !!! the way functions get called and parameters get passed] is going to break everything. Maybe they can fix it but not at a significant cost to 3rd party software... I could be wrong and not have thought this out well enough though.
There is a big difference between OSFMach [the part of XNU that is Mach] and GNUMach [the Mach part of GNU/Hurd].
Yes... they are both Mach but not quite the same.
I wouldn't call the Mach that Tru64 is based on the same kernel as the other two either [its Mach 2.5 I think]
Skip to the happy ending where a 1.3Ghz Power4 beats a 2.2Ghz Pentium 4.:)4 /
http://www.digit-life.com/articles/ibmpower
why do people post this stuff?? Search Ebay... google... you have an internet connection... I know you do you lazy bastard!!!
Then wait till 5.0 comes out and use it. As far as I know FreeBSD current is the only Unix running gcc-3.2.1 [prerelease] and they just imported a new gcc snapshot a few days ago [or yesterday.... I forget].
:). I am pretty impressed at 5.0's progress as of late. I can't wait till they get it more stable :)
The only Unix I run on my PC right now is FreeBSD CURRENT which is only for the uber-geek or the person who doesn't care when stuff dies
Ever see the copyrights when you boot an RS/6000 from IBM? Apple is in there. I don't see any Apple software... must be hardware :)
So apparently religious feelings about a programming language are now deemed insightful on slashdot.... interesting.
So... like why is this important news? I don't think this would upset any mac user... it might make them laugh a bit that someone would throw away the expensive Mac innards for cheap PC stuff.
:) :).
:)
Of course most newer PC's will outrun a Mac easily but I really dig the Mac experience... especially with OS X
I don't even turn my dual MP 1600 system on anymore... it went two weeks before I decided to buy another mouse for it so I could run windows. UT2003 is out though so I may turn it on again today
I remember a certain team called Blackdown being quite pissed about all the crap they put up with from Sun when they were trying to do their high quality release of the Java SDK/RE... They were mistreated quite a bit...
What Microsoft did may have been wrong but Sun didn't exactly embrace Open Source and try to win by expanding into everything with Java... Their lack of willingness to make an open standard probably didn't help much either...
Bah... I am probably talking out my ass again.
1) CDs were probably burned way before yesterday when you got OS X. ... most likely after the CDs were declared to have a "golden image". Companies have a hard time changing deadlines and Apple was not only "on time" with this product but "ahead of schedule" [sure you could say that you want them to wait till they get it right but think of the scheduling costs of all those "100 minutes of OS X" presentations which would have to be moved]
2) The use of Open Sourced technology makes it somewhat easier to find bugs and patch them.
3) Someone found a bug
They patched it immediately. All you had to do was start the software update program. The only thing I would have recommended differently is maybe some sheet of paper in the box saying to run Software Update manually to get the update or a notice on www.apple.com about it.
... but not to all people. Some folks believe that open sourced code should be the only code out there.