Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Why we need JVM ?

[es] :: Java :: Why we need JVM ?

[ Pregleda: 5129 | Odgovora: 17 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

Neflernis

Član broj: 6304
Poruke: 262
*.neobee.net



+1 Profil

icon Why we need JVM ?25.05.2003. u 13:49 - pre 224 meseci
(odgovor moze i na srpskom, mrzelo me da prevodim jer sam slao na strane forume)

this is probably stupid question but it bothers me a lot so i must ask.

In most java books it is explained what is JVM but the explanation why acctualy we need it is quite strange for me. So, here is how i see it:

We have say C++ and its compiler for Windows or Linux or some X operating system. But in Java we have first compiler to byte code and than JVM one for Windows one for Linux and one for some X operating system. It seems to me like double work !

Ain`t sufficient to write compilers who compile the exact syntax ? For example i write C++ code and than compile it with Windows compiler or Linux compiler and it does the same ?!

tia
 
Odgovor na temu

cedomir
Čedomir Rosić
Sys. Ing.
xObrenovac, Karaburma

Član broj: 4570
Poruke: 193
*.ppp-bg.sezampro.yu

Jabber: cedomir@elitesecurity.org
ICQ: 59161631


+1 Profil

icon Re: Why we need JVM ?25.05.2003. u 15:43 - pre 224 meseci
Ne samo da za Javu nemas 2 kompajlera nego nemas ni jedan!

Kada napises imefajla.java fajl njega naredbom
Code:
javac imefajla.java
prvo prevodis da bi dobio imefajla.class fajl a onda ga naredbom
Code:
java imefajla
interpretiras - JVM ga procita i izvrsi njegove naredbe...
http://www.beoblues.com
blues in belgrade - bluz u beogradu
belgrade in blues - beograd u bluzu
 
Odgovor na temu

c00l_daem0n
Beograd

Član broj: 309
Poruke: 294
*.telekom.yu

Jabber: andrew@elitesecurity.org
ICQ: 53650656


Profil

icon Re: Why we need JVM ?25.05.2003. u 16:07 - pre 224 meseci
Na ovoj adresi http://www.codeproject.com/dotnet/clr.asp imas sjajan text, mada objasnjava slicnosti i razlike izmedju .NET-ovog CLR-a i Javinog JRE-a, ali u sustini saznaces kako sve to radi.
Would you translate me on the other page in face = Da li biste me preveli na drugu stranu ulice
 
Odgovor na temu

Gojko Vujovic
Amsterdam, NL

Administrator
Član broj: 1
Poruke: 13651



+163 Profil

icon Re: Why we need JVM ?25.05.2003. u 19:33 - pre 224 meseci
Ukratko, prevodi se u java byte code zbog portabilnosti što je jedan od prvobitnih ciljeva Jave. Jedino na ovaj način će ti isti kompajliran kod raditi na svim platformama jer se u suštini izvršava u jednoj virtuelnoj - JVM, bez obzira na arhitekturu kompjutera o kojoj je reč.

Da im portabilnost nije bila bitna, pravili bi direktan kompajler, ali time bi dobio exe fajl u windowsu na primer od koga bi imao slabe koristi na mac-u ili linux-u, i slično.
 
Odgovor na temu

leka
Dejan Lekić
senior software engineer, 3Developers
Ltd.
London, UK

Član broj: 234
Poruke: 2534
*.racasse.se

Sajt: dejan.lekic.org


+2 Profil

icon Re: Why we need JVM ?28.05.2003. u 13:03 - pre 224 meseci
- Sto takodje postoji, i zove se JAVA Native Compiler ...
Dejan Lekic
software engineer, MySQL/PgSQL DBA, sysadmin
 
Odgovor na temu

srki
Srdjan Mitrovic
Auckland, N.Z.

Član broj: 2237
Poruke: 3654
*.ihug.net



+3 Profil

icon Re: Why we need JVM ?28.05.2003. u 13:50 - pre 224 meseci
A sto java radi kao interpeter? Zasto ne bi mogao da kompajlira u native formu taj kompajlirani kod pa onda da ga izvrsava? Tako bi mogla i java da ima brzinu c-a. Ili jednostavno sto mora da java byte code bude portabilan. Dovoljno je da sam source bude portabilan pa dalje neka se kompajlira u native formu. Nesto kao ansi-c ili iso c++.
 
Odgovor na temu

tOwk
Danilo Šegan
Zemun/Beograd

Član broj: 94
Poruke: 2743
*.beograd-3.tehnicom.net

ICQ: 9344053
Sajt: alas.matf.bg.ac.yu/~mm011..


+2 Profil

icon Re: Why we need JVM ?28.05.2003. u 14:11 - pre 224 meseci
Pa to bi bilo još sporije.

Zamisli da svaki korisnik mora da ima Java kompajler (umesto samo Java VM), i da pri svakom pokretanju programa mora da čeka na njegovo prevođenje!

Pa to je besmisleno i mnogoooo sporije! Ili si ti možda mislio da treba spremiti izvršne fajlove za „sve“ platforme (gde si uključio Windows, GNU/Linux, MacOS, možda neki BSD i još par sistema, a ostalih 5491 na ovom svetu neka se nose, a? :-))

Možda se moje mišljenje promenilo, ali ne i činjenica da sam u pravu.
 
Odgovor na temu

Dragi Tata
Malo ispod Kanade

Član broj: 1958
Poruke: 3906
199.171.112.*



+6 Profil

icon Re: Why we need JVM ?28.05.2003. u 18:13 - pre 224 meseci
U principu, postoji JIT

http://wwws.sun.com/software/solaris/jit/

mada je Java spora i sa njime.
 
Odgovor na temu

srki
Srdjan Mitrovic
Auckland, N.Z.

Član broj: 2237
Poruke: 3654
*.ihug.net



+3 Profil

icon Re: Why we need JVM ?28.05.2003. u 18:20 - pre 224 meseci
Citat:
tOwk:
Pa to bi bilo još sporije.

Zamisli da svaki korisnik mora da ima Java kompajler (umesto samo Java VM), i da pri svakom pokretanju programa mora da čeka na njegovo prevođenje!

U pravu si.

Citat:
Pa to je besmisleno i mnogoooo sporije! Ili si ti možda mislio da treba spremiti izvršne fajlove za „sve“ platforme (gde si uključio Windows, GNU/Linux, MacOS, možda neki BSD i još par sistema, a ostalih 5491 na ovom svetu neka se nose, a? :-))

Pa ako mogu da naprave java virtual machine za svaku od tih platformi zasto onda ne bi mogli onda bi jos lakse bilo da su umesto toga pravili kompajere za te masine. I onda ne bi bio problem da svako na svojoj masini spremi te fajlove za svoj procesor ( ne da pri svakom pokretanju kompajlira).
Znaci java code bi i dalje bio portabilan a ne kao sada i java code i java byte code.
 
Odgovor na temu

tOwk
Danilo Šegan
Zemun/Beograd

Član broj: 94
Poruke: 2743
*.beograd-3.tehnicom.net

ICQ: 9344053
Sajt: alas.matf.bg.ac.yu/~mm011..


+2 Profil

icon Re: Why we need JVM ?28.05.2003. u 18:51 - pre 224 meseci
Srki, ideja je u tome da Java bytecode radi i na budućim platformama koje imaju JVM.

Ako ja sad napravim neki super-uređaj na nekoj novoj platformi koji podržava Javu, svaki Java program će raditi, bez potrebe za prekompajliranjem.

Znači, umesto da teram sve koji pišu Java programe da ih prevedu za konačan broj postojećih platformi, i čim izađe neka nova da ih opet prevode, dovoljno je da jednom prevedu, i to je sve.

Možda se moje mišljenje promenilo, ali ne i činjenica da sam u pravu.
 
Odgovor na temu

dejankr
Dejan Krsmanovic
JavaEE programer
Beograd

Član broj: 7842
Poruke: 384
195.178.47.*



+1 Profil

icon Re: Why we need JVM ?02.06.2003. u 12:00 - pre 224 meseci
Jedna napomena.
Sve skorije verzije Jave imaju uključen JIT (Just In Time Compiler) po defaultu. To znači da se Java PREVODI u izvršni kod pri svakom pokretanju automatski. Doduše, ovo i nije baš uvek tačno jer sama JVM odlučuje šta će i kada prevesti u nativni kod tako da neke metode koje se retko koriste mogu i da ostanu u bajtkodu.

U svakom slučaju to znači da imamo i portabilnost (jedan class fajl je isti za sve platforme) i performanse koje mogu da se približe programima pisanim u C++ (teoretski mogu biti i bolje ali u praksi se verovatno to nikad neće desiti).

Dejan
 
Odgovor na temu

impaque
Ivan Savčić
YUnet International
Beograd, Zvezdara

Član broj: 717
Poruke: 939
*.routo.co.yu

ICQ: 27215173
Sajt: www.imped.net


Profil

icon Re: Why we need JVM ?02.06.2003. u 14:48 - pre 224 meseci
Da li bi neko mogao da mi pojasni ovo:
Citat:
7. Compiled programs do not allow security to be implemented with in the code - e.g. a compiled program can access any area of the memory, and can do whatever it wants with your PC (most of the viruses are made in compiled languages).

Zar nije na operativnom sistemu da dozvoljava/ne dozvoljava programu pristup određenim delovima memorije, tj. da mu dodeli memorijski prostor u kome treba da se izvršava (koji adresni prostor da "troši")?
 
Odgovor na temu

tweeester
Ivan Arandjelovic
bg yu

Član broj: 724
Poruke: 882
*.kc.vicert.com

Sajt: www.javasvet.net


Profil

icon Re: Why we need JVM ?02.06.2003. u 15:02 - pre 224 meseci
Ovo ti je malo offtopic ali odgovor je NE, ovaj citat koji si gore naveo nije tacan, u pravu si kad kazes da OS namece programu security restrictions po pitanju memorije i jos koje cega ... tako da nije tacno da kompajliran program moze da radi "sta hoce" - stavise, daleko od toga...
<< tko leti vrijedi, tko ne leti ne vrijedi >>
 
Odgovor na temu

sonja
novi sad

Član broj: 11019
Poruke: 19
195.252.100.*

ICQ: 178031974


Profil

icon Re: Why we need JVM ?05.06.2003. u 11:52 - pre 223 meseci
zar niko ne zna za jikes(ibm)?
 
Odgovor na temu

c00l_daem0n
Beograd

Član broj: 309
Poruke: 294
*.telekom.yu

Jabber: andrew@elitesecurity.org
ICQ: 53650656


Profil

icon Re: Why we need JVM ?05.06.2003. u 13:27 - pre 223 meseci
Naravno da zna.
Jikes je super, napisan je u C-u pa mnogo brže kompajlira u byte code.
Često ga koristim umesto javac.
Nego jel se neko igrao sa gcj-om, ili SWT-om, ili možda sve zajedno?

Would you translate me on the other page in face = Da li biste me preveli na drugu stranu ulice
 
Odgovor na temu

tweeester
Ivan Arandjelovic
bg yu

Član broj: 724
Poruke: 882
*.kc.vicert.com

Sajt: www.javasvet.net


Profil

icon Re: Why we need JVM ?05.06.2003. u 13:29 - pre 223 meseci
naravno da znamo za jikes, sta s njim?
<< tko leti vrijedi, tko ne leti ne vrijedi >>
 
Odgovor na temu

Djuki
Djurdjevac Ivan
Pancevo

Član broj: 56
Poruke: 171
*.panet.co.yu

Jabber: djuki_mag@elitesecurity.org
ICQ: 66867882


Profil

icon Re: Why we need JVM ?11.07.2003. u 02:03 - pre 222 meseci
Java je zamisljena tako da programi pisani u njoj budu PRENOSIVI i da se mogu izvrsavati na svim platformama. Programi se prvo prevedu u bytecode koji se moze izvrsavati na bilo kojij platformi a zatim se oni mogu interpretirati i izvrsiti na bilo kom kompjuteru u svetu koji ima JVM. Kada znate da se svaki java program koji je preveden u platformski-nezavistan bytecode treba uvek pri pokretanju da se prevede tj interpretira, logicno zakljucujete da ce takvi programi biti sporiji od programa koji su pisani u c++-u npr.Ali to nije istina. U praksi se pokazalo da java aplikacije mogu da budu isto tako brze kao i one pisane u c++-u. Barem tako pise u knjizi za J2SE od Johna Zukowskog.
 
Odgovor na temu

filmil
Filip Miletić
Oce Technologies B.V., inženjer
hardvera
Arcen, NL

Član broj: 243
Poruke: 2114
*.et.tudelft.nl

Jabber: filmil@jabber.org
ICQ: 36601391


+3 Profil

icon Re: Why we need JVM ?11.07.2003. u 13:09 - pre 222 meseci

Ima još jedan štos: i C je prenosiv jezik, ali ne na virtuelnim nego na realnim mašinama. I šta je posledica? Standardni jezik C je toliko spartanski i toliko neodređen da je to pravi užas. C ne govori o ulazu i izlazu osim standardnog, nema ni pomena o garbage collection-u, nema ni pomena o mrežama i mrežnom programiranju, na kraju krajeva čak ni veličina osnovnih tipova nije jednoznačno definisana a standardna runtime biblioteka je pravi primer asketizma.

Zašto? Zato što mnoge mašine na kojima C treba da radi pojma nemaju ni o jednoj od gore navedenih stvari. U C-u se mogu programirati i mikrokontroleri, koji ne znaju šta su to fajlovi, koji nikada neće izaći na mrežu jer rade recimo u tosteru i koji nikada neće skupljati memorijsko đubre jer i nemaju (random access) memoriju već je sve u ROM-u.

Java je uzela drugi kurs. Definisan je jezik sa naprednim mogućnostima ali su takođe definisani i uslovi koje mašina treba da ispunjava da bi mogla da izvršava javu. Tako je sam jezik mogao da dobije podršku za gore navedene stvari pa čak i mnogo više, standardne biblioteke su porasle preko svake mere i podržavaju sve i svja, a problem prenosivosti je prebačen na autore virtuelne mašine: mi pravimo jezik uz pomoć koga i uz pomoć čijih standardnih biblioteka se može sve i svašta, a vi smišljajte kako da napravite virtuelnu mašinu koja će sve to podržati. Još je samo problem na tržište kontrolera progurati procesore koji mogu da teraju jvm i svi će biti srećni i zadovoljni. Najbolji fazon u celoj priči je što to lagano uspeva.

f
 
Odgovor na temu

[es] :: Java :: Why we need JVM ?

[ Pregleda: 5129 | Odgovora: 17 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.