#
6. Generic Operating System Services

The modules described in this chapter provide interfaces to operating system features that are available on (almost) all operating systems, such as files and a clock. The interfaces are generally modeled after the Unix or C interfaces, but they are available on most other systems as well. Here's an overview:

`os` | Miscellaneous OS interfaces.
`os.path` | Common pathname manipulations.
`dircache` | Return directory listing, with cache mechanism.
`stat` | Utilities for interpreting the results of `os.stat()`, `os.lstat()` and `os.fstat()`.
`statcache` | Stat files, and remember results.
`statvfs` | Constants for interpreting the result of `os.statvfs()`.
`filecmp` | Compare files efficiently.
`popen2` | Subprocesses with accessible standard I/O streams.
`time` | Time access and conversions.
`sched` | General purpose event scheduler.
`mutex` | Lock and queue for mutual exclusion.
`getpass` | Portable reading of passwords and retrieval of the userid.
`curses` | An interface to the curses library, providing portable terminal handling.
`curses.textpad` | Emacs-like input editing in a curses window.
`curses.wrapper` | Terminal configuration wrapper for curses programs.
`curses.ascii` | Constants and set-membership functions for ASCII characters.
`curses.panel` | A panel stack extension that adds depth to curses windows.
`getopt` | Portable parser for command line options; support both short and long option names.
`tempfile` | Generate temporary file names.
`errno` | Standard errno system symbols.
`glob` | Unix shell style pathname pattern expansion.
`fnmatch` | Unix shell style filename pattern matching.
`shutil` | High-level file operations, including copying.
`locale` | Internationalization services.
`gettext` | Multilingual internationalization services.