Почему в Linux максимальное количество звуковых карт? [закрыто]

set -- "BRD" "MIX"
for src in /home/imp/imp/msgs/*.PK[12]; do
   eval "dest=\${src%.*}.\${${src#${src%?}}}"
   /usr/bin/mv "$src" "$dest"
done

Основная идея заключается в том, что мы сохраняем отображение расширения имени файла src в новое расширение с помощью массива «$ @».

$ src содержит name.PK1 $ {src%. *} содержит name $ {src # $ {src%?}} содержит 1 , таким образом, dest оценивается как "имя" "." "BRD" = "name.BRD"

2
15.01.2016, 17:29
1 ответ

В хороших старых временах звуковых карт ISA это не было возможно создание узлов устройств в / dev / динамически, поэтому все устройства должны быть предварительно выделены. Это привело к ограничению в 8 звуковых карт, и драйверы были написаны с учетом этого ограничения.

Позже, когда были представлены devfs и USB, это ограничение было снято.Однако самый простой способ сделать это - внести минимальное количество изменений, то есть просто изменить верхний предел.

Переписать код, чтобы разрешить бесконечное количество карт, потребовало бы больших усилий без каких-либо конкретных преимуществ. (Можно увеличить текущее значение по умолчанию, равное 32, с помощью параметра конфигурации ядра, но люди, которые попробуйте, как правило, выясните, что у них недостаточно пропускной способности USB для такого количества устройств.)

2
27.01.2020, 22:11

Теги

Похожие вопросы