# Customizing IO Functions

On hosted systems, the stdin, stdout, and stderr streams are typically mapped to peripheral devices such as displays and keyboards, but embedded hardware may not incorporate such components, and the choice and configuration of device peripherals that would drive these components will vary greatly.

Those IO functions which read from or write to any of the standard streams use support functions to define the source or destination of the standard streams, allowing functions like printf() to write to any device peripheral.

The following sections indicate the support functions for each compiler and how these should be configured.