저는 sync
Linux OS의 명령 작업을 완전히 이해하려고 노력하고 있습니다.
읽고 나서: https://en.wikipedia.org/wiki/Sync_(유닉스) https://lwn.net/Articles/457667/
나는 sync
애플리케이션의 버퍼에서 영구 저장소까지 데이터를 플러시하는 명령을 이해했습니다.
Linux는 영구 저장 장치와 적절한 쓰기 요청을 어떻게 추적합니까? (/dev 안에는 모두 영구 저장 장치를 나타내지 않는 많은 장치 파일이 있습니다.) 각 장치의 쓰기 요청 대기를 어디에서 볼 수 있습니까?
sync(특히 sync 명령)는 쓰기 요청을 위해 모든 시스템의 장치를 검색하고 모두 수행합니까? 효율적인 목록을 유지합니까?
sync 명령과 관련된 가상 파일 시스템은 무엇입니까? sync 명령은 각 파일 시스템을 검색합니까? 그렇다면 왜?
이 명령과 "백스테이지" 작업에 관한 문헌이 있나요?
답변1
이 맨페이지상황이 조금 명확해질 수 있습니다.
내가 읽은 내용은 모든 파일 시스템 구현이 동기화 방법을 제공해야 한다는 것입니다.
그래서동조명령은 커널을 호출하고 커널은 모든 마운트된 파일 시스템에 대해 모든 동기화 방법을 호출합니다.
아마도 커널 코드를 조사할 때 그곳에서 무슨 일이 일어나고 있는지에 대한 더 나은 설명을 찾을 수 있을 것입니다.동조.