picoJava-I instruction set
Not all instructions are implemented in hardware.
Most instructions execute in 1 to 3 cycles.
Of the instructions not implemented directly in hardware, those deemed critical for system performance are implemented in microcode.
The remaining instructions are emulated by core traps.
- e.g. creating a new object
Additional to JVM: extended instructions in reserved opcode space with 2-byte opcodes (first one of the reserved virtual machine opcode bytes)
- for implementation of system-level code (additional instructions not in JVM)
- JVM relies on library calls to the underlying operating system
- extended byte codes: arbitrary load/store, cache management, internal register access, miscellaneous