• Post Reply Bookmark Topic Watch Topic
  • New Topic
programming forums Java Mobile Certification Databases Caching Books Engineering Micro Controllers OS Languages Paradigms IDEs Build Tools Frameworks Application Servers Open Source This Site Careers Other Pie Elite all forums
this forum made possible by our volunteer staff, including ...
Marshals:
  • Campbell Ritchie
  • Jeanne Boyarsky
  • Ron McLeod
  • Paul Clapham
  • Liutauras Vilda
Sheriffs:
  • paul wheaton
  • Rob Spoor
  • Devaka Cooray
Saloon Keepers:
  • Stephan van Hulst
  • Tim Holloway
  • Carey Brown
  • Frits Walraven
  • Tim Moores
Bartenders:
  • Mikalai Zaikin

how to design own jvm or vm?

 
Ranch Hand
Posts: 1143
5
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
hello everyone,
can anyone tell me how can i design jvm, is it possible??
what thing i should know to design jvm??
also for any virtual machine.??
i am asking this because, i have to do a project in my next semester, therefore i am thinking for this??

any help or suggestions please....?

Thank you.
 
Bartender
Posts: 1952
7
Eclipse IDE Java
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
It's possible, but I woudn't recommend it.
Have a peek at the JVM specification and you should be able to figure out why...
 
Bartender
Posts: 6109
6
Android IntelliJ IDE Java
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator

Punit Jain wrote:
can anyone tell me how can i design jvm, is it possible??



You are aware that JVMs have been designed and implemented, so you know it's possible.

You'd have to read and understand the JVM spec: http://docs.oracle.com/javase/specs/jvms/se7/html/index.html

Also, you'd have to be skilled enough at software design in general to be able to create a large and complex project.

You'd have to know about general CS concepts like data structures, algorithms, thread scheduling, I/O etc.

And, if you want to not just design but also implement your own JVM, you'd have to be skilled enough in some language--most likely C or C++--to be able to combine all of the above to produce working code.

also for any virtual machine.??



You'd have to know the above in the context of whatever particular VM you're designing.

i am asking this because, i have to do a project in my next semester, therefore i am thinking for this??

any help or suggestions please....?



My suggestion: Pick a project that's more attainable, preferably one with 3-5 measurable phases or independent pieces, so that if you find you've bitten off more than you can chew, then you'll be able to scale back and still produce something meaningful.
 
Bartender
Posts: 4568
9
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Writing a simple virtual machine to solve a particular type of problem - maybe with its own (limited) domain specific language might be an interesting (and manageable) project. But I'd stay well clear of a full-scale JVM unless you're an expert coder with a few years to burn.
 
Punit Jain
Ranch Hand
Posts: 1143
5
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Thank you all for reply.
As you said, Jeff Verdegan


Also, you'd have to be skilled enough at software design in general to be able to create a large and complex project.


but upto now i am able to design small softwares.


You'd have to know about general CS concepts like data structures, algorithms, thread scheduling, I/O etc.


i know all concepts but not in depth.


And, if you want to not just design but also implement your own JVM, you'd have to be skilled enough in some language--most likely C or C++--to be able to combine all of the above to produce working code.


know c but not in very depth, i have not done system programming and all.


My suggestion: Pick a project that's more attainable, preferably one with 3-5 measurable phases or independent pieces, so that if you find you've bitten off more than you can chew, then you'll be able to scale back and still produce something meaningful.


anyone, which is meaningful??

Thank you..
 
reply
    Bookmark Topic Watch Topic
  • New Topic