Is it Possible to build a Processor which understands MSIL code.
-
Thanks for the answer. I think a sweet spot may be certain middleware and asp.net appserver where pure performance in demand. Hope one day I could see one. ( Again. Sure I will not use ;) )
Regards, Vythees Miles to go before sleep...
You're welcome. :)
Luc Pattyn [Forum Guidelines] [My Articles] Nil Volentibus Arduum
Please use <PRE> tags for code snippets, they preserve indentation, improve readability, and make me actually look at the code.
-
Note : This one is Extreme Hypothetical dream Is it possible to build a CPU that understands Itermediate Language straight away. ( No JIT, No unmanaged) What could be the blocking factor's if we can't take it to the next Consumer Electronic Show (CES) ;P
Regards, Vythees Miles to go before sleep...
I couldn't care less about a processor that runs MSIL. The one I really want to see is the proc that can run encrypted code natively, without first decrypting it.
A guide to posting questions on CodeProject[^]
Dave Kreskowiak -
Note : This one is Extreme Hypothetical dream Is it possible to build a CPU that understands Itermediate Language straight away. ( No JIT, No unmanaged) What could be the blocking factor's if we can't take it to the next Consumer Electronic Show (CES) ;P
Regards, Vythees Miles to go before sleep...
There is a Paper on this at IEEExplore[^]. You have to be a subscriber to read it though. Unless you can find it elsewhere.
Henry Minute Do not read medical books! You could die of a misprint. - Mark Twain Girl: (staring) "Why do you need an icy cucumber?" “I want to report a fraud. The government is lying to us all.” I wouldn't let CG touch my Abacus!
-
There is a Paper on this at IEEExplore[^]. You have to be a subscriber to read it though. Unless you can find it elsewhere.
Henry Minute Do not read medical books! You could die of a misprint. - Mark Twain Girl: (staring) "Why do you need an icy cucumber?" “I want to report a fraud. The government is lying to us all.” I wouldn't let CG touch my Abacus!
Henry Minute wrote:
You have to be a subscriber to read it though
and are you?
Henry Minute wrote:
Unless you can find it elsewhere.
Wouldn't that breach the copyright? :)
Luc Pattyn [Forum Guidelines] [My Articles] Nil Volentibus Arduum
Please use <PRE> tags for code snippets, they preserve indentation, improve readability, and make me actually look at the code.
-
Henry Minute wrote:
You have to be a subscriber to read it though
and are you?
Henry Minute wrote:
Unless you can find it elsewhere.
Wouldn't that breach the copyright? :)
Luc Pattyn [Forum Guidelines] [My Articles] Nil Volentibus Arduum
Please use <PRE> tags for code snippets, they preserve indentation, improve readability, and make me actually look at the code.
Luc Pattyn wrote:
and are you?
Nope. :( Apart from CP I don't subscribe to anything that would allow someone like me to subscribe.
Luc Pattyn wrote:
Wouldn't that breach the copyright?
Possibly, although not certainly. Posilutely, maybe.
Henry Minute Do not read medical books! You could die of a misprint. - Mark Twain Girl: (staring) "Why do you need an icy cucumber?" “I want to report a fraud. The government is lying to us all.” I wouldn't let CG touch my Abacus!
-
Luc Pattyn wrote:
and are you?
Nope. :( Apart from CP I don't subscribe to anything that would allow someone like me to subscribe.
Luc Pattyn wrote:
Wouldn't that breach the copyright?
Possibly, although not certainly. Posilutely, maybe.
Henry Minute Do not read medical books! You could die of a misprint. - Mark Twain Girl: (staring) "Why do you need an icy cucumber?" “I want to report a fraud. The government is lying to us all.” I wouldn't let CG touch my Abacus!
you're mayhapsily right. :) PS: a second L is optional. PS2: and you sound like Jumbo Marx.
Luc Pattyn [Forum Guidelines] [My Articles] Nil Volentibus Arduum
Please use <PRE> tags for code snippets, they preserve indentation, improve readability, and make me actually look at the code.
-
you're mayhapsily right. :) PS: a second L is optional. PS2: and you sound like Jumbo Marx.
Luc Pattyn [Forum Guidelines] [My Articles] Nil Volentibus Arduum
Please use <PRE> tags for code snippets, they preserve indentation, improve readability, and make me actually look at the code.
A games console with a stutter?
Henry Minute Do not read medical books! You could die of a misprint. - Mark Twain Girl: (staring) "Why do you need an icy cucumber?" “I want to report a fraud. The government is lying to us all.” I wouldn't let CG touch my Abacus!
-
A games console with a stutter?
Henry Minute Do not read medical books! You could die of a misprint. - Mark Twain Girl: (staring) "Why do you need an icy cucumber?" “I want to report a fraud. The government is lying to us all.” I wouldn't let CG touch my Abacus!
No, an elephant doing a Groucho Marx joke. :)
Luc Pattyn [Forum Guidelines] [My Articles] Nil Volentibus Arduum
Please use <PRE> tags for code snippets, they preserve indentation, improve readability, and make me actually look at the code.
-
No, an elephant doing a Groucho Marx joke. :)
Luc Pattyn [Forum Guidelines] [My Articles] Nil Volentibus Arduum
Please use <PRE> tags for code snippets, they preserve indentation, improve readability, and make me actually look at the code.
I was actually referring to the PS...PS2 bit. :)
Henry Minute Do not read medical books! You could die of a misprint. - Mark Twain Girl: (staring) "Why do you need an icy cucumber?" “I want to report a fraud. The government is lying to us all.” I wouldn't let CG touch my Abacus!
-
I was actually referring to the PS...PS2 bit. :)
Henry Minute Do not read medical books! You could die of a misprint. - Mark Twain Girl: (staring) "Why do you need an icy cucumber?" “I want to report a fraud. The government is lying to us all.” I wouldn't let CG touch my Abacus!
and Jumbo, they used to sell puzzles around here (just like MB), and more. :)
Luc Pattyn [Forum Guidelines] [My Articles] Nil Volentibus Arduum
Please use <PRE> tags for code snippets, they preserve indentation, improve readability, and make me actually look at the code.
-
and Jumbo, they used to sell puzzles around here (just like MB), and more. :)
Luc Pattyn [Forum Guidelines] [My Articles] Nil Volentibus Arduum
Please use <PRE> tags for code snippets, they preserve indentation, improve readability, and make me actually look at the code.
Ah, not heard of that/them.
Henry Minute Do not read medical books! You could die of a misprint. - Mark Twain Girl: (staring) "Why do you need an icy cucumber?" “I want to report a fraud. The government is lying to us all.” I wouldn't let CG touch my Abacus!
-
Ah, not heard of that/them.
Henry Minute Do not read medical books! You could die of a misprint. - Mark Twain Girl: (staring) "Why do you need an icy cucumber?" “I want to report a fraud. The government is lying to us all.” I wouldn't let CG touch my Abacus!
Luc Pattyn [Forum Guidelines] [My Articles] Nil Volentibus Arduum
Please use <PRE> tags for code snippets, they preserve indentation, improve readability, and make me actually look at the code.
-
Hmm.., I need to backtrack from the idea of placing GC in Bios. Better It should be a managed OS which should be built purely by IL. Its could be like scaling a CLR itself to a complete OS. Hope when we build we don't have bussiness compulsion to support backward compatibility (16bit DOS PAC-Man game's) :)
Regards, Vythees Miles to go before sleep...
Have you checked out Singularity at MS Research. It doesn't run MSIL natively, but is a completely CLR(ish) O/S, with many improvements. Very Radical. Singularity[^]
-
Theoretically, it would be possible. However, if you removed JIT from the equation, for instance, how would you expect the application to be optimised? If you remove unmanaged, then how do you expect to accomplish tasks such as file writing?
I'm not a stalker, I just know things. Oh by the way, you're out of milk.
Forgive your enemies - it messes with their heads
Goooood questions. Modern processors decode opcodes into microcode when loading code into the CPU cache (at least, last time I checked. Those buggers change so fast!) That would be a decent place for optimizaitons, though I agree it's not fun to throw that away. But then, there are two things: - the code in the cache can be optimized to current calling conditions - optimizations independent of calling conditions can be written back to the in-memory code For the second, you need some "SystemLevel" code that allows unsafe operations, e.g.
ILProcessor.Primitives.Out(portNumber, Value)
. It needs to be different from .NET's "unsafe" in that you can declare infection stoppage - i.e. "this class is a safe wrapper around its unsafe operations". Implementing the optimizations in hardware would probably be painfully stupid. However, the write-back-optimizations need to be done only once, and can be done in "native" code. State dependent on-the-fly optimizations could be done in a small "helper CPU" running some hardwired FORTRAN code.FILETIME to time_t
| FoldWithUs! | sighist | WhoIncludes - Analyzing C++ include file hierarchy -
Note : This one is Extreme Hypothetical dream Is it possible to build a CPU that understands Itermediate Language straight away. ( No JIT, No unmanaged) What could be the blocking factor's if we can't take it to the next Consumer Electronic Show (CES) ;P
Regards, Vythees Miles to go before sleep...
I think it would totally defeat the purpose. MSIL looks like assembly for a reason, because it's a simple way to specify RISC instructions. Those RISC-like instructions are translated into actual CPU instructions optimized for the CPU it's running on. If you want to change the way it optimizes, that means new hardware, as opposed to new software which is just bits. Microsoft is experimenting with an entirely managed OS, all code would have to be managed code, i.e. MSIL instructions. They call it Singularity (awesome name), it's one of their research projects. I think this is the better approach. GC is built on top of Windows memory management, but in singularity, GC is the memory management model. This is one of its major optimizations.
-
Note : This one is Extreme Hypothetical dream Is it possible to build a CPU that understands Itermediate Language straight away. ( No JIT, No unmanaged) What could be the blocking factor's if we can't take it to the next Consumer Electronic Show (CES) ;P
Regards, Vythees Miles to go before sleep...
-
Note : This one is Extreme Hypothetical dream Is it possible to build a CPU that understands Itermediate Language straight away. ( No JIT, No unmanaged) What could be the blocking factor's if we can't take it to the next Consumer Electronic Show (CES) ;P
Regards, Vythees Miles to go before sleep...
Cool question… What about FPGAs? http://en.wikipedia.org/wiki/FPGA[^]Just make sure the IL commands & assumed services are built and turn on the juice. However, I’d imagine you’d need an FPGA the size of which doesn’t exist to execute even the smallest app. Full disclosure: I’ve yet to work with FPGAs, so this idea might be trash. I’ve been drooling over them for a while. I can just imagine writing an app that translates into “circuitry”… then the headache comes when thinking about tracing & debugging.
-
Note : This one is Extreme Hypothetical dream Is it possible to build a CPU that understands Itermediate Language straight away. ( No JIT, No unmanaged) What could be the blocking factor's if we can't take it to the next Consumer Electronic Show (CES) ;P
Regards, Vythees Miles to go before sleep...
Unlike Java bytecode; .NET IL is designed to be JIT-compiled, not interpreted. For example, .NET has only a single "add" instruction, which means integer addition or floating-point addition depending on the argument types. Also, each entry on the execution stack (always 32-bit for Java) can be arbitrarily large in .NET (as large as the largest struct). So you'll have a very hard time mapping that to hardware registers. For this reason, any .NET IL interpreter (whether hardware or software) would be highly inefficient. AFAIK even Mono's "mint" (the interpreter Mono uses on platforms for which they don't have a JIT compiler) does not interpret .NET IL directly, but first translates the IL into another intermediate language.
-
I couldn't care less about a processor that runs MSIL. The one I really want to see is the proc that can run encrypted code natively, without first decrypting it.
A guide to posting questions on CodeProject[^]
Dave Kreskowiak