svn commit: r312423 - head/share/man/man5
Konstantin Belousov
kib at FreeBSD.org
Thu Jan 19 18:26:07 UTC 2017
Author: kib
Date: Thu Jan 19 18:26:06 2017
New Revision: 312423
URL: https://svnweb.freebsd.org/changeset/base/312423
Log:
Refresh tmpfs(5) man page.
Provide more useful explanation of features and quirks.
Reviewed by: emaste, vangyzen
Sponsored by: The FreeBSD Foundation
MFC after: 1 week
Differential revision: https://reviews.freebsd.org/D9211
Modified:
head/share/man/man5/tmpfs.5
Modified: head/share/man/man5/tmpfs.5
==============================================================================
--- head/share/man/man5/tmpfs.5 Thu Jan 19 18:07:24 2017 (r312422)
+++ head/share/man/man5/tmpfs.5 Thu Jan 19 18:26:06 2017 (r312423)
@@ -1,7 +1,12 @@
.\"-
.\" Copyright (c) 2007 Xin LI
+.\" Copyright (c) 2017 The FreeBSD Foundation, Inc.
.\" All rights reserved.
.\"
+.\" Part of this documentation was written by
+.\" Konstantin Belousov <kib at FreeBSD.org> under sponsorship
+.\" from the FreeBSD Foundation.
+.\"
.\" Redistribution and use in source and binary forms, with or without
.\" modification, are permitted provided that the following conditions
.\" are met:
@@ -49,12 +54,12 @@
.\"
.\" $FreeBSD$
.\"
-.Dd April 23, 2012
+.Dd January 17, 2017
.Dt TMPFS 5
.Os
.Sh NAME
.Nm tmpfs
-.Nd "efficient memory file system"
+.Nd "in-memory file system"
.Sh SYNOPSIS
To compile this driver into the kernel,
place the following line in your
@@ -72,17 +77,40 @@ tmpfs_load="YES"
.Sh DESCRIPTION
The
.Nm
-driver will permit the
-.Fx
-kernel to access
+driver implements in-memory, or
.Tn tmpfs
-file systems.
+file system.
+The filesystem stores both file metadata and data in main memory.
+This allows very fast and low latency accesses to the data.
+The data is volatile.
+An umount or system reboot invalidates it.
+These properties make the filesystem's mounts suitable for fast
+scratch storage, e.g.
+.Pa /tmp .
+.Pp
+If the system becomes low on memory and swap is configured (see
+.Xr swapon 8 ),
+file data may be written to the swap space, freeing memory
+for other needs.
+The current implementation never swaps out metadata, including
+the directory content.
+Keep this in mind when planning the mount limits, especially when expecting
+to place many small files on a tmpfs mount.
+.Pp
+When a file from a tmpfs mount is mmaped (see
+.Xr mmap 2 )
+into the process address space, the swap VM object which manages the file
+pages is used to implement mapping and to avoid double-copying of
+the file data.
+This quirk causes process inspection tools, like
+.Xr procstat 1 ,
+to report anonymous memory mappings instead of file mappings.
.Sh OPTIONS
The following options are available when
mounting
.Nm
file systems:
-.Bl -tag -width indent
+.Bl -tag -width "It Cm maxfilesize"
.It Cm gid
Specifies the group ID of the root inode of the file system.
Defaults to the mount point's GID.
@@ -114,11 +142,15 @@ memory file system:
.Pp
.Dl "mount -t tmpfs tmpfs /tmp"
.Sh SEE ALSO
+.Xr procstat 1 ,
.Xr nmount 2 ,
+.Xr mmap 2 ,
.Xr unmount 2 ,
.Xr fstab 5 ,
.Xr mdmfs 8 ,
-.Xr mount 8
+.Xr mount 8 ,
+.Xr swapinfo 8 ,
+.Xr swapon 8
.Sh HISTORY
The
.Nm
@@ -130,7 +162,7 @@ The
.Nm
kernel implementation was written by
.An Julio M. Merino Vidal Aq Mt jmmv at NetBSD.org
-as a Google SoC project.
+as a Google Summer of Code project.
.Pp
.An Rohit Jalan
and others ported it from
@@ -140,5 +172,3 @@ to
.Pp
This manual page was written by
.An Xin LI Aq Mt delphij at FreeBSD.org .
-.Sh BUGS
-Some file system mount time options may not be well-supported.
More information about the svn-src-head
mailing list