We used to use this sort of locking in (frequently running) system cron jobs and the like. Then these jobs started getting killed off by Linux OOM on some systems and we ran into the downsides of locks that don't automatically clear if something goes wrong, and switched to flock(1) based locks (fortunately on the local system, so we're not affected by NFS issues there).(I'm the author of the linked-to entry.)
chasil|2 years ago
Dash is nearly 10x smaller, rumored to be 4x faster than bash.
Otherwise, have you compiled any object code with -Os?
siebenmann|2 years ago
(You could criticize the shell for needing to do dynamic allocation in failure paths and so being exposed to malloc() failing, but this is a hard area and lots of code assumes it can malloc() on demand, some of it in the C library.)