flat assembler
Message board for the users of flat assembler.
Index
> Windows > Question about the PE32+ format |
Author |
|
bzt 15 Nov 2018, 11:53
Hi Tomasz,
I've moved this topic into it's own thread, because I don't want to pollute the Planned file format tutorials topic. Hope you don't mind. Tomasz Grysztar wrote: PE+ as a format is able to handle 64-bit VAs fine. Only the RVAs are still limited to 32 bits. Microsoft wrote: These fields contain general information that is useful for loading and running an executable file. They are unchanged for the PE32+ format. (*) I've used gcc and cross-binutils under Linux to generate, dump and check my PE+ files. I don't have Win, so I could test my boot loader with GNU toolchain generated PEs only, that's why this topic is so interesting to me. If anybody would be kind to compile this little C code under Win in PE32+ format for me, and send the binary back for further investigation and comparision, that would really made my day! Thanks, bzt |
|||
15 Nov 2018, 11:53 |
|
bzt 15 Nov 2018, 22:13
Thanks for the answer!
So it seems I'm walking on thin ice here. I'm sure there are people writing higher half kernels in PE+ format, so it have to be possible to do so. Even though it's not supported by standard toolchains and Win won't load it at higher half normally (that's understandable, you should never load a kernel with Windows anyway). I'm just guessing at this point, because I mostly use ELF, I know that format much better. Also I've used the GNU toolchain to create the test PE+ files for my loader, which introduced another possible source of error. But according what you've said, it seems you'll need that manual sign extension for PE+ kernels if you map them in higher half. Thanks! Good to know! bzt |
|||
15 Nov 2018, 22:13 |
|
< Last Thread | Next Thread > |
Forum Rules:
|
Copyright © 1999-2024, Tomasz Grysztar. Also on GitHub, YouTube.
Website powered by rwasa.