Traduzido para o português.
authorThadeu Lima de Souza Cascardo <cascardo@holoscopio.com>
Tue, 1 Dec 2009 11:08:23 +0000 (09:08 -0200)
committerThadeu Lima de Souza Cascardo <cascardo@holoscopio.com>
Tue, 1 Dec 2009 11:08:23 +0000 (09:08 -0200)
_ldd.xml

index 8056a1f..a1085c6 100644 (file)
--- a/_ldd.xml
+++ b/_ldd.xml
@@ -9,26 +9,26 @@
 </slidesinfo>
 
 <foil>
-<title>Introduction</title>
+<title>Introdução</title>
 <para>
-Devices in POSIX Systems are files in /dev directory. As with any files
-in POSIX, they may be opened, closed, read from, written to, seeked,
-ioctl'd, and others.
+Dispositivos em sistemas POSIX são arquivos no diretório /dev. Como quaisquer
+outros arquivos no POSIX, eles podem ser abertos, fechados, lidos, escritos,
+posicionados, controlados, entre outros.
 </para>
 
 <para>
-Examples of device files:
+Exemplos de arquivos de dispositivos:
 </para>
 
 <itemizedlist>
 <listitem>
 <para>
-/dev/sda - A SCSI block device
+/dev/sda - Um dispositivo de bloco SCSI
 </para>
 </listitem>
 <listitem>
 <para>
-/dev/ttyS0 - A Serial terminal device
+/dev/ttyS0 - Um dispositivo terminal serial
 </para>
 </listitem>
 </itemizedlist>
@@ -36,11 +36,11 @@ Examples of device files:
 </foil>
 
 <foil>
-<title>POSIX I/O calls</title>
+<title>Chamandas de Entrada e Saída em POSIX</title>
 <para>
-POSIX systems have some standard calls for I/O. Since devices are files,
-these same system calls are used to work with devices. We are gonna work
-with the following calls:
+Sistemas POSIX possuem algumas chamadas padrões para E/S. Já que dispositivos
+são arquivos, essas mesmas chamadas são utilizadas para trabalhar com
+dispositivos. Vamos trabalhar com as seguintes chamadas:
 </para>
 <itemizedlist>
 <listitem><para>
@@ -67,19 +67,19 @@ ioctl
 <foil>
 <title>open</title>
 <para>
-The open system call opens a file. When working with devices, that's
-when some initialization should be done. Some devices may be opened only
-once at a time.
+A chamada de systema open abre um arquivo. Quando estivermos trabalhando com
+dispositivo, é quando alguma inicialização deve ser feita. Alguns dispositivos
+só podem ser abertos por um processo de cada vez.
 </para>
 <para>
 int open (char * filename, int flags);
 </para>
 <para>
-flags may be O\_RDONLY, O\_WRONLY, O\_RDWR and many others, some not
-important for devices.
+flags podem ser O\_RDONLY, O\_WRONLY, O\_RDWR e muitas outras, algumas menos
+importantes para dispositivos.
 </para>
 <para>
-Example:
+Exemplo:
 </para>
 <para>
 fd = open ("/dev/ttyS0", O\_RDWR);
@@ -89,13 +89,13 @@ fd = open ("/dev/ttyS0", O\_RDWR);
 <foil>
 <title>close</title>
 <para>
-The close system call closes an open file.
+A chamada de sistema close fecha um arquivo aberto.
 </para>
 <para>
 int close (int fd);
 </para>
 <para>
-Example:
+Exemplo:
 </para>
 <para>
 close (fd);
@@ -105,18 +105,18 @@ close (fd);
 <foil>
 <title>read</title>
 <para>
-The read system call reads data from an open file into a buffer. For
-devices, it reads from the device.
+A chamada de sistema read lê de um arquivo aberto para um buffer. Para
+dispositivos, ela lê de um dispositivo.
 </para>
 <para>
 int read (int fd, char *buffer, int bsz);
 </para>
 <para>
-Read returns the number of bytes written into the buffer, which may be
-less than the number of bytes requested for any number of reasons.
+read retorna o número de bytes escritos no buffer, que pode ser menor que o
+número de bytes requisitados por diferentes razões.
 </para>
 <para>
-Example:
+Exemplo:
 </para>
 <para>
 c = read (fd, buffer, sizeof (buffer));
@@ -126,18 +126,18 @@ c = read (fd, buffer, sizeof (buffer));
 <foil>
 <title>write</title>
 <para>
-The write system call writes data to an open file from a buffer. For
-devices, it writes to the device.
+A chamada de sistema write escreve dados de um buffer em um arquivo aberto. Para
+dispositivos, ela escreve no dispositivo.
 </para>
 <para>
 int write (int fd, char *buffer, int bsz);
 </para>
 <para>
-Write returns the number of bytes written to the file, which may be
-less than the number of bytes requested for any number of reasons.
+write retorna o número de bytes escritos no arquivo, que pode ser menor que o
+número de bytes requisitados por diferentes razões.
 </para>
 <para>
-Example:
+Exemplo:
 </para>
 <para>
 c = write (fd, buffer, strlen (buffer));
@@ -147,20 +147,20 @@ c = write (fd, buffer, strlen (buffer));
 <foil>
 <title>lseek</title>
 <para>
-The lseek system call changes the current position of the file, allowing
-to read or write in that position. Seeking on a device may have many
-different meanings.
+A chamada de sistema lseek muda a posição corrente do arquivo, permitindo a
+leitura ou escrita naquela posição. Posicionar em um dispositivo pode ter
+diferentes significados.
 </para>
 <para>
 off\_t lseek (int fd, off\_t pos, int whence);
 </para>
 <para>
-The meaning of the position depends on the value of whence, which can be
-SEEK\_SET (the absolute position), SEEK\_CUR (relative to the current
-position), SEEK\_END (relative to the end of the file).
+O significado da posição depende do valor de whence, que pode ser
+SEEK\_SET (a posição absoluta), SEEK\_CUR (relativa a posição corrente),
+SEEK\_END (relativa ao fim do arquivo).
 </para>
 <para>
-Example:
+Exemplo:
 </para>
 <para>
 lseek (fd, 0, SEEK\_END);
@@ -170,20 +170,20 @@ lseek (fd, 0, SEEK\_END);
 <foil>
 <title>ioctl</title>
 <para>
-The ioctl system call is a catch-all operation. For those operations
-which doesn't fit in the read/write model, the ioctl allows the user to
-send a command with an optional argument to the device. This command may
-accept input or generate output.
+A chamada de sistema ioctl é uma operação "pega-tudo". Para aquelas operações
+que não se encaixam no modelo leitura/escrita, ioctl permite ao usuário enviar
+um comando com um argumento opcional ao dispositivo. Esse comando pode aceitar
+entrada ou gerar saída.
 </para>
 <para>
 int ioctl (int fd, int request, char *arg);
 </para>
 <para>
-The last argument is optional and depends on the type of request. Every
-device or device class may have its different set of ioctl's.
+O último argumento é opcional e depende do tipo de requisição. Todo dispositivo
+ou classe de dispositivo pode ter seu diferente conjunto de ioctl's.
 </para>
 <para>
-Example:
+Exemplo:
 </para>
 <para>
 struct ifreq req; ioctl (fd, SIOCGIFFLAGS, \&#38;req);
@@ -191,32 +191,33 @@ struct ifreq req; ioctl (fd, SIOCGIFFLAGS, \&#38;req);
 </foil>
 
 <foil>
-<title>Linux Modules</title>
+<title>Módulos do Linux</title>
 <para>
-Linux is modularized. Drivers, filesystems, network protocols and others
-may be loaded at runtime. Every module has an init and an exit
-functions.
+Linux é modularizado. Drivers, sistemas de arquivos, protocolos de rede e outros
+podem ser carregados em tempo de execução. Todo módulos tem uma função init e
+uma função exit.
 </para>
 <para>
-Modules may have parameters. In load time, parameters, which may be
-boolean, integers or strings, are given by the user.
+Módulos podem ter parâmetros. Em tempo de carga, parâmetros, que podem ser
+booleanos, inteiros ou strings, são dados pelo usuário.
 </para>
 </foil>
 
 <foil>
-<title>Device types and numbers</title>
+<title>Tipos e números de dispositivos</title>
 <para>
-Linux devices may be of different types, including character devices,
-block devices or network devices. Both character and block devices have
-identifying numbers, a major and a minor number.
+Dispositivos no Linux podem ter diferentes tipos, incluindo dispositivos de
+caractere, dispositivos de bloco e dispositivos de rede. Tanto dispositivos de
+caractere quanto de bloco têm números identificadores, um número maior e um
+número menor.
 </para>
 </foil>
 
 <foil>
-<title>Character devices allocation</title>
+<title>Alocação de dispositivos de caractere</title>
 <para>
-In Linux, major and minor numbers have to be requested or allocated. The
-calls to do that for character devices are:
+No Linux, números maior e menor devem ser requisitados ou alocados. As chamadas
+para fazê-lo para os dispositivos de caractere são:
 </para>
 <para>
 int register\_chrdev\_region (dev\_t first, unsigned int count, char