All x86_64 machines can also run 32 bit x86 code just fine. They have to - even modern CPUs start up in emulated 16 bit mode like it’s the 80s. They then they need to transition to 32 bit mode. And from there they can swap to 64 bit mode to run modern operating systems.
But you don’t have to do that last step. So this kernel should be able to run on any modern x86 computer on raw hardware just fine.
And running on real hardware is pretty much the last thing any OS dev actually does. Using a VM with a debugger attached rather than trying to figure out how to set up a debug harness is more convienent.
This is sad.
> Using a VM with a debugger attached rather than trying to figure out how to set up a debug harness is more convienent.
But misses all the bugs which can only be reproduced by running on bare metal.