Emulator x86 w... Javie

Naukowcy z Uniwersytetu Oxford opracowali emulator x86 napisany całkowicie w Javie i pracujący pod kontrolą maszyny wirtualnej. Zaletą takiego rozwiązania jest możliwość uruchomienia go na dowolnej platformie sprzętowej lub systemowej (oczywiście pod warunkiem że jest na nią dostępna wirtualna maszyna Javy).
Twórcy projektu JPC twierdzą, że narzędzie to może być bardzo przydatne podczas testowania różnego rodzaju aplikacji, albo nauki o działaniu wirusów (dzięki JPC będzie można je testować bez obawy, że takie eksperymenty zaszkodzą komputerowi). Dzięki temu, że jest napisany całkowicie w Javie, emulator będzie działał nie tylko na komputerach PC x86, pod kontrolą różnych systemów operacyjnych, ale także na platformach RISC, czy telefonach komórkowych - czyli wszędzie tam, gdzie jest dostępna wirtualna maszyna Javy.

JPC tworzy "wirtualną przestrzeń", na której użytkownik może zainstalować testowany system operacyjny. Oczywiście emulator udostępnia także wirtualnie wszystkie wymagane urządzenia peryferyjne. Jak twierdzą twórcy, dzięki bardzo wysokiemu poziomowi zabezpieczeń udostępnianemu przez Javę, można w ten sposób testować choćby najbardziej niebezpieczne oprogramowanie bez jakichkolwiek obaw.

DOS'owa gra Prince of Persia uruchomina w JPC pod LinuksemKliknij, aby powiększyćDOS'owa gra Prince of Persia uruchomina w JPC pod Linuksem

Projekt jest rozwijany od drugiej połowy 2005 roku, a dotychczasowe przykłady jego działania można zobaczyć na stronie JPC. Jego kod nie został do tej pory jeszcze udostępniony szerszemu gronu użytkowników, gdyż twórcy pracują jeszcze nad modelem licencjonowania.

Więcej informacji.
Ocena:
Twoja ocena:

Komentarze (27)

mario

29-03-2007 22:27

@jabu74: w takim razie cienki jesteś, skoro nie potrafisz sobie poradzić z operacjami zmienoprzecinkowymi w FPGA.

jabu74

29-03-2007 11:10

mario co ty będziesz ojca uczył dzieci robić ! fpga mnie straszysz bo przeczytałeś w wikipedii. akurat siedzę w tym temacie i jestem nie do zagięcia i zdarcia. stałoprzecinkowe obliczenia i owszem, lecz zaimplementuj sobie jednostkę FPU w fpga. albo lepiej kup sobie peceta z zaprogramowanym fpga. powodzenia. viva la Power Architecture. dziękuję za uwagę.

mario

29-03-2007 10:14

@jabu74: nie rozumiesz że procesory nie powstały po to by obliczać, tylko po to by sekwencyjnie wykonywać algorytmy? Zrozum, że procesory nigdy nie będą nadawały się do masowych obliczeń i nigdy nie prześcigną układów FPGA! Więc jakiekolwiek optymalizacje obliczeń po stronie CPU nie mają większego sensu. Oczywiście PPC jest lepszy w tych obliczeniach od x64, ale to tylko kropla w morzu przy układach FPGA. Intel sprawdza się w serwerach bo tam nie ma obliczeń tego typu o których piszesz, więc większa optymalizacja obliczeń zapewniania przez PPC nie ma sensu! A jak potrzebne są prawdziwe obliczenia wysokiej wydajności to wiele firm zastosuje raczej układy FPGA, która mogą mieć kilkaset razy większą wydajność dla konkretnego zadania niż PPC! Rozpoznaj rynek i spójrz obiektywnie na temat. Poznaj technologie. A nie pisz fanatycznie "viva la..." - aktualnie trend jest taki że wszelkie obliczenia specjalizowane są obliczane przez moduł dedykowany a nie główny procesor. Cell sprawdził by się jedynie w jakiś superkomputerach naukowych, gdzie obliczenia są ważne i łatwość programowania w porównaniu do FPGA też ma znaczenie.

jabu74

28-03-2007 18:42

Jednostka FPU w procesorach serii PowerPC miażdży konkurencyjne oszustwo typu intel (tfu!) i amd (tfu!)! dwie jednostki FPU na rdzeń (superskalarność) w najnowszych modelach PowerPC pozwalają na wykonywanie np. 2 instrukcji arytmetyki zmiennoprzecinkowej w jednym cyklu zegarowym (cały czas mowa o jednym rdzeniu). Wynik od razu może być (nie musi) przesłany do trzeciego rejestru (wszystko w jednej instrukcji) - brak konieczności wykonywania dodatkowej instrukcji jak to ma miejsce w x86 (tfu!) ! W przypadku wersji 2-rdzeniowej -> 4 instrukcje w jednym cyklu zegarowym np. dwa mnożenia i dwa dodawania (64-bity !!!). Duża liczba rejestrów ogólnego przeznaczenia (32 stałoprzecinkowe, 32 zmiennoprzecinkowe) to szok dla intela (buhahaha) i amd (buhahaha) ! IBM jest WIELKI ! viva la Power Architecture ! dziękuję za uwagę.

NSPP/SoulEdge

28-03-2007 18:34

@Romanujan Nie testowałem ale zakładam, że wolniej, tym bardziej że ostatnia wersja DosBox 0.70 została znacznie przyspieszona. Jak odpalam np. Heretic 3D to chodzi perfekcyjnie ale Duke3D 800x600 to koszmar. Jeśli chodzi o Heretic i podobne to polecam Deng 1.8.6.

jabu74

28-03-2007 15:33

nieee ! mario to nie prawda ! serwery IBMa oparte na procesorach POWER5 miażdżą inelowskie i amdeowskie badziewie ! a ja chcę również CELLa na płycie peceta ! viva la Power Architecture ! viva la RISC !

mario

28-03-2007 13:36

Dla równowagi daję 5 za artykuł bo nie mam do niego zastrzeżeń. ;-)

mario

28-03-2007 13:31

@jabu74: Przestań się wydurniać. Twoje "viva la ... " i tak niczego nie zmieni! Intel jest aktualnie najbogatszą firmą produkującą procki i wygrywają technologią. Może i procesory PPC są lepsze, ale ze względów biznesowych nie są tak dynamicznie rozwijane jak x86, przez co ich zastosowanie np. w serwerach jest mało sensowne. PCty i tak mają przenoszone ciężkie obliczenia do kart graficznych, przez co sens stosowania PPC też wielki nie jest, a jak już coś potrzeba to są instrukcje SIMD (SSE i MMX). x86 przegrywa np. z prockami ARM wydajnością w urządzeniach bardzo mobilnych (Palmtopy, telefony), bo ARM pobiera bardzo mało prądu i ma przy tym niezłą wydajność. PPC niestety na tym rynku nie wiele zdziała bo ma większe zapotrzebowania na energię i rozmiary. PPC doskonale za to nadaje się do obliczeń multimedialnych, dlatego znalazł zastosowanie w konsolach do gier. Jak widzisz MACi też przeszły na intela bo w rozwiązaniach serwerowych lepszy jest Intel, tam nie potrzeba robić obliczeń DSP i PPC marnował by się w serwerze. Zrozum, że wszystko ma swoje zastosowania!

jabu74

28-03-2007 12:49

oj dzieci neostrady - Xenon to potęga, natomiast xeon to kicz ! viva la IBM ! dziękuję za uwagę.

dociekliwy

28-03-2007 11:04

Ciekawe czy na tym emulatorze można zainstalować i uruchomić Javę... a jeśli tak, to uruchomić na niej kolejny emulator... i w nim kolejną Javę... Ciekawe ile takich zagnieżdżeń wystarczy do zapchania pamięci i procesora :P

gogo

28-03-2007 10:57

to Intel ma Xeony

mario

28-03-2007 07:50

@miska: [[http://pl.wikipedia.org/wiki/Xbox_360]] <-- tabelka z prawej strony z parametrami.

miska

28-03-2007 06:54

Xenon to gaz szlachetny (warunki normalne), Xeon to procesor, viva la Mendelejew! :)

jabu74

28-03-2007 05:38

bossot xbox360 też sobie kupię, tylko poczekam, aż potanieją i wyjdą poprawione nowsze wersje. Xenon w xbox360 ma 3-rdzenie, a i tak deklasuje konkurencję x86 (tfu!). viva la Xenon !

mario

27-03-2007 22:58

Osobiście nie sądzę aby ten emulator musiał być powolny. Zależy od implementacji. Jeśli on interpretuje rozkazy x86 to tak - będzie powolny! Ale jeśli kompiluje kawałki kodu x86 na odpowiedniki w bytecode java (JIT campiler) to będzie szybki, Java VM Sun''a to jest właśnie kompilator JIT i kompiluje w czasie działania java bytecode do kodu natywnego, dzięki temu prędkość działania programów w Javie jest zbliżona do programów natywnych. Niestety przegrywają one wtedy z programami natywnymi ilością zajmowanej pamięci - kompilatory JIT wymagają ogromnych ilości pamięci :-(.

popdruid

27-03-2007 22:21

No - power PC na pokładzie to może być powód do eksperymentów z konsolami... :-))

bossot

27-03-2007 21:57

re jabu74 biorąc pod uwagę obecne (nikłe) zainteresowanie tą konsolą, możesz się nie doczekać. pozatym nie zapomnij postawić obok gaśnicy (ps3 ma zdaje się bezprzewodowe kontrolery, a baterie w "wybuchających" notebookach (bo to one były przyczyzną) były produkcji sony właśnie). a przy okazji dziwie się że nie x-pudło, tam są 4 rdzenie twojego ukochanego powerpc a nie jeden ja w cellu (8 pozostałych to jednostki zmiennoprzecinkowe, coś jak shadery w kartach graficznych albo jednostki see w cpu. w każdym razie nie nadają się do wszystkiego)

jabu74

27-03-2007 21:42

bossot kupię sobie PS3 - tylko poczekam, aż ostaną się jeno na rynku z CELLem z nowszym procesem technologicznym 65nm. viva la CELL !

nobody

27-03-2007 21:35

Romanujan: to jest Boschs

jabu74

27-03-2007 20:56

x86 to takie risc jak z koziej dupy trąbka. ciekawy jestem czy intele (tfu) i amd (tfu!) wykonają w jednym cyklu zegarowym takie działanie d = a * b + c gdzie a, b, c, d to liczby zmiennoprzecinkowe 64-bitowe . Procesory IBMa nie mają z tym żadnego problemu fmadd fp4,fp1,fp2,fp3 - DSP siękłania !! dziękuję za uwagę.

bossot

27-03-2007 20:03

re jabu74 kup sobie konsole, bo odkąd apple przerzuciło się na procesory intela czystego risca się w komputerach nie stosuje (aczkolwiek coś mi się kołacze po głowie że jakiś czas temu procesory x86 to były tak w zasadzie risc (ale nie z taką listą rozkazów jak w popwerpc tylko inną), tyle że zawierały wewnętrznego tłumacza z cisc (a konkretnie x86 właśnie) niewiem czy dalej się tego nie stosuje}.

...

27-03-2007 19:51

jabu74 Powinieneś się leczyć !!!

jabu74

27-03-2007 19:37

czy tej śmierdzącej kupy nigdy się nie pozbędziemy ? cały czas ktoś patykiem grzebie i pełno much się zlatuje ! precz ! viva la RISC ! viva la CELL ! viva la IBM !

Romanujan

27-03-2007 19:23

Ciekawe jak to się ma wydajnościowo do takich rozwiązań, jak Bochs, QEmu, czy DOSBox...

Gunther

27-03-2007 18:29

Na moje oko Mandriva 2006. Dystrybucji jestem pewien, co do wersji mogę się mylić. Projekt ciekawy, ale rzeczywiście prędkość tego musi być powalająca...

intelowo

27-03-2007 17:14

a w ramach projektu Panowie od JPC grają sobie w Prince of Persia - ot jak testują wirusy ;)

Mad Luk

27-03-2007 16:38

Emulator w Javie - to dopiero musi być demon szybkości....

Polecane

PC World z prezentem!

Tak, zamawiam 12 wydań PC World po 14,09 zł każde (zamiast 19,90 zł) od numeru 6/2012.
Dodatkowo program Panda Antyvirus Pro 2012,
chroniący aż 3 komputery, dostanę za darmo.

PC World 6/2012
Nowy numer PC World 6/2011
Razem: 169


  • Z darmową wysyłką
Wyrażam zgodę na wykorzystywanie mojego adresu email do celów marketingowych. rozwiń »

Pobierz bezpłatnego e-booka

20 lat polskiej sieci
Ebook 20 lat polskiej sieci to kompletna charakterystyka polskiego internetu (oraz polskiego internauty). Odpowiadamy na pytanie, jak wygląda nasz kraj na tle bliższych i dalszych europejskich sąsiadów pod względem popularyzacji szerokopasmowych łączy internetowych i rynku mobilnego. Wymieniamy również wady i zalety korzystania z bezpłatnych punktów dostępowych.
Jeśli chcesz otrzymać darmowego e-booka, wpisz swój adres e-mail. Wyślemy Ci go natychmiast!
Wyrażam zgodę na wykorzystywanie mojego adresu email do celów marketingowych. rozwiń »