Как операционная система работает с различными типами устройств хранения данных

Как операционная система работает с различными типами устройств хранения данных

В Linux, похоже, операционная система знает, к какому типу устройства хранения она подключена. Например, я вижу /dev/sda для устройства SSD и /dev/mmcblk для карты SD.

Мне было интересно, как операционная система может узнать, какой тип устройства подключен? Кроме того, какой компонент ОС позволяет ей взаимодействовать с этими устройствами... это драйвер устройства? Я читал, что ОС представляет все устройства как файл... это драйвер устройства представляет общий интерфейс, позволяющий абстрагироваться от этого файла?

решение1

Вы в основном правы. ОС должна знать тип устройства хранения, потому что у нее совершенно другой интерфейс для SD-карты (вероятно, выделенные контактные площадки MMC на ЦП с протоколом MMC), чем для SSD (SATA?) или какого-то внешнего накопителя (USB mass storage?). У вас совершенно разные драйверы устройств, общающиеся с другим протоколом по другой аппаратной шине. На самом деле, нет необходимости задаваться вопросом, как узнать тип устройства, а нужно задаться вопросом, как заставить эти совершенно разные устройства выглядеть одинаково.

Связанный контент