Related articles |
---|
Re: New assembly language instructions to support OO languages? gneuner2@comcast.net (George Neuner) (2008-12-09) |
Re: segmented addression, was New assembly language instructions jgd@cix.compulink.co.uk (2008-12-13) |
Re: segmented addressing, was New assembly language instructions gneuner2@comcast.net (George Neuner) (2008-12-16) |
From: | George Neuner <gneuner2@comcast.net> |
Newsgroups: | comp.arch,comp.compilers |
Date: | Tue, 16 Dec 2008 12:57:14 -0500 |
Organization: | A noiseless patient Spider |
References: | 08-12-055 08-12-080 |
Keywords: | architecture, design |
Posted-Date: | 18 Dec 2008 16:47:24 EST |
On Sat, 13 Dec 2008 07:03:30 -0600, jgd@cix.compulink.co.uk wrote:
>gneuner2@comcast.net (George Neuner) wrote:
>
>> I spent some quality time in the early 90's hacking the MINIX VMM to
>> behave like an experimental segmented 386 OS I had read a paper about
>> (I don't recall the name of the paper, if I can find it again I'll
>> post an update).
>
>That would be of some interest. Application code, especially
>applications that need a lot of memory and manage it in reasonably
>sophisticated ways, can have a very different experience.
>
>> Unfortunately I never got the process swapping mechanism to work
>> reliably.
>
>This somewhat detracts from the credibility of the idea.
I prefer to think that my skills in 1991 were not up to the task. I
don't think there is any fundamental problem with the idea.
>> A lot of people think back to the 80286 and knock the requirement for
>> consecutive virtual addresses, but 32-bit segments are a lot more fun
>> to work with. For one thing, unless you go crazy, you don't need to
>> change segment registers very often so almost all your pointers are
>> just the 32-bit offset - comparable to "flat" mode.
>
>"Go crazy" would involve "using more than 4GB of data"?
No. IMO, "go crazy" refers to having lots of allocations be separate
segments. This was prevalent in 16-bit code.
>Adapting code that uses flat addressing to segments is
>quite hard work, and it seems to lack practical advantages in a world
>with 64-bit available.
I still think segmentation is a useful addition at the OS level.
Obviously 32-bits is too small now, but 64-bit segments would be good.
Or even more. The distributed Amoeba OS (circa 1995?) skipped over
64-bits and went to 128-bits for many functions.
George
Return to the
comp.compilers page.
Search the
comp.compilers archives again.