segmented memory models

Rich Alderson RichA at vulcan.com
Mon Aug 4 16:15:37 CDT 2008


From: Paul Koning
Sent: Monday, August 04, 2008 1:46 PM

>>>>>> "Fred" == Fred Cisin <cisin at xenosoft.com> writes:

>>>> address 0 be NULL was not around on the micros, and putting it
>>> at the

>Fred> On Mon, 4 Aug 2008, Tony Duell wrote:
>>> I wasn't aware that this was a requirement of C, or any other
>>> language.

>Fred> C actually insists that address 0 is an invalid address!

> Pedantically: not quite.  It says that 0 is the token representing a
> null address.  It doesn't say that the encoding of such a pointer is
> the same as that of the integer 0.

> In practice that's probably the case in all platforms -- certainly all
> current ones.  I'm not 100% sure about the PDP-10, never mind the
> Cyber 6600... both of which have oddball pointers.

It's not that the PDP-10 has "oddball pointers", but rather that
"address" is
not the same data type as "(byte) pointer".  I assume that something
similar is
true on the CDC 6x00 family, but I haven't looked at one since
September, 1970,
before I dropped the Compass programming class at UT Austin.

                                                            Thanks,
                                                                Rich

Rich Alderson
RichA at vulcan.com   
Server Engineer, PDPplanet Project                          (206)
342-2239
Vulcan, Inc., 505 5th Avenue S, Seattle, WA 98104           (206)
465-2916 cell




More information about the cctalk mailing list