/usr/share/doc/user-mode-linux-doc/html/UserModeLinux-HOWTO-4.html is in user-mode-linux-doc 20060501-1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<HTML>
<HEAD>
<META NAME="GENERATOR" CONTENT="LinuxDoc-Tools 0.9.21">
<TITLE>User Mode Linux HOWTO : UML on 2G/2G hosts</TITLE>
<LINK HREF="UserModeLinux-HOWTO-5.html" REL=next>
<LINK HREF="UserModeLinux-HOWTO-3.html" REL=previous>
<LINK HREF="UserModeLinux-HOWTO.html#toc4" REL=contents>
</HEAD>
<BODY>
<A HREF="UserModeLinux-HOWTO-5.html">Next</A>
<A HREF="UserModeLinux-HOWTO-3.html">Previous</A>
<A HREF="UserModeLinux-HOWTO.html#toc4">Contents</A>
<HR>
<H2><A NAME="2G-2G"></A> <A NAME="s4">4.</A> <A HREF="UserModeLinux-HOWTO.html#toc4">UML on 2G/2G hosts</A></H2>
<P> </P>
<H2><A NAME="ss4.1">4.1</A> <A HREF="UserModeLinux-HOWTO.html#toc4.1">Introduction</A>
</H2>
<P>Most Linux machines are configured so that the kernel occupies the
upper 1G (0xc0000000 - 0xffffffff) of the 4G address space and
processes use the lower 3G (0x00000000 - 0xbfffffff). However, some
machine are configured with a 2G/2G split, with the kernel occupying
the upper 2G (0x80000000 - 0xffffffff) and processes using the lower
2G (0x00000000 - 0x7fffffff).</P>
<H2><A NAME="ss4.2">4.2</A> <A HREF="UserModeLinux-HOWTO.html#toc4.2">The problem</A>
</H2>
<P>The prebuilt UML binaries on this site will not run on 2G/2G hosts
because UML occupies the upper .5G of the 3G process address space
(0xa0000000 - 0xbfffffff). Obviously, on 2G/2G hosts, this is right
in the middle of the kernel address space, so UML won't even load - it
will immediately segfault.</P>
<H2><A NAME="ss4.3">4.3</A> <A HREF="UserModeLinux-HOWTO.html#toc4.3">The solution</A>
</H2>
<P>The fix for this is to rebuild UML from source after enabling
CONFIG_HOST_2G_2G (under 'General Setup'). This will cause UML to
load itself in the top .5G of that smaller process address space,
where it will run fine. See
<A HREF="UserModeLinux-HOWTO-2.html#compile">Compiling the kernel and modules</A> if you need help building UML from source.</P>
<HR>
<A HREF="UserModeLinux-HOWTO-5.html">Next</A>
<A HREF="UserModeLinux-HOWTO-3.html">Previous</A>
<A HREF="UserModeLinux-HOWTO.html#toc4">Contents</A>
</BODY>
</HTML>
|