Saltar para o conteúdo

Descritor de arquivo: diferenças entre revisões

Origem: Wikipédia, a enciclopédia livre.
Conteúdo apagado Conteúdo adicionado
EmausBot (discussão | contribs)
m r2.7.2+) (Robô: A modificar vi:File descriptor para vi:Đặc tả tập tin
Dbastro (discussão | contribs)
m link
 
(Há 8 revisões intermédias de 4 utilizadores que não estão a ser apresentadas)
Linha 1: Linha 1:
[[Imagem:Fluxos-padrões.png|thumb|300px|direita|Os descritores de arquivo para entrada, saída e erro]]
Em [[programação]], um {{PBPE|descritor de arquivo|descritor de ficheiro}} é a abstração de um identificador para acessar um [[arquivo de computador|arquivo]]. O termo é geralmente usado em [[sistema operacional|sistemas operacionais]] [[POSIX]]. Para o [[Microsoft Windows]], o termo "''handle'' de arquivo" é mais usado.


Em [[programação de computadores]], um {{PBPE|descritor de arquivo|descritor de ficheiro}}, do inglês '''file descriptor''' (FD), é um indicador abstrato para acessar um [[arquivo de computador|arquivo]]. O termo é geralmente usado em [[sistema operacional|sistemas operacionais]] [[POSIX]]. Para o [[Microsoft Windows]], o termo "''[[Handle (informática)|handle]]'' de arquivo" é mais usado.
Em POSIX, um descritor de arquivo é um [[Inteiro (tipo de dado)|inteiro]], o tipo <code>int</code> do [[C (linguagem de programação)|C]]. Existem três descritores de arquivo padrões em POSIX, disponíveis para todos os processos (exceto ''[[Daemon (aplicativo para computadores)|daemons]]''), os [[fluxos padrão]]: entrada padrão (valor 0), saída padrão (valor 1) e erro padrão (valor 2).<ref>Santos, 2000</ref>

Em POSIX, um descritor de arquivo é um [[Inteiro (tipo de dado)|inteiro]], especificamente do tipo <code>int</code> de [[C (linguagem de programação)|C]]. Existem três descritores de arquivo padrões em POSIX, que correspondem aos três [[fluxos padrão]]<ref>Santos, 2000</ref>, os quais provavelmente todos os processos (exceto talvez uma [[Daemon (computação)|daemon]]) deve esperar ter:

{| class="wikitable"
!Valor inteiro
!Nome
|-
|0
|Entrada padrão (''stdin'')
|-
|1
|Saída padrão (''stdout'')
|-
|2
|Erro padrão (''stderr'')
|}


De forma geral, um descritor de arquivo é um índice para um registro de uma [[estrutura de dados]] do [[núcleo (informática)|núcleo]] que contém detalhes de todos os arquivos abertos. Em POSIX tal estrutura de dado é chamada tabela do descritor de arquivo, e cada [[processo (informática)|processo]] possui sua própria tabela. Uma aplicação passa o descritor de arquivo para o núcleo através duma [[chamada de sistema]], e o kernel acessa o arquivo representando a aplicação, baseado no descritor. A aplicação não pode manipular a tabela do descritor de arquivo diretamente.
De forma geral, um descritor de arquivo é um índice para um registro de uma [[estrutura de dados]] do [[núcleo (informática)|núcleo]] que contém detalhes de todos os arquivos abertos. Em POSIX tal estrutura de dado é chamada tabela do descritor de arquivo, e cada [[processo (informática)|processo]] possui sua própria tabela. Uma aplicação passa o descritor de arquivo para o núcleo através duma [[chamada de sistema]], e o kernel acessa o arquivo representando a aplicação, baseado no descritor. A aplicação não pode manipular a tabela do descritor de arquivo diretamente.
Linha 7: Linha 23:
Em sistema [[Unix-like]], descritores de arquivos podem se referir não somente a arquivos, mas também [[Diretório (informática)|diretórios]], dispositivos de memória, [[soquete]]s e [[Pipe nomeado|pipes nomeados]] ou [[canalização (informática)|não nomeados]], seguindo a máxima da plataforma de que "tudo é arquivo".<ref>Maillard, p. 41</ref>
Em sistema [[Unix-like]], descritores de arquivos podem se referir não somente a arquivos, mas também [[Diretório (informática)|diretórios]], dispositivos de memória, [[soquete]]s e [[Pipe nomeado|pipes nomeados]] ou [[canalização (informática)|não nomeados]], seguindo a máxima da plataforma de que "tudo é arquivo".<ref>Maillard, p. 41</ref>


{{ref-section|Notas}}
{{referências|Notas}}


==Referências==
==Referências==
Linha 16: Linha 32:
|publicado=[[Universidade Federal do Rio Grande do Sul|UFRGS]]
|publicado=[[Universidade Federal do Rio Grande do Sul|UFRGS]]
|acessodata=10 de julho de 2008
|acessodata=10 de julho de 2008
|arquivourl=https://web.archive.org/web/20060903112343/http://www.inf.ufrgs.br/~nmaillard/info1040/3sistemas-arquivos-info1040.ppt
|arquivodata=2006-09-03
|urlmorta=yes
}}
}}
* {{citar web
* {{citar web
Linha 28: Linha 47:


[[Categoria:Unix]]
[[Categoria:Unix]]
[[Categoria:POSIX]]

[[Categoria:Tecnologia de sistema de arquivos do Unix]]
[[cs:Souborový deskriptor]]
[[de:Handle#Datei-Handle]]
[[en:File descriptor]]
[[es:Descriptor de archivo]]
[[fr:Descripteur de fichier]]
[[gl:Descritor de ficheiro]]
[[it:Descrittore di file]]
[[ja:ファイル記述子]]
[[ko:파일 서술자]]
[[pl:Deskryptor pliku]]
[[ru:Файловый дескриптор]]
[[sk:Deskriptor (výpočtová technika)]]
[[sv:Fildeskriptor]]
[[vi:Đặc tả tập tin]]
[[zh:文件描述符]]

Edição atual tal como às 16h30min de 12 de setembro de 2020

Os descritores de arquivo para entrada, saída e erro

Em programação de computadores, um descritor de arquivo (português brasileiro) ou descritor de ficheiro (português europeu), do inglês file descriptor (FD), é um indicador abstrato para acessar um arquivo. O termo é geralmente usado em sistemas operacionais POSIX. Para o Microsoft Windows, o termo "handle de arquivo" é mais usado.

Em POSIX, um descritor de arquivo é um inteiro, especificamente do tipo int de C. Existem três descritores de arquivo padrões em POSIX, que correspondem aos três fluxos padrão[1], os quais provavelmente todos os processos (exceto talvez uma daemon) deve esperar ter:

Valor inteiro Nome
0 Entrada padrão (stdin)
1 Saída padrão (stdout)
2 Erro padrão (stderr)

De forma geral, um descritor de arquivo é um índice para um registro de uma estrutura de dados do núcleo que contém detalhes de todos os arquivos abertos. Em POSIX tal estrutura de dado é chamada tabela do descritor de arquivo, e cada processo possui sua própria tabela. Uma aplicação passa o descritor de arquivo para o núcleo através duma chamada de sistema, e o kernel acessa o arquivo representando a aplicação, baseado no descritor. A aplicação não pode manipular a tabela do descritor de arquivo diretamente.

Em sistema Unix-like, descritores de arquivos podem se referir não somente a arquivos, mas também diretórios, dispositivos de memória, soquetes e pipes nomeados ou não nomeados, seguindo a máxima da plataforma de que "tudo é arquivo".[2]

Notas

  1. Santos, 2000
  2. Maillard, p. 41