I understand people who prefer, like you, not to deal with segmentation outside the scope of flat memory. I just emphasized the fact that segmentation can bring features (which sometimes can be done otherwise).AJ wrote: Personally, because I feel I can achieve most of that with paging and that segmentation is already considered pretty 'legacy'. Besides, the main platform for my OS is 64 bit (with a 32 bit backport). If I introduce segmentation in to some ports and just a flat memory model in others, I will end up with a mess on my hands, particularly using a compiler which is not segmentation-aware.
..which only exists in recent 64-bits processorsAJ wrote: ..which can be controlled with the NX bit with no need for segmentation
Using segmentation (or not) feels more like a matter of taste to me. For my kernel, I'm using segmentation on 32-bits machines and intend to use NX bit for 64-bits machines. That's also what conditional compilation is for.