<div dir="ltr">I have seen many Intel Celeron N/J machines with memory <4GiB. Although x86-32 is old, its non-heap memory footprint is lower, so it works better under resource constraints.<div><div><br></div><div>And although Windows 11 does not provide 32-bit images, as far as I know, Microsoft does not plan to give up support for running 32-bit programs on 64-bit systems.</div><div>32-bit programs are still an important part of Windows, a large number of programs are still 32-bit.</div><div>For a considerable number of client applications, upgrading to 64-bit has only negative benefits.<br></div></div><div>They only need a little memory and are not sensitive to performance. <br></div><div>What will 64-bit bring to them? Higher resource consumption and poor compatibility (cannot run on x86-32 or Windows 10 on Arm systems)<br></div><div><br></div><div>I know that maintaining a port requires a lot of manpower, so I can't ask you to do anything. But I really hope it will continue to be maintained.<br></div><div><br></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Tue, Feb 28, 2023 at 3:15 AM Alan Bateman <<a href="mailto:Alan.Bateman@oracle.com">Alan.Bateman@oracle.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
<div>
<br>
<br>
<div>On 27/02/2023 11:04, George Adams
wrote:<br>
</div>
<blockquote type="cite">
<div dir="ltr">
<div dir="ltr">
<div>
<div dir="ltr">
<p class="MsoNormal" style="color:rgb(33,33,33);margin:0cm;font-size:11pt;font-family:Calibri,sans-serif;line-height:1.5">
Hi all,</p>
<p class="MsoNormal" style="color:rgb(33,33,33);margin:0cm;font-size:11pt;font-family:Calibri,sans-serif;line-height:1.5">
</p>
<p class="MsoNormal" style="color:rgb(33,33,33);margin:0cm;font-size:11pt;font-family:Calibri,sans-serif;line-height:1.5">
I’ve been asked to socialize my proposed JEP to
deprecate the Windows x86-32 port on this mailing list.</p>
<p class="MsoNormal" style="color:rgb(33,33,33);margin:0cm;font-size:11pt;font-family:Calibri,sans-serif;line-height:1.5">
</p>
<p class="MsoNormal" style="color:rgb(33,33,33);margin:0cm;font-size:11pt;font-family:Calibri,sans-serif;line-height:1.5">
A link to the draft JEP can be found here:<span> </span><a href="https://bugs.openjdk.org/browse/JDK-8303167" style="color:rgb(0,120,212);text-decoration:underline" target="_blank">https://bugs.openjdk.org/browse/JDK-8303167</a></p>
<p class="MsoNormal" style="color:rgb(33,33,33);margin:0cm;font-size:11pt;font-family:Calibri,sans-serif;line-height:1.5">
</p>
<p class="MsoNormal" style="color:rgb(33,33,33);margin:0cm;font-size:11pt;font-family:Calibri,sans-serif;line-height:1.5">
In summary, the main motivation for this JEP is that
there is currently no implementation of <a href="https://openjdk.org/jeps/436" title="Follow link" style="color:rgb(0,120,212);text-decoration:underline" target="_blank">JEP
436 (Virtual Threads)</a> for 32-bit platforms and
without a vendor stepping forward to implement this it's
unlikely that OpenJDK will be able to continue
supporting 32-bit architectures. Another motivation is
that Windows 10 (the last Windows operating system to
support a 32-bit installation) will reach EOL<span> </span><span dir="ltr" style="color:currentcolor;text-decoration:underline rgb(0,120,212);font-size:inherit"><span dir="ltr" style="text-decoration-color:rgb(0,120,212)">on
October 14</span></span>, 20251.</p>
<br>
</div>
</div>
</div>
</div>
</blockquote>
When you build JDK 19+ to target windows-x86 then it will use an
alternative implementation of virtual thread that creates a kernel
thread for each virtual thread. So it doesn't scale but it's good
enough for Zero and ports that are a bit behind.<br>
<br>
That said, it's a good topic to bring up. I don't expect dropping
windows-x86 will remove the burden of keeping the x86_32 port
working, to do that would require dropping linux-x86 too. So maybe
the discussion should be broadened to ask if the time is approaching
to remove the x86_32 port? At one point, one of the arguments to
keep linux-x86 working was reconditioning older computers but I
don't know if this is still the case. I see a mail to jdk-dev from
Mark Yagnatinsky that talks about JNI libs or drivers that are
32-bit only. There isn't much context but it would be surprising for
something that is actively maintained to not have a 64-bit build in
2023. He also mentions limiting resources but that may be a case
where an OS container should be used. It might be that you expand
the Motivation in draft JEP to cover these points.<br>
<br>
-Alan<br>
<br>
</div>
</blockquote></div>