Linux의 파일 시스템은 직렬화를 적용합니까(즉, 주어진 시간에 실제로 파일 시스템에 대한 변경 사항이 하나만 발생함을 의미)?

Linux의 파일 시스템은 직렬화를 적용합니까(즉, 주어진 시간에 실제로 파일 시스템에 대한 변경 사항이 하나만 발생함을 의미)?

https://unix.stackexchange.com/a/12818/674 설명하다

프로그램은 잠금 파일을 사용하여 시스템에서 동시에 실행될 수 있는 두 개의(잘 작동하는) 별도의 프로그램 인스턴스가 동시에 다른 콘텐츠에 액세스하지 못하도록 합니다. 프로그램이 리소스에 액세스하기 전에 잠금 파일이 있는지 확인하고, 잠금 파일이 있으면 오류를 출력하거나 사라질 때까지 기다리는 것이 아이디어입니다. 파일이 존재하지 않으면 리소스를 "가져오려는" 프로그램이 파일을 생성한 다음 나중에 만날 수 있는 다른 인스턴스는 프로세스가 완료될 때까지 기다립니다. 물론 이는 잠금을 "획득"한 프로그램이 실제로 잠금을 해제하고 잠금 파일을 삭제하는 것을 잊지 않았다고 가정합니다.

이것은 작동합니다.모든 UNIX 계열 운영 체제의 파일 시스템은 강제로 직렬화됩니다. 이는 파일 시스템에 대한 변경 사항이 실제로 주어진 시간에 단 한 번만 발생함을 의미합니다.. 데이터베이스 잠금 등과 비슷합니다.

마지막 단락은 무엇을 의미합니까?

Linux에서는 두 프로세스가 동시에 파일을 쓸 수 있으며 운영 체제는 암시적 동기화를 제공하지 않지만 프로그래머의 명시적 동기화를 요구합니다. 이것이 맞습니까?

파일을 잠그는 것은 동일한 파일에 대한 여러 프로세스의 액세스를 동기화하는 명시적인 방법입니까?

감사해요.

관련 정보