On Fri, 06 Nov 2009 13:59:49 +0100We can always imagine a lazy mechanism that will enable segment limit when page0 is mapped.
I am wondering why we can't set the KERNEL_DS data segment to not contain the
first page, ie changing it from R/W flat model to R/W expand down from
0xffffffff to 4096.
For one it is enormously expensive because the moment you have segment
limits all sorts of stuff goes slower.
and for APM and so on.APM clears all segment before calling bios (APM_ZERO_SEGS is defined for detecting buggy bios) and pnpbios seems to have their own segment (GDT_ENTRY_PNPBIOS) There is also GDT_ENTRY_APMBIOS_BASE,
You also do sometimes need low 4KThat's a bigger problem. If there not many access we can imagine fix it with trap/single step.
access for wine/dosemu etc as you guess -
64bit you don't have a lot of those features ayway.Yes.