• x86S Specification

    From EricP@21:1/5 to All on Thu Oct 17 17:34:14 2024
    There is a reference in this Reg article

    https://www.theregister.com/2024/10/15/intel_amd_x86_future/

    to x86S spec, a proposal from Intel to pare-down the x86/x64
    by removing or modifying legacy features.

    [PDF] Envisioning a Simplified Intel Architecture https://www.intel.com/content/www/us/en/developer/articles/technical/envisioning-future-simplified-architecture.html

    Some examples are:

    3 Architectural Changes
    3.1 Removal of 32-Bit Ring 0
    3.2 Removal of Ring 1 and Ring 2
    3.3 Removal of 16-Bit and 32-Bit Protected Mode
    3.4 Removal of 16-Bit Addressing and Address Size Overrides
    3.5 CPUID
    3.6 Restricted Subset of Segmentation
    3.7 New Checks When Loading Segment Registers
    3.7.1 Code and Data Segment Types
    3.7.2 System Segment Types (S=0)
    3.8 Removal of #SS and #NP Exceptions17
    3.9 Fixed Mode Bits
    3.9.1 Fixed CR0 Bits
    3.9.2 Fixed CR4 Bits
    3.9.3 Fixed EFER Bits
    3.9.4 Removed RFLAGS
    3.9.5 Removed Status Register Instruction
    3.9.6 Removal of Ring 3 I/O Port Instructions
    3.9.7 Removal of String I/O

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From MitchAlsup1@21:1/5 to BGB on Tue Oct 22 00:03:43 2024
    On Mon, 21 Oct 2024 22:02:27 +0000, BGB wrote:

    On 10/17/2024 4:34 PM, EricP wrote:

    Pros:
    Technically makes sense for PCs as they are.
    Cons:
    Looses some of the major aspects of what makes x86 unique;
    Doesn't really solve issues for x86-64's longer term survival.

    x86's long term survival depends on things out of AMD's and Intel's
    hands. It depends on high volume access to devices people will buy
    new every year or every other year. A PC is not such a thing, while
    a cell phone seems to be.

    Absent changing to a more sensible encoding scheme and limiting or
    removing condition-codes, x86-64 still has this major boat anchor. But,
    these can't be changed without breaking backwards compatibility (at
    least, assuming hardware that continues running x86-64 as the native
    hardware ISA).

    Condition codes were never "that hard" of a problem wither in
    pipelining nor in operand routing.

    Though, ironically, most "legacy x86" stuff could probably be served acceptably with emulators.

    Every try to emulate A24 ? Address bit 24--when we looked at it, it took
    more gates to remove it and put a bit in CPUID so applications could "do
    the right thing" than to simply leave the functionality there.

    If it can't maintain a performance advantage (say, if ARM and RISC-V
    catch up or exceed the performance possible on higher end x86 chips), it
    is effectively done.

    x86 performance advantage has ALWAYS been in the cubic amounts of cash
    flow running through the FAB to pay the engineering team budgets.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From MitchAlsup1@21:1/5 to BGB on Tue Oct 22 00:21:51 2024
    On Mon, 21 Oct 2024 22:02:27 +0000, BGB wrote:

    On 10/17/2024 4:34 PM, EricP wrote:

    Say, if one could make the CPU itself have 35% more perf/W by jumping to
    a different encoding scheme, this could easily offset if they needed to
    pay a 20% cost by JIT compiling everything when running legacy
    software...

    This only works when the mative ISA has a direct path to emulating
    the address modes of x86-64 which includes [Rbase+Rindex<<scale+DISP]

    It is also a hopelessly frail path to self destruction:: Transmeta.

    Granted, this is predicated on the assumption that one could get such a
    jump by jumping to a different encoding scheme.

    It is not the encoding scheme that is kaput, it is the semantics
    such a scheme provides the programmer via ISA.
    --------------------------------
    The major selling point of x86 has been its backwards compatibility, but
    this advantage may be weakening with the rise of the ability to emulate
    stuff at near native performance. If Windows could jump ship and provide
    an experience that "doesn't suck" (fast/reliable/transparent emulation
    of existing software), the main advantages of the x86-64 legacy may go
    away (and is already mostly moot in Linux since the distros typically recompile everything from source, with little real/significant ties to
    the x86 legacy).

    W11 has done enough to my day-to-day operations I am willing to
    jump ship to Linux in order to avoid daily updates an the myriad
    of technical issues that never seem to get solved in a way that
    makes then "go away" forever. So, for me it is not that it will
    be an x86 (or ARM, or ...) it is that it is not MS oriented.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From John Levine@21:1/5 to All on Tue Oct 22 01:16:11 2024
    According to MitchAlsup1 <[email protected]>:
    x86's long term survival depends on things out of AMD's and Intel's
    hands. It depends on high volume access to devices people will buy
    new every year or every other year. A PC is not such a thing, while
    a cell phone seems to be.

    Intel's never going to catch up in the phone market but they're still significant in the server and cloud market.

    Think about the way that current Intel chips have a native 64 bit architecture but can still have a 32 bit user mode that can run existing 32 bit application binaries. So how about if the next generation is native x86S, but can also run existing 64 bit binaries, even if not as fast as native x86S. They get the usual
    cloud operating systems ported to x86S while leaving a path for people to migrate
    their existing applications gradually.

    --
    Regards,
    John Levine, [email protected], Primary Perpetrator of "The Internet for Dummies",
    Please consider the environment before reading this e-mail. https://jl.ly

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From John Dallman@21:1/5 to BGB on Tue Oct 22 08:40:00 2024
    In article <vf7g04$1c5qd$[email protected]>, [email protected] (BGB) wrote:

    In this case, the Apple situation makes more sense. They have
    jumped MacOS from x86 to ARM, without loosing all of their existing
    software base, by running a userland emulator that "doesn't suck".

    Granted, can't necessarily trust MS here, as much of the time MS
    has done stuff like using emulation strategies that are awkward and
    suck. Like, say, running Windows inside an emulator, in Windows,
    and just sort of crudely gluing the desktops together between
    programs in the native and VM Windows instance (without giving
    programs in the VM transparent access to the host OS's filesystem,
    ...).

    The x86-32 and x86-64 emulation in ARM Windows 11 is pretty good. Native
    and emulated programs run on the same desktop with no visible seams.

    They don't have the "emulated x86 is faster than native x86" that Apple
    users report, but Apple stopped updating their x86 machines in 2018,
    creating sn additional performance gap.

    John

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Anton Ertl@21:1/5 to John Levine on Tue Oct 22 15:26:20 2024
    John Levine <[email protected]> writes:
    Think about the way that current Intel chips have a native 64 bit architecture >but can still have a 32 bit user mode that can run existing 32 bit application >binaries. So how about if the next generation is native x86S, but can also run >existing 64 bit binaries, even if not as fast as native x86S. They get the usual
    cloud operating systems ported to x86S while leaving a path for people to migrate
    their existing applications gradually.

    Several things in this paragraph makes no sense.

    In particular, x86S is a proposal for a reduced version of the stuff
    that current Intel and AMD CPUs support: There is full 64-bit support,
    and 32-bit user-level support. x86S eliminates a part of the
    compatibility path from systems of yesteryear, but not that many
    people use these parts nowadays anyway. It's unclear to me what
    benefits these changes are supposed to buy (unlike the elimination of
    A32/T32 from some ARM chips, which obviously eliminates the whole
    A32/T32 decoding path). It seems to me that most of the complexity of
    current CPUs would still be there.

    And I certainly prefer a CPU that has more capabilities to one that
    has less capabilities. Sometimes I want to run old binaries.

    So what would be my incentive as a user to buy an x86S CPU? Will they
    sell them for less? I doubt it.

    - anton
    --
    'Anyone trying for "industrial quality" ISA should avoid undefined behavior.'
    Mitch Alsup, <[email protected]>

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From John Dallman@21:1/5 to Anton Ertl on Tue Oct 22 18:38:00 2024
    In article <[email protected]>, [email protected] (Anton Ertl) wrote:

    x86S eliminates a part of the compatibility path from systems
    of yesteryear, but not that many people use these parts nowadays
    anyway. It's unclear to me what benefits these changes are
    supposed to buy

    I don't know how much circuitry and firmware in motherboard chipsets is required to support the old compatibility paths, but the manufacturers
    would doubtless like to save costs there. This might also make the
    machines more "secure" in that special sense used with DRM.

    Microsoft would probably like machines where media playing was harder to intercept, because that would earn them more trust from the media conglomerates.

    John

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Scott Lurndal@21:1/5 to Anton Ertl on Tue Oct 22 17:38:01 2024
    [email protected] (Anton Ertl) writes:
    John Levine <[email protected]> writes:
    Think about the way that current Intel chips have a native 64 bit architecture
    but can still have a 32 bit user mode that can run existing 32 bit application
    binaries. So how about if the next generation is native x86S, but can also run
    existing 64 bit binaries, even if not as fast as native x86S. They get the usual
    cloud operating systems ported to x86S while leaving a path for people to migrate
    their existing applications gradually.

    Several things in this paragraph makes no sense.

    In particular, x86S is a proposal for a reduced version of the stuff
    that current Intel and AMD CPUs support: There is full 64-bit support,
    and 32-bit user-level support. x86S eliminates a part of the
    compatibility path from systems of yesteryear, but not that many
    people use these parts nowadays anyway. It's unclear to me what
    benefits these changes are supposed to buy (unlike the elimination of
    A32/T32 from some ARM chips, which obviously eliminates the whole
    A32/T32 decoding path). It seems to me that most of the complexity of >current CPUs would still be there.

    Most of the proposed changes are unintersting to user mode developers.

    They're definitly interesting to system software (UEFI, Hypervisor,
    Kernel folks), if only to clean up the boot and startup paths.

    Those changes also will reduce the RTL verification load, and
    perhaps simplify other areas of the implementation leading to further efficiencies down the road. The A20 gate should be relegated
    to the trash heap of history.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From MitchAlsup1@21:1/5 to BGB on Tue Oct 22 21:13:41 2024
    On Tue, 22 Oct 2024 18:43:40 +0000, BGB wrote:

    On 10/22/2024 10:26 AM, Anton Ertl wrote:

    Several things in this paragraph makes no sense.

    In particular, x86S is a proposal for a reduced version of the stuff
    that current Intel and AMD CPUs support: There is full 64-bit support,
    and 32-bit user-level support. x86S eliminates a part of the
    compatibility path from systems of yesteryear, but not that many
    people use these parts nowadays anyway. It's unclear to me what
    benefits these changes are supposed to buy (unlike the elimination of
    A32/T32 from some ARM chips, which obviously eliminates the whole
    A32/T32 decoding path). It seems to me that most of the complexity of
    current CPUs would still be there.

    And I certainly prefer a CPU that has more capabilities to one that
    has less capabilities. Sometimes I want to run old binaries.

    So what would be my incentive as a user to buy an x86S CPU? Will they
    sell them for less? I doubt it.


    Yeah, basically my thoughts as well.
    Business as usual...

    Main effect it achieves is breaking legacy boot, doesn't seem like it
    would either save all that much nor "solve" x86's longstanding issues.

    Intel needs a better way to exit reset--and that means the MMU/TLBs
    are already up and working at the time reset is exited. This cannot
    be made backwards compatible.
    -------------------------------

    *1: Probably, say (if I were designing the encoding):
    {Rb+Disp10s] //32-bit encoding
    {Rb+Ri*FixSc] //32-bit encoding
    {Rb+Ri*Sc] //64-bit encoding
    [Rb+Disp33s] //64-bit encoding
    [Rb+Ri*Sc+Disp11s] //64-bit encoding
    [Rb+Ri*Sc+Disp33s] //96-bit encoding

    [Rb+DISP16] // 32-bit 16 > 10
    [Rb+Ri<<sc] // 32-bit
    [Rb+Ri<<sc+DISP32] // 64-bit 32 > 11
    [Rb+Ri<<sc+DISP64] // 96-bit 64 > 33

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From George Neuner@21:1/5 to All on Tue Oct 22 17:59:46 2024
    On Tue, 22 Oct 2024 00:03:43 +0000, [email protected] (MitchAlsup1)
    wrote:

    x86's long term survival depends on things out of AMD's and Intel's
    hands. It depends on high volume access to devices people will buy
    new every year or every other year. A PC is not such a thing, while
    a cell phone seems to be.

    Only because the average cell phone gets broken or flooded within a
    year. If people were not so careless, I doubt most would be replaced
    so often.

    My current phone is over 4 years old and it continues to serve all of
    my needs. Sans damage, the only reason I would choose to replace it
    would be when critical apps no longer support the OS version.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From MitchAlsup1@21:1/5 to George Neuner on Tue Oct 22 22:17:28 2024
    On Tue, 22 Oct 2024 21:59:46 +0000, George Neuner wrote:

    On Tue, 22 Oct 2024 00:03:43 +0000, [email protected] (MitchAlsup1)
    wrote:

    x86's long term survival depends on things out of AMD's and Intel's
    hands. It depends on high volume access to devices people will buy
    new every year or every other year. A PC is not such a thing, while
    a cell phone seems to be.

    Only because the average cell phone gets broken or flooded within a
    year. If people were not so careless, I doubt most would be replaced
    so often.

    My current phone is over 4 years old and it continues to serve all of
    my needs. Sans damage, the only reason I would choose to replace it
    would be when critical apps no longer support the OS version.

    My first cell phone (Galaxy 3) I got in 2012 and used it until 2022
    when the service provider offered a zero cost upgrade because they
    were loosing access to the 4G-LTE antennae. I did put in 2 new
    batteries, and nothing was scratched or dented after 11 years of use.

    I still liked it better than the Galaxy 12 I have now. ...

    Oh and BTW:: I do not carry my cell phone unless I am traveling
    or expecting a call. It lives in my office--probably why it is
    not being damaged by being sat upon or dropped into water, and
    other causes of cell phone death.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Lawrence D'Oliveiro@21:1/5 to BGB on Tue Oct 22 23:46:50 2024
    On Tue, 22 Oct 2024 01:16:34 -0500, BGB wrote:

    In this case, the Apple situation makes more sense. They have jumped
    MacOS from x86 to ARM, without loosing all of their existing software
    base, by running a userland emulator that "doesn't suck".

    Seems like the Apple platform has less need for third-party addons that
    intrude into the kernel, simply because it has a smaller choice of apps
    anyway.

    For example, anticheat mechanisms for online games. Fortnite is one I have
    seen mentioned, that cannot work with the x86 emulation offered by Windows-on-ARM. Presumbly this is not a problem on the Mac because
    Fortnite is simply unavailable on the Mac.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Lawrence D'Oliveiro@21:1/5 to BGB on Tue Oct 22 23:52:23 2024
    On Tue, 22 Oct 2024 16:18:50 -0500, BGB wrote:

    Like, little point in trying to run Win98 on a newest-generation
    platform (and, apparently, getting Win98 working natively on anything
    much newer than the mid 2000s is pain ...

    Funny, I did exactly that for a friend a couple of years ago. The Windows
    98 image ran under PCem <https://pcem-emulator.co.uk/>, on a Linux Mint installation on an MSI Cubi 5.

    I set up a “captive” user under Mint that, the moment you logged in, started the emulator running Windows. Shut down Windows, and it logged you
    out again.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Lawrence D'Oliveiro@21:1/5 to John Dallman on Tue Oct 22 23:48:24 2024
    On Tue, 22 Oct 2024 18:38 +0100 (BST), John Dallman wrote:

    Microsoft would probably like machines where media playing was harder to intercept, because that would earn them more trust from the media conglomerates.

    One of the innovations in Windows Vista was the addition of the “Protected Media Path”, which was supposed to solve exactly this problem. Didn’t it?

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From George Neuner@21:1/5 to All on Thu Oct 24 15:59:48 2024
    On Tue, 22 Oct 2024 22:17:28 +0000, [email protected] (MitchAlsup1)
    wrote:

    On Tue, 22 Oct 2024 21:59:46 +0000, George Neuner wrote:

    On Tue, 22 Oct 2024 00:03:43 +0000, [email protected] (MitchAlsup1)
    wrote:

    x86's long term survival depends on things out of AMD's and Intel's >>>hands. It depends on high volume access to devices people will buy
    new every year or every other year. A PC is not such a thing, while
    a cell phone seems to be.

    Only because the average cell phone gets broken or flooded within a
    year. If people were not so careless, I doubt most would be replaced
    so often.

    My current phone is over 4 years old and it continues to serve all of
    my needs. Sans damage, the only reason I would choose to replace it
    would be when critical apps no longer support the OS version.

    My first cell phone (Galaxy 3) I got in 2012 and used it until 2022
    when the service provider offered a zero cost upgrade because they
    were loosing access to the 4G-LTE antennae. I did put in 2 new
    batteries, and nothing was scratched or dented after 11 years of use.

    I still liked it better than the Galaxy 12 I have now. ...

    I used an LG flip phone from 2008..2020. Prior to that I had a Nokia
    "stick" from 1995. Before that I had a Motorola flip phone from early
    80's that was on my parents' plan.

    Only reasons I have ever upgraded was because carriers changed service requirements: 2G->3G, 3G->4G. I have never had to replace a phone
    because it was damaged.

    Current phone still is 4GLTE. It's OS is slated to sunset soon, but I
    expect to keep using it until developers drop support and the apps I
    need will no longer update.


    Oh and BTW:: I do not carry my cell phone unless I am traveling
    or expecting a call. It lives in my office--probably why it is
    not being damaged by being sat upon or dropped into water, and
    other causes of cell phone death.

    I /do/ carry my phone - always in my left front pocket. I won't answer
    if I'm busy (never while in the bathroom or while driving) ... if the
    caller won't leave a message, it's obvious that the call was not
    important.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)