Wie der Bieger schon irgendwo gesagt hat:
An iTunes hängt ein Millionen Geschäft, bei so etwas muss iTunes hochverfügbar sein.
Äh das wäre es auch in Cocoa...
Wie der Bieger schon irgendwo gesagt hat:
An iTunes hängt ein Millionen Geschäft, bei so etwas muss iTunes hochverfügbar sein.
Ich schicke das dann gerne an einen ehemaligen Studienkollegen der maßgeblich an der Entwicklung von Leopard und Snow Leopard beteiligt war.
Ja, wenn die CPUs denn doppelt so viele Register hätten, dann würde das tatsächlich etwas bringen. Hat sie aber nicht, ....
... Leopard: 32-Bit Kernel, 32-Bit KEXTs, 32-Bit Drivers, 64-Bit Unix, 64-Bit Cocoa, 64-Bit Apps
Snow Leopard: 64-Bit Kernel, 64-Bit KEXTs, 64-Bit Drivers, 64-Bit Cocoa, 64-Bit Apps
Mit System meine ich übrigens nicht die GUI die da läuft, sondern das System darunter.
...
So ein Port auf eine völlig andere API ist nicht grade easy, vor allem wenn das Programm noch auf zwei Systemen laufen soll.
KeyWest:/ macmark$ otool -vt /mach_kernel -arch x86_64 | egrep '%rdi|%rsi|%rdx|%rcx|%r8|%r9' | wc -l
217692
KeyWest:/ macmark$ otool -vt /mach_kernel -arch i386 | egrep '%rdi|%rsi|%rdx|%rcx|%r8|%r9' | wc -l
0
Nur x86_64-Code kann diese Register nutzen (und tut das wie hier gezeigt auch). Der i386 (32-Bit-Intel-Code) kann diese Register nicht nutzen und muß die Argumente über den Stack schieben, was langsamer ist.
Allen anderen empfehle ich: Wartet auf 10.7, ich bin sicher, da fliegt der 32 Bit Kern raus.
… Was bringt das …
Das war doch der Zweck von 10.6: Die Entwickler auf 64 Bit (im User- und Kernelspace) bringen.Wenn sich die Treiberentwickler bis dahin nicht mehr so schwer tun 64-Bittreiber zu schreiben...
Der Kernel benutzt die General Purpose Register nicht?…
Ein mal in zwei Stunden ganz bestimmt.
KeyWest:~ macmark$ otool -vt /mach_kernel -arch x86_64 | wc -l
934411
KeyWest:~ macmark$ otool -vt /mach_kernel -arch x86_64 | egrep '%eax|%ebx|%ecx|%edx|%rax|%rbx|%rcx|%rdx|%r8|%r9|%r10|%r11|%r12|%r13|%r14|%r15' | wc -l
548847
KeyWest:~ macmark$ bc
bc 1.06
Copyright 1991-1994, 1997, 1998, 2000 Free Software Foundation, Inc.
This is free software with ABSOLUTELY NO WARRANTY.
For details type `warranty'.
scale=5
548847/934411*100
58.73700
Wir verwenden essentielle Cookies, damit diese Website funktioniert, und optionale Cookies, um den Komfort bei der Nutzung zu verbessern.
Für die Ihnen angezeigten Verarbeitungszwecke können Cookies, Geräte-Kennungen oder andere Informationen auf Ihrem Gerät gespeichert oder abgerufen werden.
Anzeigen und Inhalte können basierend auf einem Profil personalisiert werden. Es können mehr Daten hinzugefügt werden, um Anzeigen und Inhalte besser zu personalisieren. Die Performance von Anzeigen und Inhalten kann gemessen werden. Erkenntnisse über Zielgruppen, die die Anzeigen und Inhalte betrachtet haben, können abgeleitet werden. Daten können verwendet werden, um Benutzerfreundlichkeit, Systeme und Software aufzubauen oder zu verbessern.
Durch das Klicken des Buttons "Zustimmen" willigen Sie gem. Art. 49 Abs. 1 DSGVO ein, dass auch Anbieter in den USA Ihre Daten verarbeiten. In diesem Fall ist es möglich, dass die übermittelten Daten durch lokale Behörden verarbeitet werden.