タグ

debugに関するbull2のブックマーク (9)

  • 常駐型サーバープログラムのデバッグ手法

    BOOK: WEB+DB Press TITLE: 常駐型サーバーのデバッグ手法(ドラフト版) AUTHOR: (株)プリファードインフラストラクチャー 太田一樹 *注: この文章はWEB+DB PRESS Vol.48に掲載された記事のドラフト版です はじめに 今回はデバッグ関連特集ということで、常駐型サーバープログラムを作成する際のハマりどころやそれに対する解析方法・解析ツール・対策を、実際の経験を交えながら紹介したいと思います。 筆者は(株)プリファードインフラストラクチャーでインメモリ分散検索エンジン「Sedue (セデュー)」を開発しています。モバイル向け検索エンジン「エフルート」や、2008/11/6にリニューアルされました「はてなブックマーク2」などの検索バックエンドとして使われております。 この検索エンジンはいくつかの常駐型サーバープログラムから構成されており

    bull2
    bull2 2009/04/06
  • Cowboy Programming » Debugging Memory Corruption in Game Development

    Definition:  Memory corruption is an unexpected change in the contents of a memory location. The symptoms of memory corruption can range from hard crashes, all the way through minor glitches, to no symptoms at all. The causes of memory corruption are many and varied, and include memory corruption itself.   In this article I attempt to classify the various ways in which memory corruption can man

    bull2
    bull2 2008/09/18
  • ThreadとHashMapに潜む無限回廊は実に面白い? (1/3) - @IT

    ThreadとHashMapに潜む無限回廊は実に面白い?:現場から学ぶWebアプリ開発のトラブルハック(10)(1/3 ページ) 連載は、現場でのエンジニアの経験から得られた、APサーバをベースとしたWebアプリ開発における注意点やノウハウについて解説するハック集である。現在起きているトラブルの解決や、今後の開発の参考として大いに活用していただきたい。(編集部) マルチスレッドのトラブルハックはさっぱり分からない… 対処が難しいトラブルといえば、GC(ガベージ・コレクション)とマルチスレッド処理に起因することが多い。 前々回(「肥え続けるTomcatと胃を痛めるトラブルハッカー 」)と前回(「JavaのGC頻度に惑わされた年末年始の苦いメモリ」)の2回にわたってGC、特にメモリ周りのトラブルを取り上げた。そこで今回は、マルチスレッド処理のトラブルの1つ、「レースコンディション(競合状態)

    ThreadとHashMapに潜む無限回廊は実に面白い? (1/3) - @IT
  • Rails 2.0でデバッグをする新しいやり方 - Hello, world! - s21g

    比嘉さんからciteされたみたいなので、取り急ぎ新しい情報を吐き出しておこうと思います。 そろろろRailsについて音を書いてみるか 後、デバッグの環境は、Javaに比べて貧弱だと思う。Railsでデバッグをする7つの方法を見てほしい。IDEでソースにブレークポイントを設定(ソースコードを書き換えるのではなく)して、ステップイン、ステップオーバー、メモリの状態を見たりなんてのに慣れているJavaから比べると、すっごく大変に見える。 喜ばしいことに、Rails 2.0ではruby-debugを使ったdebuggerが正式に採用されました。 これの使い方は非常に簡単です。 まずは、以下のようにブレークポイントをコード中に書き込みます。

  • Debugging Backwards in Time - Google Tech Talk 紹介シリーズ ( 2 )

    メディア関係者向けお問い合わせ先 メールでのお問い合わせ: pr-jp@google.com メディア関係者以外からのお問い合わせにはお答えいたしかねます。 その他すべてのお問い合わせにつきましては、ヘルプセンターをご覧ください。

    Debugging Backwards in Time - Google Tech Talk 紹介シリーズ ( 2 )
    bull2
    bull2 2007/10/09
    任意の時点まで戻れる。まるでphotoshopの無限undoのようだ。スゲー
  • DSAS開発者の部屋:Win32 プログラムのデバッグTips (1)

    ■ はじめに ひとつのプログラムを完成させるまでには、多くの場合「デバッグ」という作業が必要です。 まったくバグのないプログラムを一気に書き上げるのは難しいことですから、 プログラミングの際には実行時のエラーを見つけやすくするための工夫が必要ですし、 実際にエラーが発生した場合にはできるだけ手際よく対処したいものです。 デバッグを行う上での最初の目標である「原因の特定」を効率的に行うための ツールや流儀はプラットフォームや使用言語により一様ではありませんが、 ここではネイティブな Windows プログラムをデバッグする上で役に立つ小技をいくつかとり上げてみたいと思います。 今回は、自作のプログラムの実行中にプロセスが異常終了する状況において、 問題箇所を手早く探すための方法のひとつをご紹介します。 記事では Microsoft Visual C++ を開発環境と想定しています。 どうやら

    DSAS開発者の部屋:Win32 プログラムのデバッグTips (1)
    bull2
    bull2 2007/10/06
    Windowsでも、Unix同様coreファイル+gdbを使ったのと同じなのね
  • ユメのチカラ: 大規模ソフトウェアをgdbを利用して微視的視点から理解をする

    たまたま講読している php-dev というPHPの実装を日語で議論するメーリングリストで「mbstring の新関数」というスレッドがあった。新規にmb_list_encodings_alias_names()という関数を追加したらしいのだが、既存のmb_list_encodings()とどう違うのかどうかという議論がわきおこっている。 ここでは、mb_list_encodings()を題材にどうやってphpの実装を理解していくか、そのプロセスを記述してみたい。もちろんこの方法がベストであるとか、この方法でなければいけないとか、いつでもこの方法が適用可能だなんてことを主張するつもりは一切ないが、一つの例として大規模ソフトウェアの微視的理解方法を理解いただきたい。 1) mb_list_encodingsがどこで利用されているかを知る。 $ cd /usr/src/php-5.1.4 $

  • http://www1.kcn.ne.jp/~robe/pf/pf008.html

  • RubyがSEGVしたら

    $Id: segv.html,v 1.9 2002/10/24 18:37:50 aamine Exp $ この文書は 2002-10-24 の日記に書いていたのを単独ページに 移したものです。とある SEGV をデバッグする過程を記録しました。 デバッグ方法の参考にでもしてください。 きっかけ TMail の質問メールが来た。 マルチパートメールを作るにはどうしたらいいのかという質問だ。 このへんのユーティリティメソッドは欲しいと思ってたので、 答えを書くついでにライブラリにも追加することにする。 書き終わって、それじゃあテストしようと思ったら、 ~/r/tmail % t ....................................................... ..............F.....................................

    bull2
    bull2 2006/09/20
    デバッグ方法
  • 1