skas patch for UML
Brad Fitzpatrick
brad@danga.com
Fri, 9 Jan 2004 14:20:11 -0800 (PST)
I was talking to Muli Ben-Yehuda about memcached and he reminded me of the
UML (user mode linux) patch which adds a new syscall (well, character
device) to create/destroy/use address spaces without pids.
If that ever made it into Linux, we could have a single process on a
32-bit machine addressing more than 4GB of memory. We'd just need to
break up the struct item into two structs: a small one with just metadata
(key, address space id, prev/next pointers, and data pointer). Then to
get to the data you switch to the given address space and find it with the
data pointer.
Windows provides that API to applications. InnoDB uses it, for instance.
http://www.microsoft.com/windows2000/en/datacenter/help/address_windowing_extensions.htm
The Linux equivalent is the UML skas patch, here:
http://aleron.dl.sourceforge.net/sourceforge/user-mode-linux/host-skas3.patch
These might be interesting to use, but it might not be worth it. The
existing "run a lot of daemons" works fine, I suppose, and 64 bit stuff is
getting halfway popular.
- Brad