¿Dónde reside el código compilado JIT?

Entonces tengo este método, escrito en Java:

public void myMethod(int y){
    int x = 5 + y;
    doSomething(x);
}

Y supongamos que mi aplicación llama a esto muchas veces ...

Al ejecutar el código compilado para este método en Java Virtual Machine, JVM primero interpretará el método. Luego, después de un tiempo, decidirá compilarlo en lenguaje máquina si lo entiendo correctamente.

En este punto,

¿Será sobrescrito por el código de máquina en la memoria? Si se sobrescribe, ¿cómo se resolverá el problema de la diferencia de tamaño? Si está escrito en otro lugar de la memoria, ¿se liberará o no el bytecode cargado en la memoria? Y también, si tanto el código de bytes como el código compilado jit están en la memoria, cuando la aplicación vuelve a aplicar este método, ¿cómo decide JVM ejecutar el código compilado jit en lugar del código byte?

Respuestas a la pregunta(3)

Su respuesta a la pregunta