InfiniteMac OSx86

InfiniteMac OSx86 (http://infinitemac.com/forum.php)
-   Lion 10.7 (http://infinitemac.com/forumdisplay.php?f=100)
-   -   10.7.4 AMD Kernel (http://infinitemac.com/showthread.php?t=7687)

misterfrista 07-25-2012 08:31 AM

I´ve tried the latest Xcode yesterday just for fun.
At least I am able to install it successfully with the latest kernel.
I´m also able to install the Commandline utils etc.
Compiling things with xcodebuild runs fine, but building the kernel is a no-go as cxxfilt gives errors with make command!

Its not important for me, just wanted to see it myself ;)

Seems like at least the commandline utils work as I am able to compile and use Macports without any problem!

fxspec06 07-25-2012 09:29 PM

woah.

i'm not going to say too much here

but thanks to r a w and this thread, i've got lion running in VM, FINALLY running all the osx apps full throttle without crashing

i've learned a lot along the way about osx86

big kudos to r a w for this kernel and the insn patch.

i only wish it natively supported my dual 7770s ;)

but, i can live. thanks

fxspec06 07-25-2012 09:35 PM

and also, completely disregarding the forum's double post rules.....

http://i660.photobucket.com/albums/u...kane20clap.gif

THANK YOU

;) (Y)

The Connactic 07-27-2012 06:57 AM

"@@ -292,6 +292,10 @@
panicstr = str;
paniccpu = cpu_number();
panicwait = 1;
+
+ kdb_printf("In case you read this there has been a kernel panic.\n"
+ "There is no ----ing support for running Lion on AMD.\n"
+ "You have to try fixing this yourself.\n\n");

PANIC_UNLOCK();""

Taking a look at your code, RAW, i couldn't let this piece go without any comments: you're an artist! Reading this message at my first kernel panic with your kernel made me laugh out loud even being mad about my system crashing. It was sort of relieving in the face of utter frustration. Congrats!

The Connactic 07-27-2012 07:18 AM

Seriously, one question: your kernel is i386, as you said before, since it's based on anterior patched kernels (AndyVand, Bronzovka) that are all i386. But the original vanilla kernel - correct me if i'm wrong, please, here i'm way beyond my field of knowledge - is x64_86, right?, and those i386 patched kernels are all based in this single x64_86, is that correct?

So why is not possible to build a AMD_64 kernel based on x64_86? Why the patched ones seemingly have to be 32-bit? Or did Apple release a dumbed-down kernel as open source? Thank you in advance.

The Connactic 07-27-2012 07:23 AM

Another one: is there any public knowledge base provided by AMD, where one can look for especifications of, say, Bulldozer CPUs and how low-level and higher-level programming should be projected for them?

That long set of hex numbers, are them assembly code? If yes, are they the original assembly code of vanilla (therefore, intel assembly)?

hhxq 07-27-2012 10:08 AM

Quote:

Originally Posted by R:A:W:X86 (Post 58212)
I have no problem using the same kind of onboard device on both setups...
Maybe try to delete the device from Network.prefpane then readd it?



How-To patch:
https://developer.apple.com/library/...1/patch.1.html

How-To compile:
http://objc.id.au/post/10101528120/c...-x-10-7-kernel

thank you!:)

R:A:W:X86 07-27-2012 01:31 PM

Quote:

Originally Posted by The Connactic (Post 58238)
Seriously, one question: your kernel is i386, as you said before, since it's based on anterior patched kernels (AndyVand, Bronzovka) that are all i386. But the original vanilla kernel - correct me if i'm wrong, please, here i'm way beyond my field of knowledge - is x64_86, right?

Nope.
The Vanilla Kernel in 10.6 & 10.7 is a fat binary that contains an i386 and a x86_64 Kernel.

On a real Mac it i.a. depends on wether the Firmware is 32 or 64-Bit what can Kernel is / can be loaded.

The i386 Kernel still allows running 64-Bit applications, in case of a compatible CPU.
Support for non-64-Bit CPUs has been dropped in 10.7 (even from the 32-Bit Kernel), though it is reimplemented in the patched Kernel, as this "compatibilty / legacy mode" is currently the only way to boot 10.7 using non-SSSE3 CPUs (all old AMD).

In 10.8 the Kernel is 64-Bit only, so even Intel Macs with 64-Bit compatible CPU, but 32-Bit Firmware are dropped from support.

As for 10.7 it is rather unimportant wether you are booting i386 or x86_64 Kernel (speaking for owners of fully compatible / SSSE3 capable CPUs) - it does not have influence on the applications you are running - most likely it will only matter for you in case you have some 3rd party Kernel Extensions, i.e. printer drivers that are either i386 or x86_64 only.

Quote:

So why is not possible to build a AMD_64 kernel based on x64_86?
Why the patched ones seemingly have to be 32-bit? Or did Apple release a dumbed-down kernel as open source? Thank you in advance.
Well it is possible to build the x86_64 Kernel from the patched source code.
But for some reason it does instant reboot on AMD setups, while it works on my Vanilla capable machines.

The latest 10.6.8 Kernel are the same - most AMD people encounter either instant reboot or AppleACPIPlatform.kext Panic when attempting to boot the x86_64 Kernel.

If someone is curious to try it himself, here is an universal build of the latest Kernel patch - use arch= flag to advice the Kernel you want to boot.

Quote:

Originally Posted by The Connactic (Post 58239)
Another one: is there any public knowledge base provided by AMD, where one can look for especifications of, say, Bulldozer CPUs and how low-level and higher-level programming should be projected for them?

Well the AMD Developer Central contains some documentation, but it ain't that up-to-date as desireable...

Quote:

That long set of hex numbers, are them assembly code? If yes, are they the original assembly code of vanilla (therefore, intel assembly)?
Those are copyspace for binary injection of an autpatching dyld and a SSE3 emulator.
I don't see a reason to look into the rebasement of dyld (the released source code is incomplete), as 32-Bit Apps are working just fine by binary patching of sysenter traps - there is not any software left that peforms CPUID checks in -legacy mode either.
Injection of a SSE3 emulator is also pretty unimportant (for obvious reasons I think :D), but the methods of Kernel integration could be modified, in case someone could write an SSSE3 emualtor that works the same style as the old SSE3 one...

The Connactic 07-27-2012 05:09 PM

Thank you, RAW!

The Connactic 07-31-2012 07:31 PM

Well, Mountain Lion is here. For we AMD users, three options: change to Intel, stuck with Lion i386 64-bit suporting on FX line (or Snow Leo with full functionality for all other AMDs) or hope, crossing fingers, that someone wise enough to patch a working arch x64_86 kernel pops out of the blue.

RAW, i tried the 64-bit kernel. Instant reboot, as you told me. But, remember, i have a plain Athlon II x2. No ssse. So the question is - assuming the problem affects Bulldozers as well - why does this happen? Any clue?