lockf(3)[solaris] byte range locks.
src/sys/kern/kern_lock.c reader/writer locks for
mostly-read objects -- threads obtain a shared lock for reading, an
exclusive lock for writing. Note the use of
tsleep. What does this imply
about these locks?
src/sys/i386/i386/simple_lock.s simple locks, which are
spin locks suitable for use to control access to shared data
structures on multiprocessor machines w/ SMP kernels. Because they
are spin locks, they cannot be used to protect objects that are locked
for a long time.
mmap(2)[solaris] -- MAP_COPY is now gone from FreeBSD
(see src/sys/sys/mman.h; the text only says it may be
removed from future versions of BSD.
Solaris mmap has MAP_NORESERVE for
non-conservative system resource allocation. Make sure you understand
what this means.