можно строить предположения, и тогда можно пойти не той дорогой, или можно спросить
Копайтесь в низкоуровневых штуках, вас тогда неизбежно занесёт в ещё более нижние уровни, типа JVM, а там сначала одно кривое изменение, потом второе, потом сотое, потом наконец что-то вменяемое, ну и дальше. На это, собственно, годы и уходят :)