![]() |
文件锁定是一种在特定时间只允许一个用户或进程拥有对特定计算机文件的访问权限的机制。[1]计算机系统实现该特性以避免竞争读写。以下是竞争写的一个例子:
绝大多数操作系统支持记录锁定的概念,也就是任何文件中单个记录可以被锁定,从而增加并发更新进程的数量。数据库维护需要锁定文件,从而它有权访问数据库的整个物理文件。虽然这确实阻止其他进程访问此文件,但减少每个锁的经常性开销比整体锁定文件中很大数量的区域更高效。
文件锁定的不合理用法可能产生差的性能或死锁。文件锁定可能也指用户使用如Windows安全、NTFS访问权限或第三方的文件锁定软件提供文件额外安全性的过程。
Microsoft Windows使用三种不同的机制管理对共享文件的访问:
Windows继承了MS-DOS 3.3引入的文件共享访问控制。如果打开文件时不指定共享访问方式,缺省禁止其他进程按照读、写、删除来打开该文件(但读取文件属性是允许的)。
操作系统默认锁定正在运行的可执行程序,阻止其他程序修改或删除它。但允许改名、复制。
这是文件的一种安全的更新方式,当一个程序正在对文件进行写操作时,文件就会进入一种暂时状态,在这个状态下,如果另一个程序尝试读这个文件,它就会自动停下来等待这个状态结束