2009-03-19 3 views

답변

21

그것은 레이몬드 첸에 의해 설명 된 바와 같이, file system tunnelling 때문이다 :

는 "왜 터널링은 기존 파일을 편집하는 프로그램을 사용하는 경우 모든

다음, 저장, 원래 예상 존재 파일을 편집하고 있으므로 새 파일을 만들지 않기 때문에 생성 시간 스탬프가 유지되지만 내부적으로 많은 프로그램은 저장, 삭제 및 이름 바꾸기 작업 (예 : 링크 된 기사에 나열된 작업)을 수행하여 파일을 저장합니다), 터널링을 사용하지 않으면 최종 사용자의 관점에서 파일을 만들지 않아도 파일 생성 시간이 변경되는 것 같습니다.

터널링의 중요성에 대한 또 다른 예로서 짧은 이름이 "FILEWI ~ 1.TXT"인 "File with long name.txt"를 고려하십시오. 이 파일을 긴 파일 이름을 인식하지 못하는 프로그램에로드하여 저장합니다. 그것은 오래된 "FILEWI ~ 1.TXT"를 삭제하고 같은 이름으로 새로운 것을 만듭니다. 터널링을 사용하지 않으면 파일의 연관된 긴 이름이 유실됩니다. 친숙한 긴 이름 대신에, 파일 이름이 구불 구불 한 자국으로이 물건에 손상되었습니다. 좋지 않습니다. "

+1

+1 무슨 일이 벌어지고 있는지에 대한 실제 설명과 레이몬드 첸에게 연결하기 위해. – OregonGhost

0

NT 파일 시스템은 생각할 때 파일을 삭제하지 않습니다. NT 파일 시스템에서 파일을 삭제하면 운영 체제는 파일이 사용할 수있는 디스크 공간을 표시합니다. 다른 파일이 디스크의 해당 위치에 기록 될 때까지 파일은 실제로 삭제되지 않습니다.

Windows가 정확히 같은 파일이라고 생각하는 이유는 파일을 삭제할 때 파일이 비어있어 같은 이름의 동일한 위치에 새 파일을 만들 때와 같은 것이라고 생각합니다. 빈) 내용은 Windows가 실제로 동일한 파일이라고 생각하게 만듭니다. 나는 이것을 버그라고 생각할 것이다.

참고로 Windows에서 이러한 방식으로 파일 삭제를 처리한다는 사실은 파일 복구 유틸리티를 사용하여 삭제 된 파일을 복구 할 수 있다는 매우 중요한 이유입니다.

관련 문제