thread

XV6でタイマ割り込みはどのように発生しますか?
thread

XV6でタイマ割り込みはどのように発生しますか?

thread_schedule()thread_yield()現在のスレッドのレジスタと状態を保存し、次のスレッドのレジスタと状態をロードすることが目的である、などの関数を使用してスレッド切り替えを実装しました。 これで、タイマー割り込みを使用してxv6で同じことをしたいのですが、どのように機能するのかわかりません。 ...

Admin

mysqld スレッド数が max_connections を超えています。
thread

mysqld スレッド数が max_connections を超えています。

質問のタイトルが示すように、ファイルmax_connections = 2に設定しましたが、my.cnfmysqlデーモンを有効にすると、スレッド数は37です。オンラインで検索していますが、私の期待が間違っているという兆候が見つかりませんでした。私はmax_connectionsこの指示を正しく理解していますか?これがスレッド数を制限しない理由を提案できる人はいますか? 解決策を試してください mysql CLI クライアントを介して mysql グローバル変数を照会します。 | Variable_name | Value ...

Admin

スレッド名:/proc/pid/commは、常に/proc/pid/statusのName:行と/proc/pid/statの2番目のフィールドと同じですか?
thread

スレッド名:/proc/pid/commは、常に/proc/pid/statusのName:行と/proc/pid/statの2番目のフィールドと同じですか?

Linuxスレッドまたはフォークされたプロセスは、psファイルシステムおよび/またはそのコマンドラインに表示される名前を変更できます/proc。 このパッケージを使用すると、、、、およびの2番目のフィールドpython-setproctitleにも同じ変更が発生します。これには全長のみが表示され、変更された名前の最初の15文字は残りの3つの場所に表示されます。/proc/pid/cmdline/proc/pid/commName:/proc/pid/status/proc/pid/statcmdline マルチスレッドプロセスを見ると、ruby外観は/pro...

Admin

コア数と高いnice値でプロセスを実行する能力との間にはどのような関係がありますか?
thread

コア数と高いnice値でプロセスを実行する能力との間にはどのような関係がありますか?

8つの高い優先順位(nice = -20)OSスレッド(私が持っているコアの数)でCPUを「フラッディング」すると、明らかな理由でタスクは「一時停止」されますが、それでも使用できます。 「高い優先順位スレッド」とは、同じ高優先順位プロセスによって生成されたスレッドを意味します。 ただし、64のスレッドがあると、コンピュータが完全に利用できなくなります。最大優先順位スレッドとコア間の展開の関係は何ですか?与えられた良い値を達成するためにCPUを完全にフラッディングするには、どのくらいのスレッドを作成する必要があるかを大まかに計算できますか? ...

Admin

スケジューラによるpthreadの中断を防ぐことはできますか?
thread

スケジューラによるpthreadの中断を防ぐことはできますか?

私は4コアARM CPUを使用して組み込みリアルタイムLinuxデバイスを作成しています。 10kHzでは周期的な計算が必要です。これはジッタがひどくなりすぎて失われてはなりません。私のPOSIXスレッドは、使用中のループからハードウェアが提供する10kHzトグルレジスタを読み込み、ビットがトグルされたときに計算を実行できます。 SCHED_RRスケジューラがpthreadを中断するのを防ぐために、特にこのスレッドのCPUアフィニティをコア2に設定し、優先順位を99(最大)に設定しました。他のスレッドの中には、CPU アフィニティが 2 以外のコアに設定され...

Admin

Linuxマルチスレッドファイルの検索
thread

Linuxマルチスレッドファイルの検索

検索しましたが、似たようなものが見つかりませんでした。 ext4 形式の NVME ドライブ (SAMSUNG 980Pro など) に、大容量コードベース (AOSP または Yocto) が保存されています。これらのコードベースは、数千のサブディレクトリにある数十万のファイルで構成されることがよくあります。 ファイルを検索するために find を使用する場合、通常は次のようにします。 find . -iname "filename.txt" 私はファイルを操作したくないだけでファイルを探したいと思います。 私はこれがマルチスレッドだとは思いません(私が...

Admin

HDDの論理セクタサイズを4Knに設定するとどのような利点がありますか?
thread

HDDの論理セクタサイズを4Knに設定するとどのような利点がありますか?

最新のハードドライブは「高度なフォーマットたとえば、デフォルトでは512/4096の論理/物理セクタサイズを報告します。 デフォルトでは、ほとんどのLinuxフォーマットツールは4096バイトのブロックサイズを使用します(少なくともDebian / EXT4ではデフォルト値です)。 これまで私はこれが最適化だと思いました。 Linux / EXT4は、論理セクタサイズが512Kであるにもかかわらず、4KブロックをHDDに転送して最適に処理します。 ところで今日は読んだ。この最近の (2021) 投稿。その人は、HDDの論理セクタサイズを512eから4Knに切...

Admin

ulimit制限が他のプロセスの影響を受けるのはなぜですか?
thread

ulimit制限が他のプロセスの影響を受けるのはなぜですか?

32(proc)* 120(procあたりのスレッド数)など、多数のスレッド(Python Rayモジュールを使用)を生成するいくつかのプロセスがあります。 ssh localhostその後、nTHが実際に小さい場合(たとえば、新しい接続を作成したりtop他のシェルで使用されている場合)、スレッドを作成すると他のプロセスが失敗することがわかりましたulimit -a。 ulimitこれがユーザースコープ制限かプロセススコープ制限かどうか疑問に思います。後者の場合、なぜ他のプロセスの影響を受けますか? ...

Admin

/proc/ を使用してサブタスク(スレッド)のスタックを見つける方法/マップ?
thread

/proc/ を使用してサブタスク(スレッド)のスタックを見つける方法/マップ?

目的: Linux環境でポインタスキャナを作成する方法を理論化しています。 婦人声明: 私の結果は、Debian Bookworm(現在の安定版)とカスタムカーネルを持つGentooシステムでテストされました。違いは観察されなかった。 質問: ターゲットプロセスにデバッガを接続せずに、各スレッド/サブタスクスタックのVMAを識別できることを願っています。これは以下を使用して可能でなければなりませんプロセス擬似ファイルシステム 議論する: Linux 4.5より前は、パス名フィールドに親ジョブのスタック領域が表示され/proc/[parent_tid]/ma...

Admin

Linuxでpid_maxとthread-maxの両方が必要なのはなぜですか?
thread

Linuxでpid_maxとthread-maxの両方が必要なのはなぜですか?

/proc/sys/kernel/pid_maxの違いを理解してください/proc/sys/kernel/threads-max。答えに良い説明があります pid_max、ulimit -u、thread_maxの違いを理解する: /proc/sys/kernel/pid_max特定の時間に実行できるプロセスの最大数とは関係ありません。実際、これはカーネルが割り当てることができる最大の数値プロセス識別子です。 Linuxカーネルでは、プロセスとスレッドは同じです。カーネルはこれを同じ方法で処理します。これらはすべてtask_structデータ構造のスロット...

Admin

子スレッドが親スレッドのcgroupに自動的に入るのを防ぐ方法はありますか?
thread

子スレッドが親スレッドのcgroupに自動的に入るのを防ぐ方法はありますか?

私は私が作成したLinux cgroupにアプリケーションスレッドのいくつかを明示的に書いています。cpuたとえば、今はv1について話していますが、v2の方法を知っていればいいでしょう。 ただし、子スレッド(pthread_create()親スレッドの呼び出しで作成したり、cgroupに明示的に書き込んだり、親スレッドの後に再構築したスレッド)も、直接作成せずにcgroupに表示されることがわかります。 これはアプリケーションに悪影響を及ぼす可能性があります。いくつかのスレッドが予期せずcgroupに到達します。常にこの警告に注意し、スレッドプールなどの事項...

Admin

malloc() によって割り当てられたメモリ領域は何ですか?
thread

malloc() によって割り当てられたメモリ領域は何ですか?

私はlibraryを使ってマルチスレッドCプログラムを書いていますpthread。プログラムはmalloc()スレッドとメインスレッドから呼び出されます。返されたメモリアドレスを確認すると、malloc()メインスレッドに返されるアドレスは、malloc()プログラムのヒープ部分アドレスである一般的なアドレス(例:0x80874a0)です。ただし、malloc()(生成された)他のスレッドによって返されたアドレスはpthread_create()少し変わります。アドレスはアドレス空間で高いです(0x7ffa87000a60はスタックセクションのアドレスと少し...

Admin

Linuxのスレッド定義はシステムコールに依存していますか?
thread

Linuxのスレッド定義はシステムコールに依存していますか?

クローン clone()/systemcalls のマニュアルページで以下をclone3()見つけました。 CLONE_THREAD(Linux 2.4.0以降)。 CLONE_THREAD が設定されると、子プロセスは呼び出しプロセスと同じスレッドグループに配置されます。 CLONE_THREAD に関する残りの議論をより読みやすくするには、「スレッド」という用語は、スレッドグループのプロセスを表すために使用される。。 したがって、私が理解したように、cloneスレッドはCLONE_THREADフラグが設定された状態で生成されます(したがって、呼び出し...

Admin

LinuxはスレッドをPコアまたはEコアに固定する方法を提供しますか?
thread

LinuxはスレッドをPコアまたはEコアに固定する方法を提供しますか?

Intelファミリの12世代以上のチップ(および私が知っている限り、ARMチップ)には、クロック速度が異なるさまざまなクラスのコアがあります。 Pコアは性能を向上させ、クロック速度を上げます。 Eコアはエネルギー効率を向上させ、クロック速度を下げます。 これは、周波数を制限できるチップだと私が理解しているものとは異なりますが、コア全体で同じです。 スレッドをPコアまたはEコアクラスにバインドする方法はありますか? ...

Admin

プロセス内およびプロセス間のコンテキスト切り替え頻度
thread

プロセス内およびプロセス間のコンテキスト切り替え頻度

私が読んでいる本(2013年)によると、Linuxカーネルは、プロセス内の移行がプロセス間の移行よりもはるかに安いと述べています。同じ CPU で同じプロセスの 2 つのスレッドを切り替えると時間が節約されます。ページテーブルコンバージョンコスト。 したがって、同じプロセスの2つのスレッド/タスク間の切り替えは、関連していないタスク間の切り替えよりも安価です。 Linuxカーネルは、パフォーマンスを向上させるためにプロセス内の移行の可能性を高めるために、どのように(プロセスの好みに加えて)試みますか? そうでない場合、これはどのくらいの頻度で発生しますか?実...

Admin