Jump to content

AMD Lion Kernel

AMD Lion Kernel

  • Please log in to reply
97 replies to this topic

#61
ham4ever

ham4ever

    InsanelyMac Sage

  • Members
  • PipPipPipPipPip
  • 278 posts
  • Gender:Male
thanks man , hope some good stuff going on :wink2:

#62
Lordadmiral Drake

Lordadmiral Drake

    InsanelyMac Sage

  • Members
  • PipPipPipPipPipPip
  • 384 posts
  • Gender:Male
  • Location:Austria
Hmm, I'll test this one ASAP when I'm back home

#63
leon321

leon321

    InsanelyMac Protégé

  • Members
  • PipPip
  • 59 posts
  • Gender:Male
Hello
I just read previous post

Hello check this AMD kernel for 10.7.4
http://www.osx86.net...do=file&id=2723

Nothing new, same result that previous kernel version
I mean that Finder from DP2 works but not finder from LIon....

I hope to get soon a true AMD Lion kernel for my AMD box :hammer:

Leon

#64
PookyMacMan

PookyMacMan

    InsanelyMac Legend

  • Moderators
  • 1,445 posts
  • Gender:Male
  • Location:Earth–Western Hemisphere, specifically
  • Interests:Computer science, engineering, trumpet performance, and a host of others. :D
I'm going to be looking at some of the Assembly code, and see if I can change the SSSE3 calls to SSE3...not sure if I can, but it's an attempt. :)

#65
leon321

leon321

    InsanelyMac Protégé

  • Members
  • PipPip
  • 59 posts
  • Gender:Male
Still waiting for .....
........ AMD Lion 64 bits kernel

Any news ?

Leon

#66
ham4ever

ham4ever

    InsanelyMac Sage

  • Members
  • PipPipPipPipPip
  • 278 posts
  • Gender:Male
people stopped in the last amd kernel only 32 ,, no 64 support yet

#67
PookyMacMan

PookyMacMan

    InsanelyMac Legend

  • Moderators
  • 1,445 posts
  • Gender:Male
  • Location:Earth–Western Hemisphere, specifically
  • Interests:Computer science, engineering, trumpet performance, and a host of others. :D
From what I can see, what bronzovka changed to get it working on AMD was not in the commpage (written in Assembly), and I believe he is not familiar with Assembly programming. I think the best bet is to wait for nawcom or meklort to release a version with the patched SSSE3 instructions. (I don't know if meklort is working on it, but I do know that nawcom will be; he's just waiting to get his new AMD build, which he said he will hopefully get in May) :)

#68
ham4ever

ham4ever

    InsanelyMac Sage

  • Members
  • PipPipPipPipPip
  • 278 posts
  • Gender:Male
that's good news , hope something soon ,
and goodluck to all Dev"s :star_sunglasses:

#69
Lordadmiral Drake

Lordadmiral Drake

    InsanelyMac Sage

  • Members
  • PipPipPipPipPipPip
  • 384 posts
  • Gender:Male
  • Location:Austria
Nawcom put some news on his blog: http://blog.nawcom.com/?p=941

#70
Lordadmiral Drake

Lordadmiral Drake

    InsanelyMac Sage

  • Members
  • PipPipPipPipPipPip
  • 384 posts
  • Gender:Male
  • Location:Austria
I checked on applelife.ru today and read that bronkovza has quit and lion kernel development for the time being due to lack of time. Seems its now all good old nawcom and andyvand

#71
PookyMacMan

PookyMacMan

    InsanelyMac Legend

  • Moderators
  • 1,445 posts
  • Gender:Male
  • Location:Earth–Western Hemisphere, specifically
  • Interests:Computer science, engineering, trumpet performance, and a host of others. :D
Does he have any source code available for the current kernel?

#72
theconnactic

theconnactic

    Stubborn AMD user

  • Local Moderators
  • 2,533 posts
  • Gender:Male
I think that a good policy would be that, every time an OsX kernel go open source, the first to become aware of it starts a thread here at insanelymac. This thread should be pinned and would provide a window, for all people with enough knowledge of kernel patching and willing to do the patches, to share opinions and results with themselves and the OsX community, as well as an oportunity to the less-skilled to learn and, hopefully, contribute with something - sometimes good insights come from where they're less expected.

Pooky, RAW X86 shared the codes of his patched AMD kernel: take a look at http://osx86.co/f100...-kernel-t7687/. Where does Apple publish the source cordes of its own vanilla kernels when they become open source (lion's should be open source by now, or else we wouldn't have our patched ones)? It would be good to give a close look at it and compare it to the patched kernels, so we eventually have a (much-needed) AMD_64 Lion kernel (which, by its turn, would be a great starting point for a legacy must-be-64-bit

#73
PookyMacMan

PookyMacMan

    InsanelyMac Legend

  • Moderators
  • 1,445 posts
  • Gender:Male
  • Location:Earth–Western Hemisphere, specifically
  • Interests:Computer science, engineering, trumpet performance, and a host of others. :D
Apple releases the sources for their kernel(s) here: http://opensource.apple.com/ You can just click one of the Mac OS X versions in the list, and download the xnu file at the bottom of the list.

I'll do my best; the main issue is that the SSSE3 instructions (required for 64-bit on Lion) have to be translated to SSE3 for non-Bulldozer AMDs, and I'm not very experienced in Assembly. However, I'll do my research and see what I can find. :)

#74
theconnactic

theconnactic

    Stubborn AMD user

  • Local Moderators
  • 2,533 posts
  • Gender:Male
Great, Pooky! Good luck! If you manage to do it, it hopefully will help in a Mountain Lion legacy kernel development.

#75
theconnactic

theconnactic

    Stubborn AMD user

  • Local Moderators
  • 2,533 posts
  • Gender:Male
Sorry if it shows my utter ignorance on the subject, but the ssse3 instructions emulator must necessarily be written in assembly?

#76
user_hostile

user_hostile

    InsanelyMac Protégé

  • Members
  • Pip
  • 4 posts

Sorry if it shows my utter ignorance on the subject, but the ssse3 instructions emulator must necessarily be written in assembly?


A high level language, (aka as an HLL, e. g., C, Java, etc.) can be thought of as the Sargent who orders a private to dig the trenches. Assembly language can be thought of as the private who actually does the digging. In other words, assembly language is closer to the actual machine language that the processor uses than the HLL.

In the early days of compiler design, not much effort was put into creating the most efficient implementation of an algorithm, and higher compiled languages typically ran slower then they should. In those cases where you needed responsive code (say communications on a PC), assembly language was used instead. It's also very tedious to write and rather boring, because one HLL statement can involve from as few as one (shift) to a as many as several hundred (so I was told, other's can correct me). (I recall that OS2 v2.0 was written in assembly! Which was the only way they could ensure a GUI worked responsively on a 80286 at the time; check out MS Windows for 286 and you will understand why.)


Since then, compilers have come a long way in implementing clever short-cuts in code. Nowadays, there's very little to be gained to the point that you'd be challenged to write an assembly level version. But when new instruction come out, there's a learning curve involved with implementing them in an efficient manner in a compiler. Hence, we're better off writing at the assembly language level.

From what little I see on wikipedia, I note that there are 16 discrete instructions for SSSE3. Presuming the various different kinds of execution for each instruction, we're looking at a lot of assembly instructions.

The other problem is that fact that the hardware that can't be use the SSSE3 instruction is now obsolete. As time goes on, more folks will upgrade to hardware and the demand incentive to emulate SSSE3 will fade away. Unless there's a concerted effort by folks on this and other boards to make the patch for a working 64-bit 10.7 and beyond using AMD's sans SSSE3 will be gone by the end of the year.

At least that's my take on it, YMMV.

#77
PookyMacMan

PookyMacMan

    InsanelyMac Legend

  • Moderators
  • 1,445 posts
  • Gender:Male
  • Location:Earth–Western Hemisphere, specifically
  • Interests:Computer science, engineering, trumpet performance, and a host of others. :D

Sorry if it shows my utter ignorance on the subject, but the ssse3 instructions emulator must necessarily be written in assembly?

To add to user_hostile's point, an SSSE3 emulator is unnecessary. With the old SSE3 emulator in years past, that was necessary because the kernel and many applications (and Rosetta) used SSE3. Here with SSSE3, the instructions (AFAIK) are only in the kernel and not in applications; therefore an on-the-fly dynamic emulator is not needed, but rather some brilliant mind needs to translate the SSSE3 instructions to SSE3 so it is a static (doesn't change) translation. :)

#78
theconnactic

theconnactic

    Stubborn AMD user

  • Local Moderators
  • 2,533 posts
  • Gender:Male
Is there somewhere a starter guide for devs in AMD assembly (or x86 assembly, if it's not any difference)? No, just kidding: i have barely basic knowledge of c-type languages and unfortunately don't have the time and skills necessary to do the task. Let's hope for something from Nawcom, if he's really better from his health issues, or for some undiscovered pro-AMD talented person to show up.

#79
user_hostile

user_hostile

    InsanelyMac Protégé

  • Members
  • Pip
  • 4 posts

To add to user_hostile's point, an SSSE3 emulator is unnecessary. With the old SSE3 emulator in years past, that was necessary because the kernel and many applications (and Rosetta) used SSE3. Here with SSSE3, the instructions (AFAIK) are only in the kernel and not in applications; therefore an on-the-fly dynamic emulator is not needed, but rather some brilliant mind needs to translate the SSSE3 instructions to SSE3 so it is a static (doesn't change) translation. :)


And you fought my ignorance. So if I understand this problem, it's matter of taking the source code of the kernal, compiling it into assembly, doing a search for the instruction, swapping it out with a macro, and living happily ever after, right?

I'm only trying to understand the scale of the work involved here (the SSSE3 to SSE3 conversion is a separate issue)

#80
PookyMacMan

PookyMacMan

    InsanelyMac Legend

  • Moderators
  • 1,445 posts
  • Gender:Male
  • Location:Earth–Western Hemisphere, specifically
  • Interests:Computer science, engineering, trumpet performance, and a host of others. :D

Is there somewhere a starter guide for devs in AMD assembly (or x86 assembly, if it's not any difference)? No, just kidding: i have barely basic knowledge of c-type languages and unfortunately don't have the time and skills necessary to do the task. Let's hope for something from Nawcom, if he's really better from his health issues, or for some undiscovered pro-AMD talented person to show up.

Haha actually there are good Assembly guides out there; it's not the most complex language! :D

Yeah, nawcom healthwise is doing great, haven't seen any activity on his blog in a while though. He's still on irc.osx86.hu, which is a good sign. :)

And you fought my ignorance. So if I understand this problem, it's matter of taking the source code of the kernal, compiling it into assembly, doing a search for the instruction, swapping it out with a macro, and living happily ever after, right?

I'm only trying to understand the scale of the work involved here (the SSSE3 to SSE3 conversion is a separate issue)

Very close. Basically in the kernel source there are a bunch of C headers and C files, along with Assembly files for certain kernel instructions. So basically one goes into the source, modifies the Assembly files as needed, and compiles. :)





Also tagged with one or more of these keywords: AMD Lion, Kernel


0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users

© 2014 InsanelyMac  |   News  |   Forum  |   Downloads  |   OSx86 Wiki  |   Mac Netbook  |   Web hosting by CatN  |   Designed by Ed Gain  |   Logo by irfan  |   Privacy Policy