# Operating System Notes

## All

1. Shadow passwords
   On any system with shadow passwords (including Solaris 2.5 with Unix authentication), read the SASL documentation carefully to make sure it is configured correctly.

## Solaris

1. Modern Solaris systems have several useful utilities in `/usr/proc/bin`, among them `pmap`. This can be used to calculate the incremental cost (number of non-shared pages) of an `imapd` process, which is useful for sizing purposes.

## HP-UX

1. The memory mapping support (`mmap(2)`) in HP-UX does not have the right semantics for the Cyrus IMAP server under the 9.0 and 10.0 release of the operating system. It appears this is related to the hardware's use of inverse page tables. It is recommended that large-scale sites consider using some other platform.

2. HP-UX 9.0.4: Comments from testers
   The C that ships with HP-UX is totally unsuited for use with unix packages. Either the HP-UX ANSI C developers kit must be purchased separately from HP or GNU's gcc compiler (which can bootstrap itself from the basic HP C) must be built on the target system.

## Linux

1. synchronous FS updates.
   By turning on synchronous updates for ext2fs, all updates (instead of just meta-data) become synchronous. This is good for reliability, but bad for performance.

   The big problem used to be with the `mailboxes` file. The 2.0 release and later addressed this problem by changing the flat file first to a Berkeley DB database, and then to Cyrus' proprietary skiplist format since the 3.0 release.

   Note this is for ext2fs. If you are using a newer filesystem (such as xfs, jfs, or reiserfs) the synchronous metadata issue shouldn't come up. Then again, we haven't really looked at other filesystems for Linux yet. (It appears that the different filesystems support slightly different semantics, and it's not always clear what the right thing for the application to do is.)

last modified: $Date: 2010/01/06 17:01:29 $