問題タブ [sbrk]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
342 参照

posix - brk を使用して brk_start を取得する

int brk(void *end_data_segment); のマニュアル 「brk() は、データ セグメントの末尾を end_data_segment で指定された値に設定します」

成功すると 0 を返し、それ以外は -1 を返します。

しかし、ブレークの初期値 (sbrk(0) など) を取得するにはどうすればよいですか?

よろしくお願いします、

0 投票する
2 に答える
13093 参照

malloc - "malloc_trim(0)" とはどういう意味ですか?

マニュアルページは私に多くのことを教えてくれました。それを通して、「glibc」のメモリ管理の背景知識をたくさん知っています。

しかし、私はまだ混乱しています。「malloc_trim(0)」(パラメーターとしてゼロに注意) は、( 1. )「ヒープ」セクションのすべてのメモリが OS に返されることを意味しますか? または(2.)ヒープの最上位領域のすべての「未使用」メモリだけがOSに返されますか?

答えが ( 1. ) の場合、ヒープ内のメモリがまだ使用されている場合はどうなりますか? ヒープがどこかでメモリを使用した場合、それらは削除されますか、それとも関数は正常に実行されませんか?

一方、答えが ( 2. )の場合、ヒープの上部ではなく場所にある「穴」はどうですか? それらはもう使用されていないメモリですが、ヒープの一番上の領域はまだ使用されています。この呼び出しは効率的に機能しますか?

ありがとう。

0 投票する
0 に答える
1300 参照

arduino - Atmel Studio 6.1 の Arduino Due。ビジュアルマイクロなし

Visualmikroよりもhttp://www.engblaze.com/tutorial-using-atmel-studio-6-with-arduino-projects/のチュートリアルの方が好きです。任意の種類のプラグインをインストールします。

チュートリアルに従ってプロジェクトをコンパイルしようとしましたが、うまくいきません: 「_sbrk への未定義の参照」。私にとって本当に悪いリンカエラーのように聞こえるのはどれですか?

チュートリアルは古いバージョンの IDE 向けに書かれており、SAM ではなく AVR を対象としているため、いくつかの変更を加える必要がありました。

GNU C++/シンボル

  • リスト項目
  • F_CPU = 84000000L
  • Arduino=154

GNU C++/ディレクトリ

  • [...]\Arduino\hardware\arduino\sam\cores\arduino
  • [...]\Arduino\hardware\arduino\sam\variants\arduino_due_x (これを変更する必要がありました)
  • [...]\Arduino\hardware\arduino\sam\system\libsam

ARM/GNU リンカ/ライブラリ

  • libcoreDue.a (arduino のタイプを識別できるように、Due を追加しました)
  • libsam_sam3x8e_gcc_rel_a
  • これら2つのファイルへのパスと同様に。

私が見逃した可能性のあるものは何ですか?

どうもありがとう!

0 投票する
1 に答える
1447 参照

c - sbrk(0) が失敗することはありますか?

誰かがすでに sbrk(0) の失敗を見たかどうか知りたいですか?

つまり、この関数に到達できれば、明らかに以前にメモリにアクセスする権利があったので、現在のブレーク位置を確認するのは問題ないはずですよね?

編集:たとえば、エラー例外を考慮する必要がありますか?

0 投票する
1 に答える
10510 参照

mips - sbrk を使用した MIPS 動的メモリ割り当て

sbrk動的メモリ割り当てに使用しようとしていました。しかし、SPIM と MIPS の新参者である私は、そうすることができませんでした。私は同じ大まかなコードをスケッチしました。

0 投票する
4 に答える
2758 参照

c - Sbrk と負のパラメーター

sbrk を使用してメモリを解放しているときに問題が発生しています。sbrk に負の値を渡しますが、ヒープの開始を減らしません。ここにコードがあります

出力例は次のとおりです。

0x10734f000

0x10734f002

sbrk が 1 減らされた後、出力された値が 0x10734f001 として返されない理由がわかりません。

このプログラムで malloc を使用することは許可されていません。これは、sbrk を使用した malloc および free のカスタム実装用です。