운영 체제가 디스크에 기록 할 때 이벤트를 전달합니까?


0

파일 Windows와 Linux 모두에서 디렉토리 쓰기를 마치는 시점 을 결정할 수있는 방법이 있는지 궁금합니다 .

이것은 대부분 임시 파일이 아닌 파일에 대한 디렉토리를 지속적으로 폴링하는 대신 디스크에 기록이 완료되는 것을 간단히 듣기 위해 프로그램을 설정할 수 있습니다 (그러한 일을하는 것이 좋습니다).

답변:


2
  1. 파일은 "디렉토리에 쓰지"않습니다. 데이터는 파일에 기록되며 파일은 디렉토리에 (하드) 링크 될 수 있습니다. 그러나 파일에 대한 데이터 쓰기 프로세스는 디렉토리와 관련이 없습니다. 그리고 하드 링크 프로세스는 원자 적이며 기다릴 "완료"가 없습니다.
  2. Windows에서 찾고있는 기능은 FindFirstChangeNotification()입니다.
  3. 이것은 수퍼 유저가 아닌 StackOverflow 주제입니다.

애매했다. 한편으로, 나는 커널에 연결하는 방법을 찾고 있는데, 종종 리눅스는 명령 행에서 이런 유형의 작업을 수행하기 위해 갈고리를 제공 할 것이다. 같은 것에 대한 Windows API가있을 수도 있습니다.
cwallenpoole

1

리눅스의 경우이 질문을 살펴볼 수 있습니다. 토론은 C ++로 진행되었지만 아이디어 (선택한 답변이 아니라 대답)에서 여전히 좋습니다. 기본적으로 리눅스에서는 플래그를 사용하거나 /proc/pid/fd프로세스를 볼 수 있습니다.


당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.