WSL2 内から Ubuntu 20.04 を実行して、通常のグループ メンバーとしてリアルタイム スケジューリングを使用できるようにしたいと思いますaudio
。最終的には、これは JACK 用です。すべてがルートとして機能しますが、これは理想的ではありません。
私は持っている
$ cat /etc/security/limits.d/audio.conf
# Provided by the jackd package.
#
# Changes to this file will be preserved.
#
# If you want to enable/disable realtime permissions, run
#
# dpkg-reconfigure -p high jackd
@audio - rtprio 95
@audio - memlock unlimited
#@audio - nice -19
構成チェッカーを使用するhttps://github.com/raboof/realtimeconfigquickscan'chrt でプロセスの優先順位を付ける' ことができないようです。そこで、問題をデバッグするために、簡単なことを試しています...
通常のユーザーで試す
$ chrt -f 80 echo success
chrt: failed to set pid 0's policy: Operation not permitted
しかし、root
私が
# chrt -f 80 echo success
success
これはグループRTスケジュールによるものだろうかと思いました。
$ cat /proc/sys/kernel/sched_rt_period_us
1000000
$ cat /proc/sys/kernel/sched_rt_runtime_us
950000
これらはデフォルト値だと思います。別のマシンで実行している Ubuntu 18.04 のネイティブ インストールでも同じ設定で問題なく動作します。
それでも、いくつかの場所では、
sysctl -w kernel.sched_rt_runtime_us=-1
効果的にオフにするために。しかし、これは機能しませんでした。
最初にこの方法を試したとき、JACK が WSL2 で動作するとは思っていませんでしたが、リアルタイム スケジューリングがルートとして動作するという事実から、これは WSL2 の制限ではなく、構成/アクセス許可の問題であると期待しています。次に何を試せばよいでしょうか?