Fájlzár

Az oldal jelenlegi verzióját még nem ellenőrizték tapasztalt közreműködők, és jelentősen eltérhet a 2018. december 31-én felülvizsgált verziótól ; az ellenőrzések 4 szerkesztést igényelnek .

A fájlzárolás egy olyan  mechanizmus, amely korlátozza a hozzáférést egy fájlhoz , és jelenleg csak egy felhasználónak vagy folyamatnak ad hozzáférést. A rendszerek zárolást valósítanak meg, hogy megakadályozzák a klasszikus közbenjáró frissítési forgatókönyvet (amely a versenyhelyzet tipikus példája ) azáltal, hogy szekvenciális frissítési folyamatokat kényszerítenek bármely fájlra.

A következő példa bemutatja a közbenjáró frissítési problémát:

  1. Az A folyamat beolvas egy ügyfélrekordot egy számviteli információkat tartalmazó fájlból, beleértve az ügyfél számlaegyenlegét és telefonszámát.
  2. A B folyamat ezután ugyanazt a rekordot olvassa be ugyanabból a fájlból, így saját másolata van a rekordról.
  3. Az A folyamat megváltoztatja a számlaegyenleget a rekord másolatában, és visszaírja a fájlba.
  4. A B folyamat, amelynek még mindig az eredeti számlaegyenleg a rekord másolatában, frissíti az egyenleget, és visszaírja a fájlba.
  5. Ennek eredményeként a B folyamat beírta az elavult maradék értékét a fájlba, így az A folyamat által végrehajtott módosítások elvesztek.

A fájlzárral való visszaélés, mint minden zárolás, teljesítményromláshoz vagy holtponthoz vezethet .

Microsoft Windows

A Microsoft Windows három különböző mechanizmust használ a megosztott fájlokhoz való hozzáférés szabályozására. További zárolási mechanizmusok vonatkoznak a hálózati fájlmegosztásokra (SMB) [1] .

Unix-szerű rendszerek

A Unix-szerű rendszerek (beleértve a Linuxot és az OS X -et is) általában nem zárolják automatikusan a megnyitott fájlokat [2] . Biztosítják a flock rendszerhívást , de semmilyen módon nem korlátozza a hozzáférést más folyamatokból származó fájlokhoz, és csak arra szolgál, hogy szinkronizálja a fájlokhoz való hozzáférést több folyamat között.

Létezik a POSIX [3] [4] szabványokban leírt "fcntl(F_SETLK)" és "fcntl(F_GETLK)" metódus is .

Amiga OS

Az Amiga OS-en egy függvény meghívásával szerezhet be fájlzárat Lock(in dos.library).

Verzióvezérlő rendszerek

Jegyzetek

  1. 17. fejezet Fájlok és rekordok zárolása . Letöltve: 2018. szeptember 29. Az eredetiből archiválva : 2018. október 4..
  2. Archivált másolat . Letöltve: 2018. szeptember 29. Az eredetiből archiválva : 2015. szeptember 19.
  3. Blokkolási módok . Letöltve: 2018. szeptember 29. Az eredetiből archiválva : 2018. szeptember 29.
  4. FCNTL(2) . Letöltve: 2018. szeptember 29. Az eredetiből archiválva : 2018. szeptember 29.

Linkek