<?xml version="1.0" encoding="UTF-8"?>
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:wx="http://ilps.science.uva.nl/WikiXML/wx" xml:lang="pt" lang="pt">
<head>
<title>Nó de dispositivo</title>
<meta name="wx_namespace" content="0"/>
<meta name="wx_pagename" content="Nó_de_dispositivo"/>
<meta name="wx_page_id" content="401608"/>
</head>
<body>
<div id="wx_article">
<wx:section level="1" title="Nó de dispositivo" id="wxsec1"><h1 class="pagetitle" id="wx1">Nó de dispositivo</h1>

<p id="wx2">Um <b id="wx3">nó de dispositivo</b> é um tipo de arquivo especial utilizado em muitos <a href="/wpt/Sistema_operativo" title="Sistema operativo" wx:linktype="known" wx:pagename="Sistema_operativo" wx:page_id="1695" id="wx4">sistemas operacionais</a> do <a href="/wpt/Unix-like" title="Unix-like" wx:linktype="known" wx:pagename="Unix-like" wx:page_id="1315219" id="wx5">tipo Unix</a>. Os nós de dispositivo facilitam e tornam transparente a comunicação entre as aplicações no <a href="/wpt/Espa%C3%A7o_do_usu%C3%A1rio" title="Espaço do usuário" wx:linktype="known" wx:pagename="Espaço_do_usuário" wx:page_id="588466" id="wx6">espaço do usuário</a> e o <i id="wx7"><a href="/wpt/Hardware" title="Hardware" wx:linktype="known" wx:pagename="Hardware" wx:page_id="976" id="wx8">hardware</a></i> do <a href="/wpt/Computador" title="Computador" wx:linktype="known" wx:pagename="Computador" wx:page_id="536" id="wx9">computador</a>.</p>

<div id="wx_toc"/>

<a id="Implementa.C3.A7.C3.A3o" name="Implementa.C3.A7.C3.A3o"/>
<wx:section level="2" title="Implementação" id="wxsec2"><h2 id="wx10">Implementação</h2>

<p id="wx11">Por definição, os nós de dispositivo correspondem aos recursos que foram previamente alocados pelo <a href="/wpt/Kernel" title="Kernel" wx:linktype="known" wx:pagename="Kernel" wx:page_id="1111" id="wx12">kernel</a> do sistema operacional. Estes recursos são identificados por um "número maior" e um "número menor", que são armazenados como parte da estrutura do nó. A atribuição destes números é específica dos diferentes sistemas operacionais e plataformas.</p>

<p id="wx13">Como outros tipos de arquivos especiais, os nós de dispositivo são acessados através de <a href="/wpt/Chamada_de_sistema" title="Chamada de sistema" wx:linktype="known" wx:pagename="Chamada_de_sistema" wx:page_id="174049" id="wx14">chamadas de sistema</a> padronizadas e tratados como qualquer arquivo comum. Existem dois tipos padronizados de <a href="/wpt/Arquivo_de_dispositivo" title="Arquivo de dispositivo" wx:linktype="known" wx:pagename="Arquivo_de_dispositivo" wx:page_id="399265" id="wx15">arquivo de dispositivo</a>, diferenciados pelo tipo de <i id="wx16">hardware</i> pelo qual eles servem de <a href="/wpt/Interface" title="Interface" wx:linktype="known" wx:pagename="Interface" wx:page_id="6949" id="wx17">interface</a> e pela maneira com que o sistema operacional processa as operações de <a href="/wpt/I/O" title="I/O" wx:linktype="known" wx:pagename="I/O" wx:page_id="124031" id="wx18">I/O</a>.</p>

<a id="Dispositivos_de_caractere" name="Dispositivos_de_caractere"/>
</wx:section><wx:section level="2" title="Dispositivos de caractere" id="wxsec3"><h2 id="wx19">Dispositivos de caractere</h2>

<div class="wx_image" wx:align="right" id="wx20"><a href="/wpt/Imagem:Nuvola-fs-chardev.svg" title="" wx:linktype="image" wx:pagename="Imagem:Nuvola-fs-chardev.svg" id="wx21"><img src="/wpt/Imagem:Nuvola-fs-chardev.svg" alt="" width="64" id="wx22"/></a></div>

<p id="wx23">Os "dispositivos de caractere" ou "arquivos especiais de caractere" são usados como correspondentes de dispositivos cujos dados são transmitidos na forma de um <a href="/wpt/Caractere" title="Caractere" wx:linktype="known" wx:pagename="Caractere" wx:page_id="64783" id="wx24">caractere</a> por vez. Estes nós de dispositivo são frequentemente utilizados na <a href="/wpt/Interface_serial" title="Interface serial" wx:linktype="known" wx:pagename="Interface_serial" wx:page_id="127759" id="wx25">comunicação serial</a> para máquinas de <a href="/wpt/Teletipo" title="Teletipo" wx:linktype="known" wx:pagename="Teletipo" wx:page_id="261713" id="wx26">teletipo</a>, <a href="/wpt/Terminal" title="Terminal" wx:linktype="known" wx:pagename="Terminal" wx:page_id="863782" id="wx27">terminais</a> virtuais e <a href="/wpt/Modem" title="Modem" wx:linktype="known" wx:pagename="Modem" wx:page_id="1238" id="wx28">modems</a> seriais.</p>

<p id="wx29">Na maioria das implementações, os dispositivos de caractere utilizam rotinas de <a href="/wpt/I/O" title="I/O" wx:linktype="known" wx:pagename="I/O" wx:page_id="124031" id="wx30">I/O</a> não "<a href="/wpt/Buffer" title="Buffer" wx:linktype="known" wx:pagename="Buffer" wx:page_id="631462" id="wx31">bufferizadas</a>". Cada caractere é lido, e escrito, no dispositivo imediatamente.</p>

<a id="Dispositivos_de_bloco" name="Dispositivos_de_bloco"/>
</wx:section><wx:section level="2" title="Dispositivos de bloco" id="wxsec4"><h2 id="wx32">Dispositivos de bloco</h2>

<div class="wx_image" wx:align="right" id="wx33"><a href="/wpt/Imagem:Nuvola-fs-blockdev.svg" title="" wx:linktype="image" wx:pagename="Imagem:Nuvola-fs-blockdev.svg" id="wx34"><img src="/wpt/Imagem:Nuvola-fs-blockdev.svg" alt="" width="64" id="wx35"/></a></div>

<p id="wx36">"Dispositivos de bloco" ou "arquivos especiais de bloco" são utilizados como correspondentes de dispositivos nos quais os dados são transmitidos na forma de blocos. Estes nós de dispositivo são frequentemente utilizados em dispositivos de <a href="/wpt/Porta_paralela" title="Porta paralela" wx:linktype="known" wx:pagename="Porta_paralela" wx:page_id="267352" id="wx37">comunicações paralelas</a> como <a href="/wpt/Disco_r%C3%ADgido" title="Disco rígido" wx:linktype="known" wx:pagename="Disco_rígido" wx:page_id="740" id="wx38">discos rígidos</a> e <i id="wx39"><a href="/wpt/Drive" title="Drive" wx:linktype="known" wx:pagename="Drive" wx:page_id="107715" id="wx40">drives</a></i> de <a href="/wpt/CD-ROM" title="CD-ROM" wx:linktype="known" wx:pagename="CD-ROM" wx:page_id="35725" id="wx41">CD-ROM</a>.</p>

<p id="wx42">A maior diferença entre os dispositivos de bloco e de caractere está no fato dos dispositivos de bloco utilizarem rotinas de I/O "bufferizadas". O sistema operacional aloca um <i id="wx43"><a href="/wpt/Buffer" title="Buffer" wx:linktype="known" wx:pagename="Buffer" wx:page_id="631462" id="wx44">buffer</a></i> para manipular um único bloco para cada <a href="/wpt/I/O" title="I/O" wx:linktype="known" wx:pagename="I/O" wx:page_id="124031" id="wx45">entrada e saída</a>. Quando um programa envia uma requisição de leitura, ou escrita, para um dispositivo, cada caractere de dado é armazenado no <i id="wx46">buffer</i> apropriado. Quando o <i id="wx47">buffer</i> fica cheio e um bloco completo é obtido, a operação de I/O é realizada e o <i id="wx48">buffer</i> é esvaziado.</p>

<a id="Pseudo-dispositivos" name="Pseudo-dispositivos"/>
</wx:section><wx:section level="2" title="Pseudo-dispositivos" id="wxsec5"><h2 id="wx49">Pseudo-dispositivos</h2>

<p id="wx50">Os nós de dispositivo nos sistemas operacionais do tipo Unix, não necessariamente tem um dispositivo físico correspondente. Os nós que não têm esta correspondência são chamados de "pseudo-dispositivos". Eles são utilizados em várias funções, que são gerenciadas pelo sistema operacional. Os pseudo-dispositivos mais comuns são:</p>

<dl id="wx51">
<dt id="wx52"><tt id="wx53"><a href="/wpt//dev/null" title="/dev/null" wx:linktype="known" wx:pagename="/dev/null" wx:page_id="396691" id="wx54">/dev/null</a></tt></dt>

<dd id="wx55">
<p id="wx56">Aceita e descarta toda entrada; não produz saída.</p>
</dd>

<dt id="wx57"><tt id="wx58"><a href="/wpt//dev/random" title="/dev/random" wx:linktype="known" wx:pagename="/dev/random" wx:page_id="399253" id="wx59">/dev/random</a></tt></dt>

<dd id="wx60">
<p id="wx61">Produz um <a href="/wpt/Stream" title="Stream" wx:linktype="known" wx:pagename="Stream" wx:page_id="71679" id="wx62">fluxo</a> de tamanho variável contendo caracteres pseudo-aleatórios.</p>
</dd>

<dt id="wx63"><tt id="wx64"><a href="/wpt//dev/zero" title="/dev/zero" wx:linktype="known" wx:pagename="/dev/zero" wx:page_id="399094" id="wx65">/dev/zero</a></tt></dt>

<dd id="wx66">
<p id="wx67">Produz um fluxo contínuo de <a href="/wpt/Null_%28programa%C3%A7%C3%A3o%29" title="Null (programação)" wx:linktype="known" wx:pagename="Null_(programação)" wx:page_id="396709" id="wx68">nulls</a> (zeros).</p>
</dd>
</dl>

<a id="Ver_tamb.C3.A9m" name="Ver_tamb.C3.A9m"/>
</wx:section><wx:section level="2" title="Ver também" id="wxsec6"><h2 id="wx69"><wx:template id="wx_t1" pagename="Predefinição:Ver_também" page_id="62492"/>Ver também<wx:templateend start="wx_t1"/></h2>

<ul id="wx70">
<li id="wx71"><a href="/wpt/Tamanho_de_bloco_%28transmiss%C3%A3o_e_armazenamento_de_dados%29" class="new" title="Tamanho de bloco (transmissão e armazenamento de dados)" wx:linktype="unknown" wx:pagename="Tamanho_de_bloco_(transmissão_e_armazenamento_de_dados)" id="wx72">Tamanho de bloco</a></li>

<li id="wx73"><a href="/wpt/Buffer" title="Buffer" wx:linktype="known" wx:pagename="Buffer" wx:page_id="631462" id="wx74">Buffer</a></li>

<li id="wx75"><a href="/wpt/Sistema_de_ficheiros" title="Sistema de ficheiros" wx:linktype="known" wx:pagename="Sistema_de_ficheiros" wx:page_id="35700" id="wx76">Sistema de arquivos</a></li>

<li id="wx77"><a href="/wpt/Abstra%C3%A7%C3%A3o_de_hardware" title="Abstração de hardware" wx:linktype="known" wx:pagename="Abstração_de_hardware" wx:page_id="72965" id="wx78">Abstração de hardware</a></li>

<li id="wx79"><a href="/wpt/Arquivo_de_dispositivo" title="Arquivo de dispositivo" wx:linktype="known" wx:pagename="Arquivo_de_dispositivo" wx:page_id="399265" id="wx80">Arquivos especiais</a></li>

<li id="wx81"><a href="/wpt/Espa%C3%A7o_do_usu%C3%A1rio" title="Espaço do usuário" wx:linktype="known" wx:pagename="Espaço_do_usuário" wx:page_id="588466" id="wx82">Espaço do usuário</a></li>
</ul>
</wx:section></wx:section></div>
<div id="wx_categorylinks">
<a href="/wpt/index.php?title=Especial:Categories&amp;article=N%C3%B3_de_dispositivo" title="Especial:Categories" wx:linktype="known" wx:pagename="Especial:Categories" id="wx83">Categorias de páginas</a>: <span dir="ltr" id="wx84"><a href="/wpt/Categoria:Unix" title="Categoria:Unix" wx:linktype="known" wx:pagename="Categoria:Unix" wx:page_id="60634" id="wx85">Unix</a></span></div>
<div id="wx_languagelinks">
Outras línguas: <a href="http://de.wikipedia.org/wiki/Ger%C3%A4tedatei" class="external" wx:linktype="interwiki" wx:pagename="de:Gerätedatei" id="wx86">Deutsch</a> | <a href="http://en.wikipedia.org/wiki/Device_node" class="external" wx:linktype="interwiki" wx:pagename="en:Device_node" id="wx87">English</a> | <a href="http://es.wikipedia.org/wiki/Fichero_de_dispositivo" class="external" wx:linktype="interwiki" wx:pagename="es:Fichero_de_dispositivo" id="wx88">Español</a> | <a href="http://ru.wikipedia.org/wiki//dev" class="external" wx:linktype="interwiki" wx:pagename="ru:/dev" id="wx89">Русский</a></div>
</body>
<wx:templatearguments for="wx_t1"><wx:argument name=""/></wx:templatearguments>
</html>
