• Post Reply Bookmark Topic Watch Topic
  • New Topic

how to design own jvm or vm?  RSS feed

 
Punit Jain
Ranch Hand
Posts: 1085
3
  • Mark post as helpful
  • send pies
  • 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.
 
Jelle Klap
Bartender
Posts: 1952
7
Eclipse IDE Java
  • Mark post as helpful
  • send pies
  • 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...
 
Jeff Verdegan
Bartender
Posts: 6109
6
Android IntelliJ IDE Java
  • Mark post as helpful
  • send pies
  • 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.
 
Matthew Brown
Bartender
Posts: 4568
9
  • Mark post as helpful
  • send pies
  • 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: 1085
3
  • Mark post as helpful
  • send pies
  • 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..
 
  • Post Reply Bookmark Topic Watch Topic
  • New Topic
Boost this thread!