It was actually 3gb because operating systems have to reserve parts of the memory address space for other things. It’s more difficult for all 32bit operating systems to address above 4gb just most implemented additional complexity much earlier because Linux runs on large servers and stuff. Windows actually had a way to switch over to support it in some versions too. Probably the NT kernels that where also running on servers.
A quick skim of the Wikipedia seems like a good starting point for understanding the old problem.
Should I point out the irony of this complaint being posted on a site with ads every other sentence and doesn’t even show what the windows ads looks like?
It’s a valid complaint and all I just laughed as I scrolled past all the blank “ad here” blocks to read the article.