i've had a bootloader for a small 64-bit kernel based on this that fit comfortably into the bootsector, including loading the kernel from disk and setting up vesa modes, no stage2 required.
The 80286 has the Machine Status Word (MSW), a 16 bit register. The 80386 expands this to CR0, a 32 bits register. Then 64 bit long mode adds the EFER MSR and expands CR0 to 64 bits. But even today only 11 bits of CR0 are in use and EFER has 8 active bits. I wonder why intel/AMD did not simply use the free bits of the existing register, and made that decision twice?
The most unnecessarily complicated thing in this article to me is the Makefile and linker script. NASM supports generating flat binary output, but apparently using it would be too "hacky"?
This seems both cool, and a good exercise, but is it useful? Does it have a UX like a fisher/price toy that you can verify/change your settings on the fly?
Booting is the process of going from mini-me mode/single user/recovery mode to flying.
I have been running Unix along side a Microsoft product since Xenix/dos. ( Looks like 40 years...) How much have we advanced?
I also have been using Linux since the swedish version came out ( first release ) and GNU 0.1.
My apologies about calling Xenix, Unix, It is a has-been wanna-be me-too square-excrament from shortly after release until it's languishing demise.
Microsoft does not release products, they empty their cat
boxes onto customers. ( The most recent example is both co-pilot And 22H2. )
If you look at how F1 cars have evolved, and pencils as well as pocket calculators - how close are we to the usable ideal?
Why isn't the bootloader a static kernel mode? It used to be. Someone recently suggested it should be, and I agreed.
5- ·107 days ago
https://wiki.osdev.org/Entering_Long_Mode_Directly
i've had a bootloader for a small 64-bit kernel based on this that fit comfortably into the bootsector, including loading the kernel from disk and setting up vesa modes, no stage2 required.
Show replies
hyperman1 ·107 days ago
https://wiki.osdev.org/CPU_Registers_x86-64#CR0.
Show replies
rep_lodsb ·107 days ago
Show replies
ForOldHack ·105 days ago
Booting is the process of going from mini-me mode/single user/recovery mode to flying.
I have been running Unix along side a Microsoft product since Xenix/dos. ( Looks like 40 years...) How much have we advanced?
I also have been using Linux since the swedish version came out ( first release ) and GNU 0.1.
My apologies about calling Xenix, Unix, It is a has-been wanna-be me-too square-excrament from shortly after release until it's languishing demise.
Microsoft does not release products, they empty their cat boxes onto customers. ( The most recent example is both co-pilot And 22H2. )
If you look at how F1 cars have evolved, and pencils as well as pocket calculators - how close are we to the usable ideal?
Why isn't the bootloader a static kernel mode? It used to be. Someone recently suggested it should be, and I agreed.
blankx32 ·107 days ago