diff options
Diffstat (limited to 'static/freebsd/man4/ada.4 3.html')
| -rw-r--r-- | static/freebsd/man4/ada.4 3.html | 151 |
1 files changed, 151 insertions, 0 deletions
diff --git a/static/freebsd/man4/ada.4 3.html b/static/freebsd/man4/ada.4 3.html new file mode 100644 index 00000000..3ef5f31e --- /dev/null +++ b/static/freebsd/man4/ada.4 3.html @@ -0,0 +1,151 @@ +<table class="head"> + <tr> + <td class="head-ltitle">ADA(4)</td> + <td class="head-vol">Device Drivers Manual</td> + <td class="head-rtitle">ADA(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">ada</code> — <span class="Nd">ATA Direct + Access device driver</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">device ada</code></p> +</section> +<section class="Sh"> +<h1 class="Sh" id="DESCRIPTION"><a class="permalink" href="#DESCRIPTION">DESCRIPTION</a></h1> +<p class="Pp">The <code class="Nm">ada</code> driver provides support for direct + access devices, implementing the ATA command protocol, that are attached to + the system through a host adapter supported by the CAM subsystem.</p> +<p class="Pp">The host adapter must also be separately configured into the + system before an ATA direct access device can be configured.</p> +</section> +<section class="Sh"> +<h1 class="Sh" id="COMMAND_QUEUING"><a class="permalink" href="#COMMAND_QUEUING">COMMAND + QUEUING</a></h1> +<p class="Pp">Command queuing allows the device to process multiple transactions + concurrently, often re-ordering them to reduce the number and length of + seeks. ATA defines two types of queuing: TCQ (Tagged Command Queuing, PATA + legacy) and NCQ (Native Command Queuing, SATA). The + <code class="Nm">ada</code> device driver takes full advantage of NCQ, when + supported. To ensure that transactions to distant parts of the media, which + may be deferred indefinitely by servicing requests closer to the current + head position, are completed in a timely fashion, an ordered transaction is + sent every 7 seconds during continuous device operation.</p> +</section> +<section class="Sh"> +<h1 class="Sh" id="CACHE_EFFECTS"><a class="permalink" href="#CACHE_EFFECTS">CACHE + EFFECTS</a></h1> +<p class="Pp">Many direct access devices are equipped with read and/or write + caches. Parameters affecting the device's cache are reported in device + IDENTIFY data and can be examined and modified via the + <a class="Xr">camcontrol(8)</a> utility.</p> +<p class="Pp">The read cache is used to store data from device-initiated read + ahead operations as well as frequently used data. The read cache is + transparent to the user and can be enabled without any adverse effect. Most + devices with a read cache come from the factory with it enabled.</p> +<p class="Pp">The write cache can greatly decrease the latency of write + operations and allows the device to reorganize writes to increase efficiency + and performance. This performance gain comes at a price. Should the device + lose power while its cache contains uncommitted write operations, these + writes will be lost. The effect of a loss of write transactions on a file + system is non-deterministic and can cause corruption. Most devices age write + transactions to limit the vulnerability to a few transactions recently + reported as complete, but it is nonetheless recommended that systems with + write cache enabled devices reside on an Uninterruptible Power Supply (UPS). + The <code class="Nm">ada</code> device driver ensures that the cache and + media are synchronized upon final close of the device or an unexpected + shutdown (panic) event. This ensures that it is safe to disconnect power + once the operating system has reported that it has halted.</p> +</section> +<section class="Sh"> +<h1 class="Sh" id="SYSCTL_VARIABLES"><a class="permalink" href="#SYSCTL_VARIABLES">SYSCTL + 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.cam.ada.retry_count"><var class="Va">kern.cam.ada.retry_count</var></dt> + <dd> + <p class="Pp">This variable determines how many times the + <code class="Nm">ada</code> driver will retry a READ or WRITE command. + This does not affect the number of retries used during probe time or for + the <code class="Nm">ada</code> driver dump routine. This value + currently defaults to 4.</p> + </dd> + <dt id="kern.cam.ada.default_timeout"><var class="Va">kern.cam.ada.default_timeout</var></dt> + <dd> + <p class="Pp">This variable determines how long the + <code class="Nm">ada</code> driver will wait before timing out an + outstanding command. The units for this value are seconds, and the + default is currently 30 seconds.</p> + </dd> + <dt id="kern.cam.ada.spindown_shutdown"><var class="Va">kern.cam.ada.spindown_shutdown</var></dt> + <dd> + <p class="Pp">This variable determines whether to spin-down disks when + shutting down. Set to 1 to enable spin-down, 0 to disable. The default + is currently enabled.</p> + </dd> + <dt id="kern.cam.sort_io_queue"><var class="Va">kern.cam.sort_io_queue</var></dt> + <dd style="width: auto;"> </dd> + <dt id="kern.cam.ada."><var class="Va">kern.cam.ada.</var><var class="Ar">X</var><var class="Va">.sort_io_queue</var></dt> + <dd> + <p class="Pp">These variables determine whether request queue should be + sorted trying to optimize head seeks. Set to 1 to enable sorting, 0 to + disable, -1 to leave it as-is. The default is sorting enabled for HDDs + and disabled SSDs.</p> + </dd> + <dt id="kern.cam.ada.read_ahead"><var class="Va">kern.cam.ada.read_ahead</var></dt> + <dd style="width: auto;"> </dd> + <dt id="kern.cam.ada.~2"><var class="Va">kern.cam.ada.</var><var class="Ar">X</var><var class="Va">.read_ahead</var></dt> + <dd style="width: auto;"> </dd> + <dt id="kern.cam.ada.write_cache"><var class="Va">kern.cam.ada.write_cache</var></dt> + <dd style="width: auto;"> </dd> + <dt id="kern.cam.ada.~3"><var class="Va">kern.cam.ada.</var><var class="Ar">X</var><var class="Va">.write_cache</var></dt> + <dd> + <p class="Pp">These variables determine whether device read-ahead and write + caches should be enabled globally or per-device or disabled. Set to 1 to + enable write cache, 0 to disable, -1 to leave it as-is. Values modified + at runtime take effect only after device reset (using the reset + subcommand of <a class="Xr">camcontrol(8)</a>). Because of that, this + setting should be changed in <span class="Pa">/boot/loader.conf</span> + instead of <span class="Pa">/etc/sysctl.conf</span>. The global default + is currently 1. The per-device default is to leave it as-is (follow + global setting).</p> + </dd> +</dl> +</section> +<section class="Sh"> +<h1 class="Sh" id="FILES"><a class="permalink" href="#FILES">FILES</a></h1> +<dl class="Bl-tag Bl-compact"> + <dt><span class="Pa">/dev/ada*</span></dt> + <dd>ATA device nodes</dd> +</dl> +</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">ahci(4)</a>, <a class="Xr">cam(4)</a>, + <a class="Xr">da(4)</a>, <a class="Xr">mvs(4)</a>, <a class="Xr">nda(4)</a>, + <a class="Xr">siis(4)</a></p> +</section> +<section class="Sh"> +<h1 class="Sh" id="HISTORY"><a class="permalink" href="#HISTORY">HISTORY</a></h1> +<p class="Pp">The <code class="Nm">ada</code> driver first appeared in + <span class="Ux">FreeBSD 8.0</span>.</p> +</section> +<section class="Sh"> +<h1 class="Sh" id="AUTHORS"><a class="permalink" href="#AUTHORS">AUTHORS</a></h1> +<p class="Pp"><span class="An">Alexander Motin</span> + <<a class="Mt" href="mailto:mav@FreeBSD.org">mav@FreeBSD.org</a>></p> +</section> +</div> +<table class="foot"> + <tr> + <td class="foot-date">December 20, 2017</td> + <td class="foot-os">FreeBSD 15.0</td> + </tr> +</table> |
