flock() (was Re: /etc/passwd is locked)

Pavel Kankovsky peak na kerberos.troja.mff.cuni.cz
Čtvrtek Duben 23 18:27:47 CEST 1998


On Thu, 23 Apr 1998, Michal Krause wrote:

> Moment, ja mel za to, ze program musi okontrolovat stav locku a pripadne
> pockat na odemceni. Nebo se snad proces pri volani fopen() zastavi a
> ceka na uvolneni?

Existuje "advisory locking" a "mandatory locking". V prvnim pripade je
mozno k souboru pristupovat i v oblastech, ktere byly zamceny (se vsemi
nasledky), v druhem to nelze. Podporu "povinnych zamku" je treba zapnout 
v jadre a pak jeste indikovat na souboru nastavenim setgid bitu--bez group
execute. (to je vec, co?) Jo, flock() povinne zamky neumi, nutno tedy
pouzivat fcntl() (smrt BSD! <g>).

--Pavel Kankovsky aka Peak   [ Boycott Microsoft -- http://www.vcnet.com/bms ]



Další informace o konferenci Linux