osdev wiki talks little on x64 long mode and UEFI protocols?

All about the OSDev Wiki. Discussions about the organization and general structure of articles and how to use the wiki. Request changes here if you don't know how to use the wiki.
Post Reply
wyj
Posts: 11
Joined: Thu Nov 27, 2014 8:23 pm

osdev wiki talks little on x64 long mode and UEFI protocols?

Post by wyj »

I find it is easier today to develop an os with uefi and amd64 platform, with the help of a project called UEFI:SIMPlE,
since uefi has set up the long mode for you and you can enable paging by a single call to SetVirtualMemory.
Besides, using the up-to-date technologies are more inspiring and interesting.

However I have to search the UEFI spec and intel manual all the time just to find some data structures and functions.
I believe it will be helpful if there are more about x64 and UEFI in the wiki.

By the way I recommend the wiki talks about UEFI:SIMPLE.
User avatar
iansjack
Member
Member
Posts: 4703
Joined: Sat Mar 31, 2012 3:07 am
Location: Chichester, UK

Re: osdev wiki talks little on x64 long mode and UEFI protoc

Post by iansjack »

That's a great chance for you to add some content to the Wiki!
kzinti
Member
Member
Posts: 898
Joined: Mon Feb 02, 2015 7:11 pm

Re: osdev wiki talks little on x64 long mode and UEFI protoc

Post by kzinti »

I took a look at UEFI:Simple. (https://github.com/pbatard/uefi-simple) It's basically just gnu-efi with a Makefile...

I found an easier way: just use the mingw toolchain to produce a proper PE. This works for both 32 and 64 bits.

Here is my code:
https://github.com/kiznit/kiznix/tree/m ... c/boot/efi

Toolchain for 32 bits:
https://github.com/kiznit/kiznix/blob/m ... -efi.cmake

Toolchain for 64 bits:
https://github.com/kiznit/kiznix/blob/m ... -efi.cmake

If you are unfamiliar with CMake and using toolchains, check the Makefile here:
https://github.com/kiznit/kiznix/blob/master/Makefile
Post Reply