memory-mapped-file

軽量hps-to-fpgaブリッジ(またはすべてのブリッジ)に接続されている周辺機器にアクセスしようとするとLinuxがハングするのはなぜですか?
memory-mapped-file

軽量hps-to-fpgaブリッジ(またはすべてのブリッジ)に接続されている周辺機器にアクセスしようとするとLinuxがハングするのはなぜですか?

私はAltera DE1-SoC開発ボードを8ヶ月間作業してきました。私が開発しているシステムには、Cyclone V FPGAチップ、特に5CSEMA5F31C6Nが含まれています。チップ上で組み込みLinuxオペレーティングシステムを実行します。 すべてがうまくいっており、開発が進行中です。 2週間前、同社のハードウェアエンジニアは新しいカスタムボードを組み立てました。デザインとコンポーネントは基本的に開発ボードに似ています。すべてのHPS関連ピンは同じ方法で接続されていますが、主な違いは、デフォルトのコンソールポートがUART1であることです。これで問...

Admin

どちらのプロセスがファイル(メモリマッピングファイルまたは/ dev / shmファイル)を使用せずに同じ共有メモリを使用できますか?
memory-mapped-file

どちらのプロセスがファイル(メモリマッピングファイルまたは/ dev / shmファイル)を使用せずに同じ共有メモリを使用できますか?

現在、2つの異なるプロセスに同じ共有メモリを提供する方法を知る唯一の方法は、メモリマップファイルを介することです。つまり、どちらのプロセスも同じメモリマップされたファイルを開き、そのファイルからの書き込み/読み込みであるためです。 OSがディスクとメモリを交換する必要があるため、これには不利益/欠点があります。 これが愚かな質問なら事前にお詫び申し上げます。しかし、ファイルによってサポートされておらず、プロセス間に純粋に共有メモリがありますか?それでは、プロセスはメモリマッピングファイルまたは/dev/shmファイルを使用せずにどのようにそれを取得できますか...

Admin

Linux環境でC ++のメモリマッピングを理解してください。
memory-mapped-file

Linux環境でC ++のメモリマッピングを理解してください。

私の使命は、メモリマップを探索し、それを利用できることを確認することです。 私はこの概念とコーディング方法を理解しようとしています。以下のビデオとブログ投稿のコードを試しましたが、簡単に再現できるように、ここでも手順を繰り返します。 LinuxシステムでC ++(gccバージョン11.2.0)を使用しています。 https://www.youtube.com/watch?v=m7E9piHcfr4 https://bertvandenbroucke.netlify.app/2019/12/08/memory-mapping-files/ これは私のコードです...

Admin

メモリマッピングファイルを使用するときのデータ転送パスは何ですか?
memory-mapped-file

メモリマッピングファイルを使用するときのデータ転送パスは何ですか?

ファイルで read()/write() を使用することと mmap() を使用することの間にデータ転送パスに違いはありますか? 「カーネル」は「カーネル」を意味するhttps://stackoverflow.com/a/41419353? mmapには、次のファイルデータのコピーは必要ありません。コアユーザースペースとして。 read()がファイルからカーネル空間のバッファにデータをコピーし、カーネルバッファからユーザ空間のバッファにデータをコピーするのは正しいですか? ファイルで mmap() が呼び出されると、途中で何もせずに仮想メモリアドレスをフ...

Admin

大きなコードセグメントを処理するためのメモリマッピング
memory-mapped-file

大きなコードセグメントを処理するためのメモリマッピング

pmap私はメモリマッピングがどのように行われるかを示すプロセスを知っています。たとえば、pmap 出力の最初の行は、プロセス実行可能ファイルのテキストセグメントのメモリマップを示しています。非常に大きな実行ファイルがあり、コードサイズが大きいとしましょう。小さなテキストセグメント(小さな実行可能ファイル)の場合、pmampは400000 - 401000 - 4096 B - 4 KiBマップされたテキストセグメントを表示します。 (1)テキストセグメントが本当に大きい場合、どのようにマッピングされますか? (2)コードの実行が進むにつれて、必要な...

Admin

/dev/memの部分メモリマッピングを許可する
memory-mapped-file

/dev/memの部分メモリマッピングを許可する

シングルチップには、ARM-Cortex-A9 CPUとCyclone V FPGAを含むSoC-FPGA(DE0-nano-soc)があります。 CPUは1 GBのDDR3メモリにアクセスできますが、FPGAもそのメモリにアクセスしてデータを共有できます。 これで、起動パラメータを使用して合計RAMのうち900 Mしか表示されないようにLinuxを設定しましたmem=900M。これにより、Linuxに触れないRAMがあり、それを使用してFPGAと通信できます。 RAMに書き込む部分を使いたいです/dev/mem。適切なアドレスをメモリにマッピングすると、...

Admin

メモリマッピングI / Oはオペレーティングシステムによって内部的にのみ使用され、Linuxのプログラマは公開して使用しませんか?
memory-mapped-file

メモリマッピングI / Oはオペレーティングシステムによって内部的にのみ使用され、Linuxのプログラマは公開して使用しませんか?

オペレーティングシステムの概念では、メモリマッピングファイルとメモリマッピングI / Oは2つあります。メモリマップされたI / Oについては、以下を参照してください。 メモリマッピングファイルを使用するにはmmap()。 メモリマップされたI / Oを使用するにはどのような機能がありますか?メモリマッピングI / Oはオペレーティングシステムによって内部的にのみ使用され、Linuxのプログラマは公開して使用しませんか? ありがとうございます。 I / Oの場合、セクション1.2.1で説明されているように、各I / Oコントローラには転送される...

Admin

共有メモリマッピングファイルと共有メモリ領域は互いに基づいて実装されていますか?
memory-mapped-file

共有メモリマッピングファイルと共有メモリ領域は互いに基づいて実装されていますか?

共有メモリマッピングファイルと共有メモリ領域は互いに基づいて実装されていますか?次の二つの文章はこんな言葉をするようで、私が見るには鶏か卵かという質問のようです。 次のオペレーティングシステムの概念は、共有メモリマッピングファイルを紹介します。複数のプロセスがファイルの内容を保持する同じ物理メモリ領域を共有して、同じファイルを共有しますか? 複数のプロセスが同時に同じファイルをマップできます。、データ共有を許可します。すべてのプロセスの書き込みは仮想メモリ内のデータを変更し、ファイルの同じ部分をマップする他のすべてのプロセスで見ることができます。仮...

Admin