Головна |
Коли різні користувачі працюють разом над проектом, вони часто потребують поділі файлів. Як і в разі будь-якого спільного ресурсу ресурсу, процеси повинні синхронізувати доступ до передачі файлів, каталогів, щоб уникнути тупикових ситуацій, дискримінації окремих процесів і зниження продуктивності системи.
Найпростіше рішення даної проблеми - надати можливість одному з процесів захопити файл, тобто блокувати доступ до поділюваного файлу інших процесів на весь час, поки файл залишається відкритим для даного процесу.
Допускається два варіанти синхронізації: з очікуванням, коли вимога блокування може привести до того, аби відкласти процесу до того моменту, коли ця вимога може бути задоволена, і без очікування, коли процес негайно оповіщається про задоволення вимоги блокування або про неможливість її задоволення в даний момент.
Встановлені блокування відносяться тільки до того процесу, який їх встановив, і не успадковуються процесами-нащадками цього процесу. Більш того, навіть якщо певний процес користується Синхронізаційні можливостями системного виклику fcntl, інші процеси як і раніше можуть працювати з тим файлом без всякої синхронізації. Іншими словами, це справа групи процесів, спільно використовують файл, - домовитися про спосіб синхронізації паралельного доступу.
зв'язування файлів | Цілісність файлової системи.
Інші форми організації файлів | Операції над файлами | Директорії. Логічна структура файлового архіву. Операції над директоріями. Захист файлів. Контроль доступу до файлів. Списки прав доступу. | Розділи диска. Організація доступу до архіву файлів. | Операції над директоріями | Списки прав доступу | Інтерфейс файлової системи. | зв'язний список | індексні вузли | Структура файлової системи на диску |