当初、私はコードを高速化するために、カーネルとユーザー空間の間の遷移を減らし、より多くのコードをカーネルで実行するようにプッシュする方がよいと考えていました。ただし、SO のようないくつかのフォーラムで、実際には逆のことが行われていることを読みました。より多くのコードがユーザー空間にプッシュされます。どうしてこれなの?直感に反するようですか?より多くのコードをユーザー空間に配置するには、カーネルからユーザーへの遷移が必要ですが、コードをカーネルに配置してもカーネルからユーザーへの遷移は必要ありませんか?
誰かが尋ねた場合に備えて、パケットデータを処理するアプリケーションについて考えています。
編集
詳細については、パケットデータがいつ到着するかについて考えています-ネットワークスタックを書き直し、パケット処理に適用できないコードを切り取り、コピーをゼロにしたい-パケットデータをユーザープログラムができる場所に配置しますできるだけ早くアクセスしてください。