Да никак. RT-ядро - это же специальный набор костылей, которые ты должен использовать в своем софте. Чтобы твой софт получил некие условные RT-возможности (условные потому, что любой правильно спроектированный bare metal софт по времени реакции покроет все эти костыли как бык овцу).а как себя ведёт Linux с RT ядром?
Совершенно верно. Все дискуссии на тему создания музыки в линукс среде нужно начинать с этого и этим же сразу заканчивать. Потому что там говорить больше не о чем...так всё, что нужно для работы со звуком - отсутствует в Линуксе или работает через грабли и костыли.
Так нафига он нужен?
Очень рад за тех кто такой ерундой страдает. А при чём здесь Рипер ?в линуксе тоже можно всё отключить (даже графику) и тогда он вообще будет на 486 компьютере из 90х запускаться...
Не буду спорить с автором кооперативной многозадачки на Siemens E27/EL27)Нет, конечно. Определяется временем, затраченным на переключение контекстов.
У меня пока очень малый список из того, что не работает (в основном, ревера, причём как ни странно, больше, видимо, из-за интерфейсов). Разница в производительности с win на уровне статистической погрешности.VST надо через костыли запускать (и если повезет)
Да почему сразу "неправильно". Правильно.ЧЯДН?
Мне, как человеку, пользующемуся аудио-интерфейсами собственной разработки и драйверами для них собственного написания видимо сложно понять, какие-такие особые удобности и возможность предоставляет jack. Уж пардон.Но удобство и возможности jack
кстати, это да — мне тоже с приоритетами потоков договориться не получилось((((хотя и есть условно правильный способ, но Джастин им почему-то не пользуется, в результате на MacOS нужные потоки не получают приоритет 96, а остаются в диапазоне приоритетов порядка 40).
Ну по сравнению с собственным написанием, конечно, всё остальное по удобству проигрывает))драйверами для них собственного написания
Ну у меня для этой цели в драйверахНо я как страшный сон забыл проблемы с одновременной работой двух муз программ, роутингом миди и аудио между приложениями и т.п. Вот только сегодня в Zoom слал микс из 6 микрофонов, хотя он воспринимает только одну главную стереопару с интерфейса — просто потому что с Jack приложению не нужно иметь свою логику для поиска источников.
У нас есть готовый макет. 8 входов, 8 выходов. Несмотря на то, что рынку этого действительно нафиг не надо, рынку вон за 100 баксов девайс на стол подавай. Но тем не менее люди, которым надо много каналов - они есть, и макет мы сделали. Если не считать корпуса, который банален - то это, в принципе, суть опытный образец.чтобы всю эту красоту завести хотя б на 8 XLR-входов
не могли бы вы раскрыть подробнее?Но вот в Линухе аналогичная MacOS история банально невозможна. Нет там бескостыльного способа изменить приоритет потока так, чтобы он стал максимальным.
А что тут можно подробнее? В macos есть способ (штатный) дать потоку приоритет выше всех. В том числе выше системных. Там прямо специальный костыль (штатный) поверх типичного юниксового шедуллера прибит в ядре для этого.не могли бы вы раскрыть подробнее?
По макос - запросто, https://developer.apple.com/library/archive/documentation/Darwin/Conceptual/KernelProgramming/scheduler/scheduler.htmlссылку, например
где тут про костыль поверх шедулера? ядро открыто, можете ткнуть пальцем: https://github.com/apple/darwin-xnu
нет чего, выставления приоритета у процесса или потока? https://man7.org/linux/man-pages/man7/sched.7.htmlА по линухам трудно дать ссылку на то, чего нет в природе ))))
99 - это не самый максимально возможный приоритет, если что.и рипер это делает:
Если Вы поищете BASEPRI_RTQUEUES вот в этом файле - https://fergofrog.com/code/cbowser/xnu/osfmk/kern/sched_prim.c.htmlгде тут про костыль поверх шедулера? ядро открыто, можете ткнуть пальцем: https://github.com/apple/darwin-xnu
а какой? на картинке линукс, если что99 - это не самый максимально возможный приоритет, если что.
поискал, в основном увидел отключение переброски rt процессов между ядрами, в линуксе это тоже делается.Если Вы поищете BASEPRI_RTQUEUES вот в этом файле - https://fergofrog.com/code/cbowser/xnu/osfmk/kern/sched_prim.c.html
(более удобный просмотрщик, чем в гитхабе ), то увидите большую кучу всяких изменений поведения при установке такого приоритета.
Не совсем так. В Макоси можно поставить приоритет потоку выше всех (в том числе, и выше потоков ядра), а в Линухе - нельзя. Я про юзерсспейс, если что.но я понял, что вы имеете в виду, дескать, в макоси есть rt приоритет, а в линуксе - нет
И выше 99 бывают. Но только в ядре.а какой? на картинке линукс, если что
И совсем по другому там вытеснение начинает работать (оно продолжает работать, потому что между потоками с приоритетом 97 есть конкуренция, но по другому), да плюс еще таймауты на максимальное время выполнения этих потоков, там много чего, чтобы нельзя было уронить систему.в основном увидел отключение переброски rt процессов между ядрами
Не знаю, но не думаю, что оно вообще представляет интерес.а ты случаем не в курсе как в гигасэмплере был устроен движёк?
Гигасэмплер работал только на карте Turtle Beach Pinnacle на Win98, он был в неё интегрирован и поэтому эти знания скорее всего нам ничего не дадут. Работал же долгое время протулс только на MAC и с звуковой картой Digidesign, тоже была интеграция на уровне драйверов. А вообще Гигасэмлер для своего времени была штука революционная и звучание казалось на уровне железных синтезаторов. года три пользовался, но под миллениум драйверов не`нашёл (интернета в те года ещё не было), пришлось распрощаться с Pinnacle и Nemesys Gigasampler.@Rst7, а ты случаем не в курсе как в гигасэмплере был устроен движёк? Звучало же без задежрек и всяких дропаутов на машинах слабее нынешных раз так в 100