diff options
Diffstat (limited to 'static/freebsd/man4/geom_zero.4 3.html')
| -rw-r--r-- | static/freebsd/man4/geom_zero.4 3.html | 144 |
1 files changed, 144 insertions, 0 deletions
diff --git a/static/freebsd/man4/geom_zero.4 3.html b/static/freebsd/man4/geom_zero.4 3.html new file mode 100644 index 00000000..bcb10b27 --- /dev/null +++ b/static/freebsd/man4/geom_zero.4 3.html @@ -0,0 +1,144 @@ +<table class="head"> + <tr> + <td class="head-ltitle">GEOM_ZERO(4)</td> + <td class="head-vol">Device Drivers Manual</td> + <td class="head-rtitle">GEOM_ZERO(4)</td> + </tr> +</table> +<div class="manual-text"> +<section class="Sh"> +<h1 class="Sh" id="NAME"><a class="permalink" href="#NAME">NAME</a></h1> +<p class="Pp"><code class="Nm">gzero</code>, <code class="Nm">geom_zero</code> + — <span class="Nd">GEOM-based zero disk/block device</span></p> +</section> +<section class="Sh"> +<h1 class="Sh" id="SYNOPSIS"><a class="permalink" href="#SYNOPSIS">SYNOPSIS</a></h1> +<p class="Pp"><code class="Cd">options GEOM_ZERO</code></p> +<p class="Pp">In <a class="Xr">loader.conf(5)</a> or + <a class="Xr">sysctl.conf(5)</a>: + <br/> + <code class="Cd">kern.geom.zero.byte</code> + <br/> + <code class="Cd">kern.geom.zero.clear</code></p> +</section> +<section class="Sh"> +<h1 class="Sh" id="DESCRIPTION"><a class="permalink" href="#DESCRIPTION">DESCRIPTION</a></h1> +<p class="Pp"><code class="Nm">gzero</code> is a <a class="Xr">GEOM(4)</a> + device simulating a one-exabyte disk. It throws away any data written to it, + and returns the value of <var class="Va">kern.geom.zero.byte</var> for every + byte read from it.</p> +<p class="Pp"><code class="Nm">gzero</code> differs from + <a class="Xr">zero(4)</a>, which is a regular character device and has an + infinite length, while <span class="Pa">/dev/gzero</span> is a + <a class="Xr">GEOM(4)</a> provider of large, but limited, size.</p> +<p class="Pp">Consult <a class="Xr">geom(8)</a> for instructions on how to use + the supported commands of the <a class="Xr">GEOM(4)</a> + <code class="Nm">ZERO</code> class.</p> +<p class="Pp"><code class="Nm">gzero</code> is useful for benchmarking + performance of GEOM and GEOM classes where compression of the data does not + affect the results (blocks from <span class="Pa">/dev/gzero</span> compress + exceptionally well). Examples of such benchmarks include comparing the speed + of two disk encryption algorithms and comparing a hardware versus software + implementation of a single encryption algorithm.</p> +</section> +<section class="Sh"> +<h1 class="Sh" id="MIB_VARIABLES"><a class="permalink" href="#MIB_VARIABLES">MIB + VARIABLES</a></h1> +<p class="Pp">The following variables are available as both + <a class="Xr">sysctl(8)</a> variables and <a class="Xr">loader(8)</a> + tunables:</p> +<dl class="Bl-tag"> + <dt id="kern.geom.zero.byte"><var class="Va">kern.geom.zero.byte</var></dt> + <dd>This variable sets the fill byte of the <code class="Nm">gzero</code> + device. Default: ‘<code class="Li">0</code>’.</dd> + <dt id="kern.geom.zero.clear"><var class="Va">kern.geom.zero.clear</var></dt> + <dd>This variable controls the clearing of the read data buffer. If set to + ‘<code class="Li">0</code>’, <code class="Nm">gzero</code> + will not copy any data into the read data buffers and just return the read + data buffers as they are without modifying them. In particular, it will + not fill the read buffer with the value of + <var class="Va">kern.geom.zero.byte</var>. This is useful for read + benchmarking to reduce the measurement noise caused by extra memory + initialization. Default: ‘<code class="Li">1</code>’.</dd> +</dl> +</section> +<section class="Sh"> +<h1 class="Sh" id="FILES"><a class="permalink" href="#FILES">FILES</a></h1> +<dl class="Bl-tag"> + <dt><span class="Pa">/dev/gzero</span></dt> + <dd>The <code class="Nm">gzero</code> device.</dd> +</dl> +</section> +<section class="Sh"> +<h1 class="Sh" id="EXAMPLES"><a class="permalink" href="#EXAMPLES">EXAMPLES</a></h1> +<p class="Pp">Create the <span class="Pa">/dev/gzero</span> device by loading + the <code class="Nm">geom_zero</code> kernel module:</p> +<div class="Bd Pp Bd-indent Li"> +<pre># geom zero load</pre> +</div> +<p class="Pp">Show information about the <code class="Nm">gzero</code> + device:</p> +<div class="Bd Pp Bd-indent Li"> +<pre># geom zero list +Geom name: gzero +Providers: +1. Name: gzero + Mediasize: 1152921504606846976 (1.0E) + Sectorsize: 512 + Mode: r0w0egzero0</pre> +</div> +<p class="Pp">Set the fill byte of the <code class="Nm">gzero</code> device to + 70 (decimal for letter “F” in <a class="Xr">ascii(7)</a>):</p> +<div class="Bd Pp Bd-indent Li"> +<pre># sysctl kern.geom.zero.byte=70 +kern.geom.zero.byte: 0 -> 70 +# head -c 1 /dev/gzero +F</pre> +</div> +<p class="Pp">Benchmark read and write throughput of <a class="Xr">geli(8)</a>'s + default encryption algorithm with a 4-KiB sector size:</p> +<div class="Bd Pp Bd-indent Li"> +<pre># geom zero load +# geli onetime -s 4096 gzero +# sysctl kern.geom.zero.clear=0 +# dd if=/dev/gzero.eli of=/dev/zero bs=4k count=$((1024 * 256)) +262144+0 records in +262144+0 records out +1073741824 bytes transferred in 1.258195 secs (853398307 bytes/sec) +# dd if=/dev/zero of=/dev/gzero.eli bs=4k count=$((1024 * 256)) +262144+0 records in +262144+0 records out +1073741824 bytes transferred in 1.663118 secs (645619658 bytes/sec)</pre> +</div> +</section> +<section class="Sh"> +<h1 class="Sh" id="SEE_ALSO"><a class="permalink" href="#SEE_ALSO">SEE + ALSO</a></h1> +<p class="Pp"><a class="Xr">GEOM(4)</a>, <a class="Xr">zero(4)</a>, + <a class="Xr">geom(8)</a>, <a class="Xr">sysctl(8)</a>, + <a class="Xr">bio(9)</a></p> +</section> +<section class="Sh"> +<h1 class="Sh" id="HISTORY"><a class="permalink" href="#HISTORY">HISTORY</a></h1> +<p class="Pp">A <code class="Nm">gzero</code> device first appeared in + <span class="Ux">FreeBSD 6</span>.</p> +</section> +<section class="Sh"> +<h1 class="Sh" id="AUTHORS"><a class="permalink" href="#AUTHORS">AUTHORS</a></h1> +<p class="Pp">The <code class="Nm">gzero</code> device was written by + <span class="An">Paweł Jakub Dawidek</span> + <<a class="Mt" href="mailto:pjd@FreeBSD.org">pjd@FreeBSD.org</a>>.</p> +<p class="Pp">The <code class="Nm">gzero</code> manual page was originally + written by <span class="An">Greg White</span> + <<a class="Mt" href="mailto:gkwhite@gmail.com">gkwhite@gmail.com</a>> + and rewritten by <span class="An">Mateusz Piotrowski</span> + <<a class="Mt" href="mailto:0mp@FreeBSD.org">0mp@FreeBSD.org</a>> + before landing in <span class="Ux">FreeBSD</span>.</p> +</section> +</div> +<table class="foot"> + <tr> + <td class="foot-date">November 9, 2025</td> + <td class="foot-os">FreeBSD 15.0</td> + </tr> +</table> |
