Cookies op Tweakers

Tweakers maakt gebruik van cookies, onder andere om de website te analyseren, het gebruiksgemak te vergroten en advertenties te tonen. Door gebruik te maken van deze website, of door op 'Ga verder' te klikken, geef je toestemming voor het gebruik van cookies. Wil je meer informatie over cookies en hoe ze worden gebruikt, bekijk dan ons cookiebeleid.

Meer informatie

Door , , 26 reacties
Bron: C|Net

Nadat Apple maandag aankondigde over te gaan stappen naar Intel-processors met de bijbehorende architectuur, werd al snel de vraag gesteld of en hoe PowerPC-software zou draaien op de nieuwe Apple-systemen. Dit zal inderdaad mogelijk zijn, omdat Apple een PowerPC-emulator aan het besturingssysteem zal toevoegen. De engine in de emulator, die Rosetta is genoemd, is ontwikkeld door het Silicon Valley-bedrijf Transitive. Wanneer een programma gestart wordt dat alleen voor de PowerPC is gecompileerd, zal Rosetta gestart worden. De emulatorsoftware zal vervolgens alle PowerPC-instructies vertalen naar x86-instructies, zodat het programma zonder problemen zal werken. Vanzelfsprekend is emulatorsoftware nooit perfect, maar Rosetta kan op dit moment al zonder problemen de PowerPC-versies van Adobe Photoshop, Microsoft Word en Microsoft Excel draaien.

Een probleem bij het gebruik van emulators is performance. Transitive heeft zichzelf echter hoge eisen opgelegd om te bereiken dat geëmuleerde software in vergelijking tot native code zo snel mogelijk draait. De vraag is echter hoe goed Rosetta zal werken. Naar mate meer processorbewerkingen gevraagd worden om binaire code te emuleren, neemt de snelheid van de geëmuleerde software echter sterk af. Vaak wordt beweerd dat het mogelijk is een snelheid van 50 tot 60 procent van het origineel te halen, maar wordt vervolgens slechts 30 tot 40 procent gehaald, aldus analist Nathan Brookwood. Apples Steve Jobs is echter tevreden over de prestaties van de emulatiesoftware. Tijdens zijn keynote zei hij dat de software "pretty fast" draait. Het is echter de vraag in hoeverre deze gebruikservaring bepaald is door het systeem dat Jobs gebruikte; een 3,6GHz Pentium 4 met 2GB geheugen.

Het is niet voor het eerst dat Apple in zijn besturingssysteem gebruikmaakt van een emulator om achterwaartse compatibiliteit te waarborgen. Toen het bedrijf in 1994 overstapte van Motorola's 680x0-processors naar de PowerPC-architectuur voegde het bedrijf ook emulatiesoftware aan zijn besturingssysteem toe. Hoewel Rosetta in staat zal zijn om een groot deel van de software te emuleren, heeft het product ook enkele beperkingen. Zo kan software die is geschreven voor de Altivec-instructies van de PowerPC niet geëmuleerd worden en hetzelfde geldt voor software die per se een G4- of G5-cpu nodig heeft. Verder zullen programma's voor Mac OS Classic niet werken en ten slotte zullen kernelextensies niet werken. Apple hoopt echter dat veel ontwikkelaars universal binary's zullen uitbrengen, een binary waarin zowel PowerPC- als x86-code is te vinden voor maximale compatibiliteit.

Moderatie-faq Wijzig weergave

Reacties (26)

Ja emulators schrijven is super moeilijk.. zeker bij zulke complexe cpu's als de powerpc.. met alleen de opcodes vertalen ben je er.. wat een cpu bestaat uit meer dan wat opcodes...

De complete werkingen moet worden nagebootst dus zit er een design-flaw in de te emuleren cpu dan moet die ook in je emulator zitten
Ik denk dat Apple het allemaal goed voor elkaar heeft. Vooral door het feit dat Apple al 5 jaar een OS heeft dat op een Intel processor draait. Sinds de introductie van OS X heeft ome Steve ook een voor de Intel gecompileerde OS X laten maken. En dat gewoon 5 jaar geheim houden. Dat vind ik nu mooi aan Apple.

Maar het is niet iets wat ze aankondigen aangezien Steve al heeft laten zien dat het gewoon draait. Maar we zullen volgend jaar zien welke Mac's er allemaal een Intel processor gaan bevatten. En hoe het zit met verschillende gecompileerde programma's en compatibiliteit.
Je moet bij apple 1 ding sowieso toegeven, ze weten wat marketing is. Sinds de overstap naar x86 bekend is gemaakt, zijn ze geen dag buiten het nieuws geweest.

Er staan vandaag al 4 berichten alleen op t.net die met apple te maken hebben. :P
Er staan vandaag al 4 berichten alleen op t.net die met apple te maken hebben
Maar of dit allemaal positief nieuws is?? Ik denk dat het wel afschrikt, dat de performance af zal nemen door gebruik van emulators. Apple staat immers bekend om zijn kracht m.b.t beeldverwerking. En dat is nu juist iets waar de volle kracht voor nodig is.
De emulator hoeft alleen gebruikt te worden voor de programma's die niet naar Mac OS X / x86 geport gaan worden.

Bij mijn weten hebben Adobe en Microsoft al aangegeven hun produkten te poorten naar Mac OS X / x86.

Edit @Tijger: Een bedrijf moet zelf bepalen of software opnieuw aangeschaft dient te worden. Blizzard heeft in het verleden patches uitgebracht om Diablo 2 en Starcraft op Mac OS X mogelijk te maken (daarvoor waren het Mac OS 9 spellen). Met World of Warcraft is de kans groot dat ze ook patches uitbrengen. Het is niet onwaarschijnlijk dat meer bedrijven een dergelijke aktie ondernemen.
Daarom is het verstandig om over twee jaar (dan pas) de laatste powerpc gebaseerde Powermac te kopen. Tenminste, dat is mijn plan. Software die tegen die tijd ook voor x86 beschikbaar is gemaakt zal dank zij universal binaries ook op de powerpc werken.
Ja, en die mag je dan nieuw kopen voor je nieuwe x86 Mac. Zie je het probleem al?

Wil je nu echt al je software nieuw gaan kopen over 1-2 jaar of zou je programma's die nu goed voor jou werken niet gewoon willen blijven gebruiken?

Edit @macwolf:

Dat zijn games, geen office of creative suites die honderden euro's kosten en van levensbelang zijn voor de maker en ook voor de eigenaar van groot belang zijn.

Het kan best zijn dat er een soort van 'free upgrade' oid komt, tenslotte kan je ook (onder voorwaarden) gratis upgraden naar XP 64 bit maar persoonlijk verwacht ik dat het in de meeste gevallen gewoon geld gaat kosten.
Het gaat er niet om hoe ze over je praten, als ze maar over je praten. :)
Het gaat er niet om hoe ze over je praten, als ze maar over je praten.
Dus Michaeal Jackson verkoopt nu ook meer cd's denk je? }>
JA. (feit) maar vooral de oude. Voor 3 euro bij de FRS op het station :)
Maar Photoshop is er toch al op x86 dus daar heb je dan die emulator toch niet voor nodig.
Photoshop voor Windows is x86 ja, dat helpt je niet echt als OS X op een x86 draait.
Maar om die te gebruiken zou je Virtual PC moeten draaien op je Apple, dus weer emulatie, dus weer trager.
Geen oplossing dus.


Edit: Tijger, je was 2 seconden sneller. :o
Ik snap niet helemaal waarom deze emulator sommige programma's wel en sommige niet kunnen emuleren. Het vertalen van opcodes van de ene proc naar de andere is toch een éénduidige actie?

Dus als de techniek van vertaling goed is, moet zowat elk programma het doen (behalve die die van de meest exotische functies gebruik maken)

Zelfs altivec zou het moeten kunnen doen, wordt door de software wellicht vervangen door een enorme code die op een intel hetzelfde uitrekent, en dus langzaam, maar toch?
Omdat sommige zaken meer cpu kracht kosten om ze te emuleren dan het oplevert dus laat men die zaken weg.

Altivec is een van de slachtoffers daarvan maar de lijst is langer:
Rosetta does not run the following:

* Applications built for Mac OS 8 or 9
* Code written specifically for AltiVec
* Code that inserts preferences in the System Preferences pane
* Applications that require a G4 or G5 processor
* Applications that depend on one or more kernel extensions
* Kernel extensions
* Bundled Java applications or Java applications with JNI libraries that can't be translated
oplevert? je doel is toch compatabiliteit en het is toch logisch dat emulatie capaciteit kost. Dus dan zou de geemuleerde versie 50% in performance zakken tegenover native x86 code. Het levert dan nog steeds hetzelfde op: compatabiliteit vanaf dag 0.
Bedoelde ik niet helemaal, als het emuleren van Altivec zoveel cpu kracht kost dat daardoor het OS in de problemen komt dan is het verstandiger om ervoor te kiezen om Altivec gewoon helemaal niet te emuleren.
Emulatie is een proces dat veel ingewikkelder is dan 'slechts' het vertalen van opcodes. Als je een CPU emuleert moet je alle aspecten van de CPU die aangesproken kunnen worden vanuit een progamma emuleren. Denk hierbij bijvoorbeeld aan registers. Verder zijn er altijd progamma's die gebruik maken van zgn. undocumented instructies, of programma's die juist gebruik maken van de een of andere eigenaardige eigenschap (quirk) van de CPU.

Ga maar na, er is tot op heden nog geen enkele emulator die in 100% van de gevallen identiek draait als het originele systeem. Een goed voorbeeld hiervan is de Vice emulator, die de commodore 64 emuleert. Dit ding is al vele jaren in ontwikkeling, en de C64 is met zijn 6502 en zijn SID/VIC nu niet echt een van de meest ingewikkelde systemen, helemaal als je het vergelijkt met zoiets complex als een PPC. Maar toch zijn er genoeg situaties dat een bepaald programma crasht wegens een illegale opcode. (let op: een opcode voor de 6502, dus de CPU).

-R-

Edit: typo
Maar ik neem toch aan dat het ontwikkelen van nieuwe CPU's en code daarvoor ook in een soort emulator gebeurd. Hoe zit t dan daarmee?
Rosetta emuleert een G3 processor, dus applicaties die alleen maar op de G4 en G5 draaien zullen niet werken. OS X en de meeste applicaties vallen gewoon terug op hun G3 modus, maar bv 64-bit programma's (die alleen op G5 Macs werken) zullen toch echt moeten worden aangepast.
De vertraging zit hem puur in het feit dat de emulator moet "vertalen" naar een voor de processor begrijpbare taal.
Dit nieuws was als gerucht enkele dagen geleden al te lezen op wired.com.

Er werd melding over gemaakt bij de aankondiging van Apple hier: http://www.wired.com/news/mac/0,2125,67767,00.html
en hier:
http://www.wired.com/news/mac/0,2125,67749,00.html

Informatie over deze technologie (die volgens transitive geen emulator mag heten) werd in september 2004 ook op wired besproken in het volgende interessante artikel:
http://www.wired.com/news/technology/0,1282,64914,00.html

Aardig detail in dat artikel is dat de nieuwe XBox met PowerPC chip deze software gebruikt om oude (intel-)XBox software te draaien
Apple heeft ooit sommige PowerPC's voorzien van een insteekkaart met een 486DX2/Pentium t.b.v. het draaien DOS/Windows naast MacOS (zie o.a. http://www.everymac.com/systems/apple/powermac/stats/powermac_6100_66. html ).

Misschien nu tijd voor het omgekeerde: een PC met een PCI-kaart met daarop een G4?

Ik zou er niet van staan te kijken.
het Silicon Valley-bedrijf Transitive
Transitive is een spin-off van de Manchester Universiteit (UK).

Op heise.de lees ik dat bij een test uit 2001 een 1,4 Ghz AMD Athlon gelijk stond aan een ge-emuleerde PowerPC van 1Ghz.

Dat is best redelijk. Er is wel een addertje onder het gras; de architectuur van een Athlon schijnt er beter geschikt voor te zijn dan een P4. :o
Op heise.de lees ik dat bij een test uit 2001 een 1,4 Ghz AMD Athlon gelijk stond aan een ge-emuleerde PowerPC van 1Ghz.
Daar waren wel veel twijfels over, want in veel benchmarks was een G4 van 1 GHz sneller dan de Athlon 1.4.

Op dit item kan niet meer gereageerd worden.



Apple iOS 10 Google Pixel Apple iPhone 7 Sony PlayStation VR AMD Radeon RX 480 4GB Battlefield 1 Google Android Nougat Watch Dogs 2

© 1998 - 2016 de Persgroep Online Services B.V. Tweakers vormt samen met o.a. Autotrack en Carsom.nl de Persgroep Online Services B.V. Hosting door True