Hacker News new | ask | show | jobs
by CUR10US 5131 days ago
He mentions running out of memory addresses when there's still ample physical memory available.

The obvious thought is: We need to create more addressable space to take advantage of this plentiful physical memory.

The less obvious thought is: Given that we have such plentiful physical memory, why are we using an old hack that was designed for a problem that no longer exists?[1] The name of the problem: Not enough physical memory to keep processes in their own space. The name of the hack: Shared memory and dynamic linking.

1. Of course, we can keep making software larger and more resource intensive to perpetuate the problem and thus justify the ongoing use of the solution (shared memory). A comparative example might be disk space. We have so much disk space that we can keep making files larger (e.g. programs, operating systems, document/media files, data collection) to justify a need for more space.

Commence downvoting.

1 comments

Dynamic linking addressed was a solution to a lot more issues than just not having enough physical memory. It provided convenient ways to ensure consistent modules between otherwise unrelated processes, to upgrade functionality on all processes on a platform without altering them, to insulate programs from changes to the underlying platform, etc.
What is dll/dependency hell?
Just 'cause it is a solution, doesn't mean it doesn't create its own problems. ;-)

I do agree that we may be ready to have something cleaner than the old shared library model. Just don't suggest it was a one trick pony.