[I am writing this in the hope of finding an answer - where google
fails, surely Usenet can help?]
Hello,
I am in the planning process for developing a VM (Virtual Machine). I
have been researching various aspects for developing a VM in C++ for a
(semi?-)dynamic language, and am looking at the possibility of
implementing JIT for the VM. How would one go about an implementation?
Is the bytecode translated into native instructions similar to ASM, and
then assembled completely into processor-specific instructions? It
seems so, but are there any pointers available in the right direction
in the form of papers, tutorials and the like?
Regards,
Vladimir Lushnikov 5 1989
Vladimir Lushnikov skrev: [I am writing this in the hope of finding an answer - where google fails, surely Usenet can help?]
Hello,
I am in the planning process for developing a VM (Virtual Machine). I have been researching various aspects for developing a VM in C++ for a (semi?-)dynamic language, and am looking at the possibility of implementing JIT for the VM. How would one go about an implementation? Is the bytecode translated into native instructions similar to ASM, and then assembled completely into processor-specific instructions? It seems so, but are there any pointers available in the right direction in the form of papers, tutorials and the like?
Try
comp.compilers
The people there most likely knows.
--
TB @ SWEDEN
Vladimir Lushnikov wrote: [I am writing this in the hope of finding an answer - where google fails, surely Usenet can help?]
Hello,
I am in the planning process for developing a VM (Virtual Machine). I have been researching various aspects for developing a VM in C++ for a (semi?-)dynamic language, and am looking at the possibility of implementing JIT for the VM. How would one go about an implementation? Is the bytecode translated into native instructions similar to ASM, and then assembled completely into processor-specific instructions? It seems so, but are there any pointers available in the right direction in the form of papers, tutorials and the like?
I would have to say that if you need to ask these questions perhapse
you should start with a smaller project. What you are talking about
doing takes years of research and a level of understanding of compiler
design and machine architecture that surpasses most expert programmers.
I was hoping that I was wrong and you didn't have to say that...
My plans for starting such a project is to start with either an
interpreter or a very simple virtual machine that can run some basic
Ruby, and work out the next step then. I am currently reading "Virtual
Machine Design and Implementation in C/C++" by Bill Blunden.
Any other reading starter suggestions?
Vladimir Lushnikov wrote: I was hoping that I was wrong and you didn't have to say that...
That shouldn't stop you. I remember a time much people were laughing
about a nobody creating his own UNIX-like system for a PC...
My plans for starting such a project is to start with either an interpreter or a very simple virtual machine that can run some basic Ruby, and work out the next step then. I am currently reading "Virtual Machine Design and Implementation in C/C++" by Bill Blunden.
Any other reading starter suggestions?
You should have a look at java, I'd assume its the VM with the most
experience regarding just-in-time compilation. There are also groups
(or mailing lists) which discuss different aspects of this topic,
I'm fairly sure the java community can help you finding it.
And now - what was your C++ question? ;)
Mathias
Vladimir Lushnikov wrote: I am in the planning process for developing a VM (Virtual Machine). I have been researching various aspects for developing a VM in C++ for a (semi?-)dynamic language, and am looking at the possibility of implementing JIT for the VM. How would one go about an implementation?
You can join the parrot community. They use C, not C++, but they have a
bunch of work in parsing, VM design and implementation, JIT, and all of
those things.
--
Salu2 This thread has been closed and replies have been disabled. Please start a new discussion. Similar topics |
by: Troels F. Smit |
last post by:
Where can I find information on implementing a search function on my
site ?
--
Mvh.
Troels F. Smit
|
by: MKoleoso |
last post by:
Problem: C#- Unable to create instance of a class
implementing from an interface
I have:
namespace someNamespace
{
public __gc class SomeClass1
{
}
|
by: Andy |
last post by:
Could you tell my about the main stages of implementing XML/EDI? Thank you.
|
by: Paul |
last post by:
Have a problem/Question - I have created a C# class that
inherits from MarshalByRefObject as well as implements a
custom Interface that I have created.
The thing that is not working is that when I try to use
this class in a different assembly I cannot reference it
even when using it's namespace qualifier. It has been
refereced in my project. I even put the namespace in the
Imports/using statements in the top of the class file
(I've...
|
by: Kerry Sanders |
last post by:
I am working on a project for work where I need a specialized type
converter to convert the value of a string which is edited in a grid
back to the underlying object type from the cell. The value in the
cell is displayed as a string from the ToString() method in the class.
Anyway, I am trying to implement my converter, but I am having a
little trouble understanding it fully and how exactly to implement
some of the methods, especially...
| |
by: MarkoH |
last post by:
I have a function which generates code and compiles assembly for an abstract
web service class based on given WSDL. The same as wsdl.exe does, just that
I do it from code through usage of CodeDom and Microsoft.CSharp namespaces.
What I want to do is to provide implementation to this class either by
changing the generated code or constructing new class based on abstrat one.
It would be enough just to have empty implementation { }, I just...
|
by: David Thielen |
last post by:
Hi;
I am writing a class that implements IDbConnection. The i/f defines a method
BeginTransaction() that returns an IDbTransaction. I want to define this as
returning a DbTransaction (as DbConnection does). It makes sense to me that
this is legal as DbTransaction implements IDbTransaction so it does meet the
contract of returning an IDbTransaction.
But it won't compile - how do I get this to work? There must be a way as
DbConnection...
|
by: Edward Diener |
last post by:
Since implement the assign operator for reference types eliminates the
ability to assign a reference object to a reference variable of the same
type or base class of that type, I assume that implementing the assign
operator ( = ), to assign the value of a type from one object to another
rather than the reference, should only be done for value types. Is there
any other reason for implementing the assign operator for a type ?
|
by: Marko Vuksanovic |
last post by:
I used the following code for implementing a file upload progress indicator, using UpdateProgress Panel, though I have a problem that FileUpload.Has File always returns false. Any suggestions what might be wrong?
FileUpload2.aspx
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="FileUpload2.aspx.cs" Inherits="FileUpload2" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"...
|
by: csharpula csharp |
last post by:
Hello ,
I would like to build a tree structure in c# using the arraylist or hash
table. what is the best way to implement it if I want to add children
and to print my tree.
Thank you!
*** Sent via Developersdex http://www.developersdex.com ***
|
by: Oralloy |
last post by:
Hello folks,
I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>".
The problem is that using the GNU compilers, it seems that the internal comparison operator "<=>" tries to promote arguments from unsigned to signed.
This is as boiled down as I can make it.
Here is my compilation command:
g++-12 -std=c++20 -Wnarrowing bit_field.cpp
Here is the code in...
| |
by: Hystou |
last post by:
Overview:
Windows 11 and 10 have less user interface control over operating system update behaviour than previous versions of Windows. In Windows 11 and 10, there is no way to turn off the Windows Update option using the Control Panel or Settings app; it automatically checks for updates and installs any it finds, whether you like it or not. For most users, this new feature is actually very convenient. If you want to control the update process,...
|
by: tracyyun |
last post by:
Dear forum friends,
With the development of smart home technology, a variety of wireless communication protocols have appeared on the market, such as Zigbee, Z-Wave, Wi-Fi, Bluetooth, etc. Each protocol has its own unique characteristics and advantages, but as a user who is planning to build a smart home system, I am a bit confused by the choice of these technologies. I'm particularly interested in Zigbee because I've heard it does some...
|
by: agi2029 |
last post by:
Let's talk about the concept of autonomous AI software engineers and no-code agents. These AIs are designed to manage the entire lifecycle of a software development project—planning, coding, testing, and deployment—without human intervention. Imagine an AI that can take a project description, break it down, write the code, debug it, and then launch it, all on its own....
Now, this would greatly impact the work of software developers. The idea...
|
by: isladogs |
last post by:
The next Access Europe User Group meeting will be on Wednesday 1 May 2024 starting at 18:00 UK time (6PM UTC+1) and finishing by 19:30 (7.30PM).
In this session, we are pleased to welcome a new presenter, Adolph Dupré who will be discussing some powerful techniques for using class modules.
He will explain when you may want to use classes instead of User Defined Types (UDT). For example, to manage the data in unbound forms.
Adolph will...
|
by: conductexam |
last post by:
I have .net C# application in which I am extracting data from word file and save it in database particularly. To store word all data as it is I am converting the whole word file firstly in HTML and then checking html paragraph one by one.
At the time of converting from word file to html my equations which are in the word document file was convert into image.
Globals.ThisAddIn.Application.ActiveDocument.Select();...
|
by: adsilva |
last post by:
A Windows Forms form does not have the event Unload, like VB6. What one acts like?
| |
by: 6302768590 |
last post by:
Hai team
i want code for transfer the data from one system to another through IP address by using C# our system has to for every 5mins then we have to update the data what the data is updated we have to send another system
|
by: muto222 |
last post by:
How can i add a mobile payment intergratation into php mysql website.
| |