Linux/aarch64(Cortex-a57)でのアライメントされていないメモリアクセスの記録方法を教えてください。Linux/aarch64でのアライメントされていないアクセスのログとデバッグ
私はここに関与する2つの異なるものがあります理解:
- が整列していないアクセス(すなわち上のCPUからの割り込みを高めるために選択するには、割り込み整列されていないメモリのことがそうでなければ、AのCPUでサポートされていることになるアクセスLinuxの(SIGBUS /ソフトエミュレート非整列アクセスを/それらをログ火)にこれらの割り込みを処理する方法を選択するパフォーマンスコスト)
私の問題は最初、私はCPUの制御レジスタを管理する方法がわからないということですから私のプログラム(はが私のユーザスペースアプリケーションで実際にやらなければなりません)、そして2番目に、Linuxでの整列していないアクセスを管理するための/proc/cpu/alignment
インターフェイスがなくなっているようです(私は4.4.0カーネルを使用しています)。カーネルから不整列アクセスを管理する
: https://www.kernel.org/doc/Documentation/arm/mem_alignment(おそらく旧式の)
関連: Does AArch64 support unaligned access?
したがって、カーネルは、自分自身とユーザー空間に対して異なるアライメントフォールトを設定することはできません。あなたが言及したように、プロファイリングはここに行く方法です。私はより厳密なメモリチェックが必要な場合に備えて(それが理にかなっているかどうか疑問に思っていた) –