On x86, the solution would be either PAE, but yet better is to use a 32-bit system with a 64-bit kernel.
The physical memory of the planned 32-bit ARM system is only 3GB. I would like to increase it, possibly even above 4GB, by using swap file.
While the physical memory remains 32 bit addressable, I believe, OS still need to somehow handle the current pages on the swap, what might be non-trivial if the total amount of memory is not 32-bit addressable.
For example, I think, maybe two processes can not always map the same memory page, and similar problems might arise. However, I can not see it really impossible.
Is it possible on a 32-bit ARM Linux kernel?