Технически, петлевое устройство - это блочное устройство, которое записывает в файл, а не часть оборудования. Таким образом, вы всегда используете / должны использовать устройство обратной петли при монтировании файла.
Так много для прямого ответа. Может быть, это служит объяснением:
Ядро реализует несколько уровней абстракции, чтобы оно могло одинаково обрабатывать разные аппаратные средства. Представьте себе, если вам пришлось перестраивать драйвер ext2 для каждого существующего контроллера. Никто не хочет этого, но мы хотим относиться к каждому жесткому диску одинаково. Вот почему мы создаем слои абстракции.
Блочные устройства являются такой абстракцией. Блочные устройства имеют определенные атрибуты и предоставляют определенные функции, которые могут использоваться другим программным обеспечением. Неважно, есть ли у вас жесткий диск ATA, жесткий диск SCSI или накопитель на магнитной ленте, вы всегда используете одни и те же структуры и функции для взаимодействия с ним. В этом случае задача ядра и, более точно, уровня абстракции состоит в том, чтобы делать правильные вещи при обращении к блочному устройству. В случае интерфейса блочного устройства правильнее всего передавать вызовы и данные в и из правильного драйвера устройства. Этим драйвером устройства может быть, например, подсистема SCSI или драйвер для устройства петли.
Драйвер устройства циклического преобразования преобразует операции на связанном блочном устройстве в файловые (системные) операции, таким образом данные / разделы оказываются в файле.
Я, вероятно, ужасно неправ в используемой терминологии, а также в названии и количестве задействованных слоев абстракции. Я просто хотел набросать основную концепцию, чтобы стало ясно, что устройство цикла - это не файл, который что-то делает, а то, что использует файлы. Файл не делает ничего другого, чем используется.