В файл IO.SYS входят программы низкого уровня (драйверы), взаимодействующие с BIOS. Некоторые фирмы-производители оборудования модифицируют файл IO.SYS для того, чтобы полностью адаптировать его к установленной в системе конкретной BIOS. Впрочем, подобные модернизации ОС сейчас практически не производятся, поскольку они приводят к несовместимости систем. Помимо драйверов низкого уровня, в файл IO.SYS входит подпрограмма инициализации системы. Содержимое этого файла (за исключением подпрограммы инициализации) загружается в основную память системы и хранится в ней в течение всего времени работы компьютера. Файл IO.SYS является скрытым (с атрибутом hidden), поэтому его не видно при просмотре содержимого загрузочного диска с помощью обычной команды DIR. Название файла IO.SYS используется фирмой Microsoft; другие разработчики операционных систем называют аналогичные по функциональному назначению файлы иначе. Например, соответствующий файл в операционной системе PC-DOS фирмы IBM носит имя IBMBIO.COM.
В операционных системах MS-DOS 3.x и 4.x для того чтобы диск (гибкий или жесткий) был загрузочным, файл IO.SYS должен быть первым в корневом каталоге диска, и он должен занимать целиком, по крайней мере, первый кластер области данных (кластер №2). Иногда его называют загрузочным сектором тома операционной системы (Не следует путать его с собственно загрузочным сектором тома VBS — Volume Boot Sector — который располагается на диске вне области данных. — Прим. ред.). Кластеры, содержащие остальные фрагменты файла IO.SYS, могут располагаться в любых местах диска (как и фрагменты обычного файла). В MS-DOS 5.x и более поздних версиях каких-либо требований к размещению файла IO.SYS не предъявляется — ссылка на файл может располагаться в любом месте корневого каталога, а сам файл занимать произвольные кластеры диска. В процессе загрузки компьютера происходит обращение к диску и считывается его загрузочный сектор. Содержащийся в нем программный код переносит в память содержимое файла IO.SYS и передает ему управление. После того как файл IO.SYS окажется запущенным на исполнение, процесс загрузки будет продолжен. Более подробно об этом будет рассказано в последующих разделах данной главы. Если файл IO.SYS потерян или поврежден, то появится сообщение об ошибке в процессе загрузки или система просто зависнет.