Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > openwatcom.users.c_cpp > #3663

Re: 16:32 far pointers in OpenWatcom C/C++

From David Brown <david.brown@hesbynett.no>
Newsgroups alt.folklore.computers, openwatcom.users.c_cpp, comp.lang.c
Subject Re: 16:32 far pointers in OpenWatcom C/C++
Date 2025-11-04 21:23 +0100
Organization A noiseless patient Spider
Message-ID <10edncg$3t2e2$1@dont-email.me> (permalink)
References (9 earlier) <20251103162451.184@kylheku.com> <dRoOQ.1421028$xYr1.1123604@fx14.iad> <10eda8d$3pd45$1@dont-email.me> <tvqOQ.856102$80J6.14691@fx12.iad> <IMqOQ.359269$Je0d.221196@fx03.iad>

Cross-posted to 3 groups.

Show all headers | View raw


On 04/11/2025 18:32, Scott Lurndal wrote:
> scott@slp53.sl.home (Scott Lurndal) writes:
>> Peter Flass <Peter@Iron-Spring.com> writes:
>>> On 11/4/25 08:20, Scott Lurndal wrote:
>>>> Kaz Kylheku <643-408-1753@kylheku.com> writes:
>>>>> On 2025-11-03, Peter Flass <Peter@Iron-Spring.com> wrote:
>>>>>> On 11/3/25 13:24, Lynn McGuire wrote:
>>>>>
>>>>> When I saw this subject line, I thought it was some necroposting to
>>>>> threads from 1990.
>>>>>
>>>>> Someone still cared about segmented x86 shit in 2010 (even if 32 bit)?
>>>>
>>>> There are still people on the internet who swear that the 286 is
>>>> better than sliced bread and refuse to recognize that modern
>>>> architectures are superior.
>>>>
>>>
>>> I was thinking, are there any segmented architectures today?
>>
>> Only in emulation (see Unisys Clearpath, for example).
> 
> Although it's worth pointing out that harvard architectures
> still exist (e.g. CEVA DSPs) 

Yes, but Harvard architectures are a very different matter from 
segmented architectures.  "Real" Harvard architecture processors have 
different instructions for accessing different memory spaces - such as 
on the AVR microcontrollers, the instructions for reading ram and 
reading program flash are totally different, and you cannot execute code 
from ram.

Segmented architecture just means that the actual address is formed by a 
scaled segment register (or value) combined with an offset or pointer 
register (or value).

There are plenty of segmented architectures in the world of small 
microcontrollers, where the "pointer" might be 8-bit, 16-bit, or a pair 
of 8-bit registers, and it is combined with a bank or segment register 
so that the device can use more than 64KB memory.  These devices may or 
may not be Harvard.  Fortunately, most of these are considered legacy 
devices.

> and the low-power ARM
> M-series core 32-bit physical address space is
> divided into 28-bit regions some of which may
> provide programmable windows into alternate address spaces
> in a fashion very similar to segmentation.
> 

All the ARM Cortex-M cores have 32-bit linear memory spaces.  There is 
no segmentation.  Different parts of the memory space are used for 
different purposes (ram, flash, peripherals, off-chip memory, etc.), and 
there can be lots of different memory-mapped devices placed at different 
points in the memory spaces.  But all access is via 32-bit addresses in 
32-bit registers, without any segmentation registers.  (And I have never 
seen a Cortex-M device with programmable windows or addresses - indeed, 
I believe the Cortex-M core documentation specifies some memory ranges 
explicitly.  Memory protection units can be programmable to give 
different accesses, writes and cachability attributes to different 
regions, but that's another matter.)


Back to openwatcom.users.c_cpp | Previous | NextPrevious in thread | Next in thread | Find similar


Thread

Re: 16:32 far pointers in OpenWatcom C/C++ Peter Flass <Peter@Iron-Spring.com> - 2025-11-02 13:20 -0700
  OT: 2010 posts (was: Re: 16:32 far pointers in OpenWatcom C/C++) Nuno Silva <nunojsilva@invalid.invalid> - 2025-11-03 14:58 +0000
  Re: 16:32 far pointers in OpenWatcom C/C++ Lynn McGuire <lynnmcguire5@gmail.com> - 2025-11-03 14:24 -0600
    Re: 16:32 far pointers in OpenWatcom C/C++ Peter Flass <Peter@Iron-Spring.com> - 2025-11-03 16:25 -0700
      Re: 16:32 far pointers in OpenWatcom C/C++ Kaz Kylheku <643-408-1753@kylheku.com> - 2025-11-04 00:26 +0000
        Re: 16:32 far pointers in OpenWatcom C/C++ scott@slp53.sl.home (Scott Lurndal) - 2025-11-04 15:20 +0000
          Re: 16:32 far pointers in OpenWatcom C/C++ Peter Flass <Peter@Iron-Spring.com> - 2025-11-04 09:39 -0700
            Re: 16:32 far pointers in OpenWatcom C/C++ scott@slp53.sl.home (Scott Lurndal) - 2025-11-04 17:14 +0000
              Re: 16:32 far pointers in OpenWatcom C/C++ scott@slp53.sl.home (Scott Lurndal) - 2025-11-04 17:32 +0000
                Re: 16:32 far pointers in OpenWatcom C/C++ Kaz Kylheku <643-408-1753@kylheku.com> - 2025-11-04 17:38 +0000
                Re: 16:32 far pointers in OpenWatcom C/C++ David Brown <david.brown@hesbynett.no> - 2025-11-04 21:23 +0100
                Re: 16:32 far pointers in OpenWatcom C/C++ scott@slp53.sl.home (Scott Lurndal) - 2025-11-04 22:04 +0000
                Re: 16:32 far pointers in OpenWatcom C/C++ David Brown <david.brown@hesbynett.no> - 2025-11-05 08:50 +0100
                Re: 16:32 far pointers in OpenWatcom C/C++ scott@slp53.sl.home (Scott Lurndal) - 2025-11-05 15:15 +0000
                Re: 16:32 far pointers in OpenWatcom C/C++ David Brown <david.brown@hesbynett.no> - 2025-11-06 08:51 +0100
            Re: 16:32 far pointers in OpenWatcom C/C++ Lawrence D’Oliveiro <ldo@nz.invalid> - 2025-11-04 22:17 +0000
            Re: 16:32 far pointers in OpenWatcom C/C++ cross@spitfire.i.gajendra.net (Dan Cross) - 2025-11-07 15:50 +0000
              Re: 16:32 far pointers in OpenWatcom C/C++ scott@slp53.sl.home (Scott Lurndal) - 2025-11-07 16:08 +0000
                Re: 16:32 far pointers in OpenWatcom C/C++ cross@spitfire.i.gajendra.net (Dan Cross) - 2025-11-07 16:54 +0000
              Re: 16:32 far pointers in OpenWatcom C/C++ Paul S Person <psperson@old.netcom.invalid> - 2025-11-07 08:22 -0800
                Re: 16:32 far pointers in OpenWatcom C/C++ cross@spitfire.i.gajendra.net (Dan Cross) - 2025-11-07 17:22 +0000
                Re: 16:32 far pointers in OpenWatcom C/C++ Michael S <already5chosen@yahoo.com> - 2025-11-09 11:15 +0200
                Re: 16:32 far pointers in OpenWatcom C/C++ cross@spitfire.i.gajendra.net (Dan Cross) - 2025-11-10 09:08 +0000
                Re: 16:32 far pointers in OpenWatcom C/C++ scott@slp53.sl.home (Scott Lurndal) - 2025-11-07 17:43 +0000
                Re: 16:32 far pointers in OpenWatcom C/C++ Lawrence D’Oliveiro <ldo@nz.invalid> - 2025-11-07 19:40 +0000
              Re: 16:32 far pointers in OpenWatcom C/C++ Peter Flass <Peter@Iron-Spring.com> - 2025-11-08 08:45 -0700
          Re: 16:32 far pointers in OpenWatcom C/C++ Richard Heathfield <rjh@cpax.org.uk> - 2025-11-04 17:12 +0000
            Re: 16:32 far pointers in OpenWatcom C/C++ geodandw <geodandw@gmail.com> - 2025-11-04 12:15 -0500
              Re: 16:32 far pointers in OpenWatcom C/C++ Kaz Kylheku <643-408-1753@kylheku.com> - 2025-11-04 17:21 +0000
              Re: 16:32 far pointers in OpenWatcom C/C++ Lawrence D’Oliveiro <ldo@nz.invalid> - 2025-11-04 22:19 +0000
                Re: 16:32 far pointers in OpenWatcom C/C++ rbowman <bowman@montana.com> - 2025-11-05 00:13 +0000
              Re: 16:32 far pointers in OpenWatcom C/C++ cross@spitfire.i.gajendra.net (Dan Cross) - 2025-11-07 16:46 +0000
                Re: 16:32 far pointers in OpenWatcom C/C++ Peter Flass <Peter@Iron-Spring.com> - 2025-11-08 08:47 -0700
                Re: 16:32 far pointers in OpenWatcom C/C++ John Levine <johnl@taugh.com> - 2025-11-08 21:17 +0000
        Re: 16:32 far pointers in OpenWatcom C/C++ Paul S Person <psperson@old.netcom.invalid> - 2025-11-04 08:29 -0800
    Re: 16:32 far pointers in OpenWatcom C/C++ Paul S Person <psperson@old.netcom.invalid> - 2025-11-04 08:32 -0800

csiph-web