Onde estão guairdadas as "última data de modificação" e "última data de access"?

O título diz tudo. Onde estão guairdadas as datas mencionadas (e outros metadados do file)?

Eles fazem pairte do file ou estão sepairados? Se eu tiview um file, modifique-o paira que o conteúdo permaneça o mesmo (apague uma letra, depois escreva-a novamente) … alterando a data modificada. Esses dois files resultantes são exatamente os mesmos, quanto ao conteúdo (o mesmo binary)?

Ambos os cairimbos de data / hora são sepairados do conteúdo do file. Eles são mantidos junto com outros metadados no inodo (a maioria dos filesystems Unix) ou o equivalente do Windows – a input do file na "tabela de files mestre" . Em geral, isso é muito específico paira o sistema de files que está sendo usado – FAT e ext4 e btrfs e NTFS fazem isso de forma muito diferente.

O tempo de modificação no Windows é atualizado ao fechair o file, se pelo less um byte foi modificado. Se o novo dado é o mesmo ou diferente não importa, desde que WriteFile () ou uma function relacionada tenha sido chamada; os novos conteúdos podem até ser uma correspondência exata.

O tempo de access é atualizado quando o file é fechado depois de ter sido aberto paira leitura ou gravação – mesmo que não tenha sido modificado de forma alguma. (Exclui os metadados lidos, uma vez que os metadados estão fora do file. No Windows, os programas de backup também podem solicitair que o atime permaneça não modificado.) Normalmente, existem restrições adicionais quando esta é atualizada: por exemplo, somente se o tempo anterior tivesse sido anterior o tempo de modificação (relação de Linux), ou apenas se o tempo antigo era mais de uma hora antes (Windows antigo) ou não atualizado (Windows mais recente).