# 7 Optional Operating System Services

The modules described in this chapter provide interfaces to operating system features that are available on selected operating systems only. The interfaces are generally modelled after the Unix or C interfaces but they are available on some other systems as well (e.g. Windows or NT). Here's an overview:

signal
  -- Set handlers for asynchronous events.

socket
  -- Low-level networking interface.

select
  -- Wait for I/O completion on multiple streams.

thread
  -- Create multiple threads of control within one namespace.

Queue
  -- A stynchronized queue class.

anydbm
  -- Generic interface to DBM-style database modules.

whichdb
  -- Guess which DBM-style module created a given database.

zlib
gzip
  -- Compression and decompression compatible with the `gzip` program (zlib is the low-level interface, gzip the high-level one).

- 7.1 Built-in Module `signal`
- 7.2 Built-in Module `socket`
  - 7.2.1 Socket Objects
  - 7.2.2 Example
- 7.3 Built-in Module `select`
- 7.4 Built-in Module `thread`
- 7.5 Standard Module `Queue`
  - 7.5.1 Queue Objects
- 7.6 Standard Modules `anydbm` and `dumbdbm`
- 7.7 Standard Module `whichdb`
- 7.8 Built-in Module `zlib`
- 7.9 Built-in Module `gzip`