This is an old revision of the document!
This sample .kshrc
file is typically paired with a .profile
containing simply:
export ENV=${HOME}/.kshrc
If fcntl is used to aquire locks on files without utilization of the range/region parameters, file locks are aquired without an offset, which has the side-effect of the lock entry being inserted at the beginning of the kernel's lock table.
Interestingly, if an application relies on intensive utilization of such file locking, the overhead of unconditional traversal of the potentially over-sized set of lock entries crowded into the front of the lock table can be quite impactful.
In one particular application, file locks acquired via fcntl was used for IPC-oriented synchronization in addition to actual concurrent file access, which introduced the overhead from kernel lock table front-loading to the application's multi-threaded processing concurrency - and the problem was also aggrevated by the addition IPC-oriented lock volume, as well.
One mitigation technique would be to utilize the region/range parameters for fcntl, locking a region at an arbitrarily-high position, which has the side-effect of the lock entry being located away from the front of the lock table.