Jumping from legacy modes like 32-bit protected to the 64-bit mode of current x86 processors is difficult and error-prone. In his blog, Philipp Oppermann published an excellent guide for switching the processor mode. In principle, I use a similar way to boot HermitCore parallel to the Linux kernel. In this case, the cores start in real mode (16-bit), switch to the protected mode (32-bit) and afterwards to the long mode (64-bit). My boot code is published via GitHub.