summaryrefslogtreecommitdiff
path: root/sag-0.6.1-www/sag-0.6.1.html/x1466.html
diff options
context:
space:
mode:
Diffstat (limited to 'sag-0.6.1-www/sag-0.6.1.html/x1466.html')
-rw-r--r--sag-0.6.1-www/sag-0.6.1.html/x1466.html290
1 files changed, 290 insertions, 0 deletions
diff --git a/sag-0.6.1-www/sag-0.6.1.html/x1466.html b/sag-0.6.1-www/sag-0.6.1.html/x1466.html
new file mode 100644
index 0000000..c41cecd
--- /dev/null
+++ b/sag-0.6.1-www/sag-0.6.1.html/x1466.html
@@ -0,0 +1,290 @@
+<!DOCTYPE HTML PUBLIC "-//Norman Walsh//DTD DocBook HTML 1.0//EN">
+<HTML
+><HEAD
+><TITLE
+>Creating a swap space</TITLE
+><META
+NAME="GENERATOR"
+CONTENT="Modular DocBook HTML Stylesheet"><LINK
+REL="HOME"
+TITLE="The Linux System Administrators' Guide"
+HREF="book1.html"><LINK
+REL="UP"
+TITLE="Memory Management"
+HREF="c1450.html"><LINK
+REL="PREVIOUS"
+TITLE="Memory Management"
+HREF="c1450.html"><LINK
+REL="NEXT"
+TITLE="Using a swap space"
+HREF="x1495.html"></HEAD
+><BODY
+BGCOLOR="#FFFFFF"
+TEXT="#000000"
+><DIV
+CLASS="NAVHEADER"
+><TABLE
+WIDTH="100%"
+BORDER="0"
+CELLPADDING="0"
+CELLSPACING="0"
+><TR
+><TH
+COLSPAN="3"
+ALIGN="center"
+>The Linux System Administrators' Guide</TH
+></TR
+><TR
+><TD
+WIDTH="10%"
+ALIGN="left"
+VALIGN="bottom"
+><A
+HREF="c1450.html"
+>Prev</A
+></TD
+><TD
+WIDTH="80%"
+ALIGN="center"
+VALIGN="bottom"
+>Chapter 5. Memory Management</TD
+><TD
+WIDTH="10%"
+ALIGN="right"
+VALIGN="bottom"
+><A
+HREF="x1495.html"
+>Next</A
+></TD
+></TR
+></TABLE
+><HR
+ALIGN="LEFT"
+WIDTH="100%"></DIV
+><DIV
+CLASS="SECT1"
+><H1
+CLASS="SECT1"
+><A
+NAME="AEN1466"
+>Creating a swap space</A
+></H1
+><P
+>A swap file is an ordinary file; it is in no way special
+ to the kernel. The only thing that matters to the kernel is
+ that it has no holes, and that it is prepared for use with
+ <B
+CLASS="COMMAND"
+>mkswap</B
+>. It must reside on a local disk,
+ however; it can't reside in a filesystem that has been mounted
+ over NFS due to implementation reasons.</P
+><P
+>The bit about holes is important. The swap file reserves
+ the disk space so that the kernel can quickly swap out a page
+ without having to go through all the things that are necessary
+ when allocating a disk sector to a file. The kernel merely
+ uses any sectors that have already been allocated to the file.
+ Because a hole in a file means that there are no disk sectors
+ allocated (for that place in the file), it is not good for the
+ kernel to try to use them.</P
+><P
+>One good way to create the swap file without holes is through
+ the following command:
+
+<PRE
+CLASS="SCREEN"
+><TT
+CLASS="PROMPT"
+>$</TT
+> <TT
+CLASS="USERINPUT"
+><B
+>dd if=/dev/zero of=/extra-swap bs=1024 count=1024</B
+></TT
+>
+<TT
+CLASS="COMPUTEROUTPUT"
+>1024+0 records in
+1024+0 records out</TT
+>
+<TT
+CLASS="PROMPT"
+>$</TT
+></PRE
+>
+
+ where <TT
+CLASS="FILENAME"
+>/extra-swap</TT
+> is the name of the swap
+ file and the size of is given after the <TT
+CLASS="LITERAL"
+>count=</TT
+>.
+ It is best for the size to be a multiple of 4, because the
+ kernel writes out <I
+CLASS="GLOSSTERM"
+>memory pages</I
+>, which
+ are 4 kilobytes in size. If the size is not a multiple of 4,
+ the last couple of kilobytes may be unused.</P
+><P
+>A swap partition is also not special in any way. You create
+ it just like any other partition; the only difference is that
+ it is used as a raw partition, that is, it will not contain any
+ filesystem at all. It is a good idea to mark swap partitions
+ as type 82 (Linux swap); this will the make partition listings
+ clearer, even though it is not strictly necessary to the
+ kernel.</P
+><P
+>After you have created a swap file or a swap partition, you
+ need to write a signature to its beginning; this contains some
+ administrative information and is used by the kernel. The
+ command to do this is \cmd{mkswap}, used like this:
+
+<PRE
+CLASS="SCREEN"
+><TT
+CLASS="PROMPT"
+>$</TT
+> <TT
+CLASS="USERINPUT"
+><B
+>mkswap /extra-swap 1024</B
+></TT
+>
+<TT
+CLASS="COMPUTEROUTPUT"
+>Setting up swapspace, size = 1044480 bytes</TT
+>
+<TT
+CLASS="PROMPT"
+>$</TT
+></PRE
+>
+
+ Note that the swap space is still not in use yet: it exists,
+ but the kernel does not use it to provide virtual memory.</P
+><P
+>You should be very careful when using
+ <B
+CLASS="COMMAND"
+>mkswap</B
+>, since it does not check that the
+ file or partition isn't used for anything else. <I
+CLASS="EMPHASIS"
+>You
+ can easily overwrite important files and partitions with
+ <B
+CLASS="COMMAND"
+>mkswap</B
+>!</I
+> Fortunately, you should
+ only need to use <B
+CLASS="COMMAND"
+>mkswap</B
+> when you install
+ your system.</P
+><P
+>The Linux memory manager limits the size of each swap space to
+ about 127 MB (for various technical reasons, the actual limit
+ is (4096-10) * 8 * 4096 = 133890048$ bytes, or
+ 127.6875 megabytes). You can, however, use up to
+ 16 swap spaces simultaneously, for a total of almost
+ 2 GB.
+
+ <A
+NAME="AEN1493"
+HREF="#FTN.AEN1493"
+>[1]</A
+>
+
+ </P
+></DIV
+><H3
+>Notes</H3
+><TABLE
+BORDER="0"
+CLASS="FOOTNOTES"
+WIDTH="100%"
+><TR
+><TD
+ALIGN="LEFT"
+VALIGN="TOP"
+WIDTH="5%"
+><A
+NAME="FTN.AEN1493"
+HREF="x1466.html#AEN1493"
+>[1]</A
+></TD
+><TD
+ALIGN="LEFT"
+VALIGN="TOP"
+WIDTH="95%"
+><P
+>A gigabyte here, a gigabyte there, pretty
+ soon we start talking about real memory.</P
+></TD
+></TR
+></TABLE
+><DIV
+CLASS="NAVFOOTER"
+><HR
+ALIGN="LEFT"
+WIDTH="100%"><TABLE
+WIDTH="100%"
+BORDER="0"
+CELLPADDING="0"
+CELLSPACING="0"
+><TR
+><TD
+WIDTH="33%"
+ALIGN="left"
+VALIGN="top"
+><A
+HREF="c1450.html"
+>Prev</A
+></TD
+><TD
+WIDTH="34%"
+ALIGN="center"
+VALIGN="top"
+><A
+HREF="book1.html"
+>Home</A
+></TD
+><TD
+WIDTH="33%"
+ALIGN="right"
+VALIGN="top"
+><A
+HREF="x1495.html"
+>Next</A
+></TD
+></TR
+><TR
+><TD
+WIDTH="33%"
+ALIGN="left"
+VALIGN="top"
+>Memory Management</TD
+><TD
+WIDTH="34%"
+ALIGN="center"
+VALIGN="top"
+><A
+HREF="c1450.html"
+>Up</A
+></TD
+><TD
+WIDTH="33%"
+ALIGN="right"
+VALIGN="top"
+>Using a swap space</TD
+></TR
+></TABLE
+></DIV
+></BODY
+></HTML
+> \ No newline at end of file