• 締切済み

C言語、リングバッファについて

C言語で、リングバッファを使ってデバックをしたいのですが、どうやったらよいかまったくわかりません。教えてください。よろしくお願いいたします。

みんなの回答

noname#208507
noname#208507
回答No.8

・static変数を使ったデバッグ方法の質問なのか ・リングバッファのデバッグ方法の質問なのか を整理しないと、有用なアドバイスは出てこないと思います。 後者なら、具体的にどんな問題が起きているのか、どうリングバッファを作られたのかの情報も必要でしょう。一口にリングバッファと言っても、満杯と空の状態を区別の仕方などに複数の選択肢があるので。 状況を整理して、上司の方に相談し、それでも問題が解決しなければ再度質問されることをおすすめします。

全文を見る
すると、全ての回答が全文表示されます。
  • wormhole
  • ベストアンサー率28% (1622/5659)
回答No.7

もしかして・・・リングバッファを用いた通信ソフトを作って(といっても通信ソフトのログ管理にリングバッファ使うのはふつうのことだけど)、デバッグ情報をそれに送るということでしょうか? 仮に当たってたとして今の質問者さんには難しいと思うし、その手のものは既に作られてたりするので、それを使用した方が簡単だと思う(WindowsだとDbgMonやDbgViewとか)し、fprintfが一番お手軽そうな。

全文を見る
すると、全ての回答が全文表示されます。
  • asuncion
  • ベストアンサー率33% (2126/6288)
回答No.6

確かに、リングバッファーとデバッグ(デバックではなく)方法とはあまり関係なさそうな気がしますね。 その方法を提案された方に相談してみてはどうでしょうか。 もしかすると、いい知恵を授けてくれるかもしれませんし、思いつきでそう言っていただけかもしれません。

全文を見る
すると、全ての回答が全文表示されます。
  • wormhole
  • ベストアンサー率28% (1622/5659)
回答No.5

今の状態だとリングバッファをデバッグに用いる以前に、実装したリングバッファのデバッグをしないといけなそう。 #1の補足読んでもログを残すのにリングバッファ関係しそうもないけど・・・

全文を見る
すると、全ての回答が全文表示されます。
  • D-Matsu
  • ベストアンサー率45% (1080/2394)
回答No.4

「リングバッファって何?」ってとこから始めなければならないのなら、そのアプローチを考え直した方がいいでしょうね。 つーかリングバッファについては検索で沢山説明が出てくるので、いちいちそこの説明は行いません。 もっとも、リングバッファが理解できたらこの質問は解決したも同然でしょうが……

全文を見る
すると、全ての回答が全文表示されます。
  • asuncion
  • ベストアンサー率33% (2126/6288)
回答No.3

リングバッファーというデータ構造を使ったプログラミングがしたい、ということでしょうか。

全文を見る
すると、全ての回答が全文表示されます。
  • zwi
  • ベストアンサー率56% (730/1282)
回答No.2

リングバッファとデバッグのつながりを説明して下さい。意味不明です。

全文を見る
すると、全ての回答が全文表示されます。
  • Wr5
  • ベストアンサー率53% (2177/4070)
回答No.1

漠然としすぎた質問にどう答えたらよいものか……。 まず、リングバッファってどういうものかは理解されていますか? デバッグの対象がなんなのか説明できますか?

take_ID
質問者

補足

すみません。説明不足でした。 リングバッファを作成して、デバックでブレイクをかけたい部分に、static int aがあるとすれば、a=1などとして値をいれ、それをデバック情報として、リングバッファに入れて、ログを残すというものです。 プログラムを実行して、バッファの値を見ると処理がどのように通過しているのか、ログで確認することが出来るといったものです。 上司にこういう風に、デバックしたら良いよ言われたのですが、リングバッファを使ったことがなく困っています。どうぞよろしくお願いいたします。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • バッファリングがオフになっています・・・

    オンラインゲームをしているのですが、バッファリングがオフの為 接続できませんとなりました。 バッファリング自体が良く分かっていないのもあって解決策がわかりま せん。 バッファリングをオンにして下さいとの事なのですが方法を何方か お分かりの方お教え下さいm(_ _)m

  • 複数の割込み処理からアクセス可能なリングバッファ

    複数の割込み処理からのデータ追加(挿入)が可能なリングバッファを探しています。 例えば2本の不定期な割込みが発生し、それぞれの割込み処理ルーチンが一つのリングバッファにデータを挿入していくとします。 この時に挿入ポインタや挿入データをお互いに壊さないよう、排他制御されたリングバッファのソースをご存知でしたらお教え下さい。 言語はCまたはC++。 ライブラリなどを使わず、全てのコードを書くことが前提です。 CPUはなんでも構いません(割込禁止・許可などの命令は適宜置き換えます)。 よろしくお願いいたします。

  • リングバッファについて

    最近学び出した初心者なのですがリングバッファの空きサイズと使用サイズをそれぞれ1つの式で出したいのですが教えていただけないえしょうか。 (wp-rp)&(bufsize-1)というのを聞いたのですがこれだとバッファサイズが2の累乗サイズじゃないとだめみたいで。どなたかおしえてください

  • リングバッファって何ですか

    こんばんわ。 素人な質問ですが教えてください。 『リングバッファ』とは何ですが? <言葉から連想されるイメージは以下のようなものです> 丸いバッファ? 領域サイズが固定されており、容量がいっぱいになったら、 書き込むアドレスを最初の位置に戻し、古い記憶から順に 上書きされていくもの…? 詳しく教えて頂きたく思います。 お願い致します。

  • C言語以外ならバッファオーバーフローは起きないのでしょうか?

    こんにちわ 私はつい最近プログラミング入門したばかりのものです。 いろいろな興味に実力がついていけずとんちんかんな状態です。 ところで、昨今のセキュリティ問題でよく登場するバッファーオーバーフローという ものは何だろう、と思っていろいろ自分なりに調べてみました。 ある説明文では、C言語のメモリー格納仕様に起因する問題、と書かれていました。 ・・・ということは、パスカルなどのような他の言語であれば、バッファーオーバー フローの心配はしなくてもいいことになるでしょうか? マック愛好家の間では、MacOSの安全性の高さを大変にアピールしていますが、これは 技術的に言うとMacがPascal言語で開発されていたから、という種明かし、と考えれば よいことになりますでしょうか? お暇な方がいらしてましたら、どうかおつきあい頂けましたら幸いです。

  • バッファとは何ですか

    C言語を使用してるとバッファという言葉がよく出てきますがバッファとは何ですか メモリとは違うものですか 訳をみても緩衝材とか一時的に蓄える場所という意味でよく分かりません 一時的でない使い方も多い気がしますが実際はどういうものですか

  • バッファについて。

    C言語使われているバッファとはどういう意味でしょうか?stdio.hとファイル名のところで出てきました。教えていただけると助かります。すみません。

  • バッファリング処理を高速化したいです。

    バッファリング処理を高速化したいです。 perlのプログラムで性能がでなくて困っています。 ファイルの中身からレコードヘッダを検索しつつ可変長なレコードの件数をカウントするツールで バッファリングというかストリーミングっぽい処理をしているのですが 思いの外、性能が出ずこまっています。 (600MBのテキストで10分弱くらい、予定では1分程度で終わる見込みでした) とりあえず、非効率そうなのは、1レコード取得する部分と下記のようなバッファシフトの部分くらいなのですが バッファシフトについて何かもっとよい書き方はありますでしょうか? 処理的なイメージはこんな感じになっています。 LOOP_A: read(IN, $readbuf, 10240); $buf .= $readbuf; LOOP_B: ... レコード長の計算 ... バッファ内にレコード長以上なければ、LOOP_Aへ $buf = substr($buf,$reclen); # 処理済みレコードの削除 LOOP_B へ substr()の部分を C的にいうと先頭アドレスだけ移動するような書き方ができれば一番なのですが~ 1レコード取得は正規表現で探しているのですがこちらはもうすこし調べてからにしようと思います。

    • ベストアンサー
    • Perl
  • DAZNでのバッファリングについて教えてほしいです

    みなさんに教えてもらえたらありがたいです。 DAZNで試合を見ようとした時、画面上でクルクル回るバッファリングが起きて見られない時があります。 ブラウザ「Google chrome」を使って見ていて、ブラウザは最新バージョンです。 この症状の解決方法を知っていたら教えてもらえたらとてもありがたいです。 みなさん、どうか、よろしくお願いします。

  • バッファリングに必要なCPUの機能

    すごくおおまかな質問になるんですが、バッファリング行うために必要なCPUの機能を教えてください。