O padrão POSIX (IEEE Std 1003.1) é omisso sobre o que é um inode. Isso é simplesmente um detalhe de implementação que está fora do escopo do padrão.
O que é um inode, conforme definido pelo POSIX?
O artigo da Wikipédia sobre inodes tem uma seção intitulada POSIX inode description
que diz que um inode contém (entre 8 outros pontos):
- Device ID (this identifies the device containing the file).
Isso não parece certo para mim, e noto que não há link para um documento POSIX nas referências.
O que o POSIX diz sobre a estrutura de um inode? Por favor, forneça referências conforme apropriado.
O padrão POSIX (IEEE Std 1003.1) é omisso sobre o que é um inode. Isso é simplesmente um detalhe de implementação que está fora do escopo do padrão.
Não há definição de um inode no padrão POSIX.
O Guia dos programadores POSIX por Donald Lewine diz POSIX usa o termo "número de série do arquivo" para se referir ao que é comumente conhecido como um número do nó i , ou seja, o número único de uma entrada de arquivo em um sistema de arquivos. / p>
POSIX <sys/types.h>
diz:
... and
ino_t
shall be defined as unsigned integer types.
Curiosamente, o padrão inclui a palavra "inode", como o menino @apricot menciona , mas também não consegue encontrar uma definição do termo. Talvez o mais próximo seja:
ino_t st_ino File serial number.
em POSIX <sys/stat.h>
.
Neste comentário , Johan Myréen diz que a Wikipedia provavelmente está confundindo um inode com o conteúdo da estrutura stat
.
A stat
structure contém informações sobre o dispositivo e outras informações da Wikipedia referese diz que está incluído no inode .
Existe algo como um inode POSIX? Eu fiz uma pesquisa por "inode" na especificação POSIX.1-2008 , e ela aparece apenas como uma passagem referência em alguns manpages e arquivos de cabeçalho. Inodes não parecem estar definidos lá. Eu acho que os inodes são manipulados pelo kernel ou pelo driver do sistema de arquivos que você está usando.
Quanto à sua pergunta sobre IDs de dispositivos em inodes, eu dei uma olhada nas estruturas de inode para ext4 e btrfs , ambos não mencionam o número do dispositivo, então novamente Eu acho que isso é feito pelo kernel.
Tags inode filesystems posix