Как записать встроенные субтитры в файл с помощью ffmpeg?

В контексте ядра Linux, когда люди говорят о вытеснении, они часто имеют в виду способность ядра прерывать себя — по сути, переключать задачи во время выполнения кода ядра. Допустить, чтобы это произошло, довольно сложно, что, вероятно, является основной причиной того, что ядро ​​заняло много времени, чтобы сделать его вытесняемым.

Поначалу большую часть кода ядра все равно нельзя было прервать, так как он был защищен большой блокировкой ядра. Эта блокировка постепенно исключалась из все большего и большего количества кода ядра, что позволяло выполнять несколько одновременных параллельных вызовов ядра (, что становилось все более важным по мере того, как системы SMP становились все более распространенными ). Но это еще не сделало само ядро ​​вытесняемым; , который потребовал еще большей разработки, кульминацией которого сталPREEMPT_RTнабор исправлений, который в конечном итоге был объединен с основным ядром (и в любом случае был способен вытеснять BKL ). В настоящее время ядро ​​можно настроить так, чтобы оно было более или менее вытесняемым, в зависимости от характеристик пропускной способности и задержки, которые вам нужны; подробности см. в соответствующей конфигурации ядра .

Как видно из пояснений к конфигурации ядра, вытеснение влияет на пропускную способность и задержку, а не на параллелизм. В системах с одним ЦП -вытеснение по-прежнему полезно, поскольку оно позволяет обрабатывать события с более коротким временем реакции; однако это также приводит к снижению пропускной способности (, поскольку ядро ​​тратит время на переключение задач ). Вытеснение позволяет любому заданному ЦП в системе с одним или несколькими ЦП быстрее переключаться на другую задачу. Ограничивающим фактором для многопроцессорных -систем является не вытеснение, а блокировки,большой или другой :каждый раз, когда код берет блокировку, это означает, что другой ЦП не может начать выполнение того же действия.

1
11.01.2020, 00:39
0 ответов

Теги

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