タグ

c++とlinuxに関するdewdropのブックマーク (3)

  • 競合状態を避ける

    6.10. 競合状態を避ける「競合状態」は次のように定義されています。 「イベント同士が動作する相対的なタイミングが、思いもよらない依存関係に 陥ってしまった危険な動作状態」 [FOLDOC]。 競合状態は通常、1 つ以上のプロセスが共有リソース(ファイルや変数等)にアクセス する時に伴う現象で、複数のアクセスを適切に制御できなくなります。通常プロセスはアトミックには動作しません。別のプロセスは基的に 2 つの命令間 に割り込みます。 安全が必要となるプログラムのプロセスが、この割り込みに備えていなければ、別の プロセスが妨害できる可能性がありますん。 安全が必要なプログラムが動いている間に、別プロセスのコードがいくつ動いて、 それがどんな操作の組み合わせであっても、プログラムは正確に動かなければいけ ません。競合状態の問題は、2 つのカテゴリに分類できます。 信頼できないプロセスによる

    dewdrop
    dewdrop 2007/02/28
    ファイルの排他処理
  • C(++)言語: valgrindの使い方

    ubuntu% uname -a Linux ubuntu 2.6.12-10-386 #1 Sat Mar 11 16:13:17 UTC 2006 i686 GNU/Linux ubuntu% valgrind --version valgrind-3.0.1 (0) 目次 Valgrindに含まれるツール Memcheck: メモリエラーを検出する(default) Cachegrind: キャッシュミスを検出する Massif: ヒーププロファイラを使う まとめ valgrindの使い方とエラーメッセージを整理してみた。「valgrind --leak-check=full command」というコマンドラインをよく用いる。これによりメモリ周りのバグを検出出来る。 --tool=cachegrindではプログラム実行時のキャッシュミス率を測定する事が出来る。cg_annotateを

  • IBM Developer

    IBM Developer is your one-stop location for getting hands-on training and learning in-demand skills on relevant technologies such as generative AI, data science, AI, and open source.

    IBM Developer
  • 1