thumb|300px|direita|Os descritores de arquivo para entrada, saída e erro

Em programação de computadores, um , 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ãoSantos, 2000, os quais provavelmente todos os processos (exceto talvez uma daemon) deve esperar ter:

Valor inteiroNome0Entrada padrão (stdin)1Saída padrão (stdout)2Erro 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".Maillard, p. 41

Referências

Categoria:Unix Categoria:POSIX Categoria:Tecnologia de sistema de arquivos do Unix