- prototype in io.h - locks arbitrary, non-overlapping regions of any file (DOS 3.X), preventing reads/writes to those regions - returns 0 on success, else -1 on error - all locks must be released before program termination - MS C uses locking() - see unlock()