🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: pl.comp.lang.java
Article #141918

Re: Własna VM

#141918
From: Jaroslaw Szczepankiewicz
Date: Mon, 27 Oct 2008 08:43
60 lines
3545 bytes
> Witam.
> 
> Problem: próbuję ocenić czy wykonalne jest napisanie VM na pewien mały 
> procesor który poza masą zalet ma również wady :)
> 
> a) pamięc rzędu ~64-128kB

jaka pamięć? na kod programu czy RAM?


> b) brak MMU

jezeli to co wyzej ma dzialac na takim rozmiarze ramu (64-128kB) to 
raczej bez sensu aby nie zostawić sobie choć troche MMU gdyż procki z 
takimi RAM'ami maja zazwyczaj MMU (malo tez prockow latwodostepnych i w 
odpowiednich obludowac), po prostu niewiele podrażając platformę 
sprzętowo ma się o wiele większe możliwości i obniża się skalę problemów 
do rozwiązania. Poza tym za malo opisales z czego wynikaja tez 
ograniczenia, masz konkretny procek i chcesz do niego VM napisac czy 
masz okreslone wymagania co do rodzaju programow i szukasz do tego 
procka w okreslonym budzecie. No i czy ma to być projekt ktory jestes w 
stanie zrobic od strony sprzetowej w pseudoamatorskich warunkach 
(odpadaja wszystkie nowoczesne i wydajne ARM'y od 9 wzwyż oparte w 90 
procentach na BGA).

ze swojej strony polecam implementacje JVM w FPGA ktory jest bardzo 
ciekawym projektem:

http://www.opencores.org/projects.cgi/web/jop/overview

dosyć ciekawym wydarzeniem jest wsparcie cześściowo sprzetowego 
wykonywania java opcodu przez nowe procki avr32 (niestety prawie cala 
rodzina jest w BGA) i army (Jazelle)



> Problemem nie jest prędkość. Problemem jest pare elementów które są 
> cieżkie do oceny: np rozmiary stosów wątków i zarządzanie pamięcią 
> której nie dość że jest mało to nie można za darmo reallokować.
> 
> Aplikacja docelowa jest dość złożona (sporo "new", pare wątków itd). Nie 
> ma być wydajna, ale bezustanne new/delete błyskawicznie zapełni pamięć 
> jeśli nie będę kompresował pamięci w locie usuwając dziury - co wymaga 
> podejścia kompletnie innego niż na procesor z wirtualizacją pamięci.
> 
> Zanim powalcze samodzielnie chciałbym zapytać czy ktoś z grupowiczów 
> widział projekt który może wspomóc w tego typu zadaniu bądź ciekawy 
> artykuł?
> 
> Nie wykluczam, że istnieją np. translatory bytecode na inny, łatwiejszy. 
> Może też istnieją jakieś szkieletowe VM do małych systemów wbudowanych 
> których nie mogę odnaleźć.
> 
> Przetrzepuje google od wczoraj szukając jakiś opisów "jak napisać VM od 
> zera dla idiotów na małym systemie" ale nie widzę. W dodatku Google 
> atakuje dalvik/dex i zastanawiam się czy w ogóle warto myśleć o bytecode 
> z class ...
> 
> Może ktoś ma jakieś przydatne wskazówki co wklepać w google?
Technical Details
Message-ID: <ge3uvu$98v$1@news.onet.pl>
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.gazeta.pl!newsfeed.pionier.net.pl!news.nask.pl!news.nask.org.pl!news.onet.pl!not-for-mail
References: <ge1utl$g10$1@atlantis.news.neostrada.pl>

Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.gazeta.pl!newsfeed.pionier.net.pl!news.nask.pl!news.nask.org.pl!news.onet.pl!not-for-mail
From: Jaroslaw Szczepankiewicz <jarrman@poczta.onet.pl>
Newsgroups: pl.comp.lang.java
Subject: Re: Własna VM
Date: Mon, 27 Oct 2008 09:43:38 +0100
Organization: Onet.pl
Lines: 60
Message-ID: <ge3uvu$98v$1@news.onet.pl>
References: <ge1utl$g10$1@atlantis.news.neostrada.pl>
NNTP-Posting-Host: c229-170.icpnet.pl
Mime-Version: 1.0
X-Trace: news.onet.pl 1225097023 9503 85.221.229.170 (27 Oct 2008 08:43:43 GMT)
X-Complaints-To: usenet@news.onet.pl
NNTP-Posting-Date: Mon, 27 Oct 2008 08:43:43 +0000 (UTC)
X-Sender: 1yPJp8PUNhdxRSf3L/7ve6H8Mu1TNeVu
In-Reply-To: <ge1utl$g10$1@atlantis.news.neostrada.pl>
User-Agent: Thunderbird 2.0.0.17 (Windows/20080914)
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit