Я наблюдаю поведение в моем приложении, которое, кажется, сводится к семантике файловой системы. Во время разработки мы сделали предположение о файловой системе, которая, вероятно, не содержит:
File F created by process PC is visible to process PP after p1 has exited.
Вот пример выполнения, который нарушает предположение:
- PP разветвляется на ПК и ждет его завершения
- ПК выполняет некоторую обработку
- ПК создает файл F
- ПК завершает работу
- ПП просыпается в результате завершения работы ПК
- PP пытается прочитать F, но получает ошибку «файл не найден»
- (несколько минут спустя) Файл подтверждения F, введенный человеком, действительно существует
Я знаю, что это возможно в общем случае (хотя и маловероятно) файловые системы и операционная система не могут волшебным образом заставить все изменения происходить мгновенно.
Мой вопрос: возможно ли, чтобы это произошло именно с XFS в Linux 4.15.x?
Или XFS предоставляет какую-то семантику, чтобы это было невозможно?