7 ms·
What about the JVM? Tools for modifying java bytecode call themselves "assemblers" and "disassemblers"[1]. There have been previous attempts at a physical CPU t
by cmeacham98 6y ago
What about the JVM? Tools for modifying java bytecode call themselves "assemblers" and "disassemblers"[1]. There have been previous attempts at a physical CPU that runs JVM bytecode[2] but to my knowledge none exist for the current version.
1: https://github.com/Storyyeller/Krakatau https://github.com/Storyyeller/Krakatau
2: https://en.wikipedia.org/wiki/Java_processor https://en.wikipedia.org/wiki/Java_processor
- userbinator 6y agohttps://en.wikipedia.org/wiki/Jazelle https://en.wikipedia.org/wiki/Jazelle is one notable implementation, unfortunately details are proprietary and there doesn't seem to be much in the way of RE attempts (you'd think more people would be curious about finding out how a completely undocumented instruction set extension works...)
- dnautics 6y agoI feel similarly about the erlang vm bytecode assembly. When you read it it helps to know something about true assembly languages, as you're mostly manipulating registers and sending them to operands.