Forums before death by AOL, social media and spammers... "We can't have nice things"
|    alt.os.development    |    Operating system development chatter    |    4,255 messages    |
[   << oldest   |   < older   |   list   |   newer >   |   newest >>   ]
|    Message 3,330 of 4,255    |
|    mutazilah@gmail.com to wolfgang kern    |
|    Re: segmentation    |
|    20 Oct 22 15:37:20    |
      From: muta...@gmail.com              On Thursday, October 20, 2022 at 11:24:42 PM UTC+8, wolfgang kern wrote:              > On 18/10/2022 21:34, muta...@gmail.com wrote:       > > On Thursday, October 13, 2022 at 8:25:01 PM UTC+8, Joe Monk wrote:       > >>> You think the entire MSDOS has been written       > >>> with no assumptions about 4 bit shifts?       >       > >>> You could be right. I've never looked at the       > >>> MSDOS source code except for one bit       > >>> someone pointed me to so that I could see       > >>> the word Xenix.       >       > > I just remembered - if you are using huge pointers for       > > any reason, you need to know the shift value in order       > > to be able to adjust the segment register.       >       > > I think it is impossible for MSDOS to manage more than       > > 64k of memory, ie 640k or 1 MB or 2 MB without huge       > > pointers or equivalent.              > MSDOS used "far" instead of "huge"              MSDOS used both. Depending on terminology. The       keywords are in the extended C language.              > and the 16 high bits       > came from memory allocation FN anyway (ES or handle).              Yes, and those high 16 bits can reference a block of memory       more than 64k in size. And to traverse such a block requires       a huge pointer, either explicitly using the "huge" keyword, or       implicitly by using the huge memory model on an appropriate       C compiler like Watcom (not Turbo C).              > programmers may never cared about the 4 bit shift.              Ideally that would be the case.              Unfortunately many people would code 0xb8000000 or       MK_FP(0xb800, 0).              BFN. Paul.              --- SoupGate-Win32 v1.05        * Origin: you cannot sedate... all the things you hate (1:229/2)    |
[   << oldest   |   < older   |   list   |   newer >   |   newest >>   ]
(c) 1994, bbs@darkrealms.ca