並び順

ブックマーク数

期間指定

  • から
  • まで

1 - 22 件 / 22件

新着順 人気順

gdbの検索結果1 - 22 件 / 22件

タグ検索の該当結果が少ないため、タイトル検索結果を表示しています。

 gdb22 linux    tool    QEMUGDB OS  
  • QEMUとGDBの連携で起こっていた壊滅的なバグ OS自作中に逆ハイゼンバグに遭遇したのでパッチを送った話

    Kernel/VM探検隊は、カーネルやVM、およびその他なんでもIT技術の話題ジャンルについて誰でも何でも発表してワイワイ盛り上がろうという会です。だいみょーじん氏は、GDBでQEMUをデバッグした時に起きたバグとその解決法について発表しました。 趣味はOS自作、自動車業界でエンジニアをやっているだいみょーじん氏 だいみょーじん氏(以下、だいみょーじん):では、「QEMUのバグを見つけてパッチを送った話」をお話しします。今回の発表は、まず自己紹介をしてバグ発見の経緯をお話しして、その後にバグに関する考察と原因調査、そして修正パッチ、まとめという流れで発表をしていきます。 まずは自己紹介です。だいみょーじんと申します。自動車業界でエンジニアをやっていて、趣味はOS自作です。こんな感じのOSを作っています。最近のUEFI(Unified Extensible Firmware Interfac

      QEMUとGDBの連携で起こっていた壊滅的なバグ OS自作中に逆ハイゼンバグに遭遇したのでパッチを送った話
    • GitHub - rohanrhu/gdb-frontend: ☕ GDBFrontend is an easy, flexible and extensible gui debugger. Try it on https://debugme.dev

      You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

        GitHub - rohanrhu/gdb-frontend: ☕ GDBFrontend is an easy, flexible and extensible gui debugger. Try it on https://debugme.dev
      • GitHub - nakst/gf: A GDB frontend for Linux.

        You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

          GitHub - nakst/gf: A GDB frontend for Linux.
        • GitHub - pgosar/ChatGDB: Harness the power of ChatGPT inside the GDB or LLDB debugger!

          First, make sure you install pip. ChatGDB also requires a python version of 3.3 or above. To install, run the command pip3 install chatgdb. It will create an executable called chatgdb that you will have to use to set your api key. To do that, run the command chatgdb -k <API KEY> You can set the model to use. There are two possible options, gpt-3.5-turbo and gpt-4(defaulting to the former): chatgdb

            GitHub - pgosar/ChatGDB: Harness the power of ChatGPT inside the GDB or LLDB debugger!
          • php-fpm(php) をビルドして gdb でデバッグ実行できる Docker Compose 環境を作った - Shin x Blog

            php-fpm と php コマンドを php-src からビルドして、gdb コマンドでデバッグ実行できる Docker Compose 環境を作りました。 github.com 利用方法 gdb コマンド php-src の .gdbinit さいごに 利用方法 リポジトリを git コマンドでチェックアウトして、make コマンドを実行します。make コマンドを実行すると、php-src からソースをチェックアウトして、Debian の Docker コンテナで php-fpm と php コマンドをビルドします。 $ make # ビルド完了後 $ docker compose run --rm php-fpm /php-src/php/bin/php -v PHP 8.3.8-dev (cli) (built: Jun 1 2024 04:00:02) (NTS DEBUG)

              php-fpm(php) をビルドして gdb でデバッグ実行できる Docker Compose 環境を作った - Shin x Blog
            • 2020年7月、Ruby 2.7 を gdb で追う時のメモ - ローファイ日記

              だいたい下記の記事と同じなんだけれど、少しでも新しい何かがあれば。2020年現在、Ruby 2.7.1 を対象に。 techlife.cookpad.com デバッグしやすい Ruby をインストールする rbenvで入れ直す場合 RUBY_CONFIGURE_OPTS で最適化を切るオプションを渡す 国分さんの記事の通り -g などは渡す必要がないそう、デフォルトが -ggdb3 なのでそれでOK -k でソースコードを残す が留意点。こういう感じで。 $ RUBY_CONFIGURE_OPTS='optflags=-O0' rbenv install 2.7.1 -k 関数を探す ソースコードを頑張って追いかける。あるいはとりあえずそれらしいものを readelf -s などで探しても良いかと思う。 $ readelf -s /home/vagrant/.rbenv/versions/

                2020年7月、Ruby 2.7 を gdb で追う時のメモ - ローファイ日記
              • はじめてのgdb - Qiita


                linuxCgdb使  gdb  ... gcclinux  IDE使   linux使 attach : GUI 使1:gdb  gcc -g3 test.c a.out -g3 
                  はじめてのgdb - Qiita
                • dockerでrubyの開発環境を用意してgdbでcodeを追う - とにかく何か書く

                  rubyのソースコードを読もうとしたが、自分が使っているNote PCはMacで、個人的にはLinux環境でやりたい。 またcodeを読むに当たり、gdbでゴニョゴニョしながら動きを追いたい。 そこで、dockerでrubyの開発環境を用意し、gdbを使ってコードを追うことにしたが、そのための環境の作り方について自分用にまとめておく。 docker環境を頂く ささださんが用意してくれているものを、ありがたく使わせて頂く🙏 github.com Note: docker 環境(Ubuntu 18.04 base)を作ってみました。 docker pull koichisasada/rhc で試してみてください。su rubydev でアカウントを rubydev でご利用ください。 docker-compose.ymlにoptionを固める 動作に必要なoptionをdocker-comp

                    dockerでrubyの開発環境を用意してgdbでcodeを追う - とにかく何か書く
                  • JavaプロセスがダンプしたコアファイルをjhsdbとGDBで見る - Fight the Future

                    手持ちのコアファイルがない場合は、yasuenagさんのリポジトリからすぐに作れます!! https://github.com/YaSuenag/garakuta/tree/master/NativeSEGV Linuxではあらかじめulimit -c unlimitedしてから実行してください。 デバッグ情報付きのOpenJDKビルドを使います。OpenJDKのソースをcloneして: $ configure --enable-debug --with-native-debug-symbols=internal --disable-warnings-as-errors $ make images です。 今回はjdk14 (https://hg.openjdk.java.net/jdk/jdk14/) をビルドしたものを使いました。buildディレクトリ以下にOpenJDKビルドができあ

                      JavaプロセスがダンプしたコアファイルをjhsdbとGDBで見る - Fight the Future
                    • GDBの中級トピック

                      アプリケーションがgdb内で走っている, もしくは入力待ちになっているときに, ctrl-cを入力すると, そこでアプリケーションを止めて, gdbのコマンドを打つことができるようになる. アプリケーションの動きを追跡する場合に必ずしもgdbでmain関数にbreakpointを設定して, そこから一歩ずつ追っていかないといけないわけではありません. 初期化(本題に入るまで)に多数のステップを要するアプリをmainから一つずつ 追っていくのは得策ではありません. アプリケーションを run や continue で 走らせておいて, 好きなときにgdbにctrl-cを入力すると, そこでアプリケーション が中断されて(breakpointにヒットしたのと同じ状態になり), gdbのコマンドを入力できるようになります. とくに, GUIアプリケーションのように, 立ち上がるとしばらくして入力

                      • gdbを使ったdynamic debugの小技集 - Qiita

                        はじめに こ、えだ臭?(デブ活 ソフトウェア開発をするとどうしてもデバッグに割かれる時間は長くなります。効率的にデバッグをするためにはデバッグをしやすい環境を整えておくことが不可欠です。特にLinuxだと標準的なデバッガとしてgdbが使えることが多いので、gdbを中心にデバッグ環境を整えることも多いと思います。 この記事では、gdbを使ったdynamicな方法でのデバッグの小技をいくつか紹介します。逆に、一般的なgdbの使い方の、break入れてcontinueしたり変数の中身を見たりといったとこは他の記事に任せることとします。 とはいえまずはgdbの一般的な話から dynamicにといっても、素性のgdbのままでは辛いことも多い。個人的には下記を常用している。 set print pretty on set print object on set print static-members

                          gdbを使ったdynamic debugの小技集 - Qiita
                        • ValgrindとGDBでプログラムのメモリアクセスをみてみる | わさらぼ

                          プログラムの動的な振る舞い、特にメモリアクセスの様子をみてみたくなることがあります。 たとえば、2017年のデザインガイアで発表されていたFPGAアクセラレータ開発を支援するためのツール環境では、ValgrindとGDBを使ってメモリアクセスの様子を可視化していて、面白そうだな、やってみたいなと思わされます。 とりあえず Valgrind + GDBでメモリアクセスを確認する方法を、ちょっと試してみました。 Valgrindを使ってみる まずはValgrindを使ってみます。ターゲットはfree忘れの簡単なプログラムです。 #include <stdlib.h> #include <strings.h> #define N (100) #define M (128) void dut() { char *ptr; for(int i = 0; i < N; i++) { ptr = (ch

                          • GitHub - epasveer/seer: Seer - a gui frontend to gdb

                            You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

                              GitHub - epasveer/seer: Seer - a gui frontend to gdb
                            • GNU Debugger "GDB" Adds Support For Microsoft's Debug Adapter Protocol - Phoronix

                              GNU Debugger "GDB" Adds Support For Microsoft's Debug Adapter Protocol Written by Michael Larabel in GNU on 2 January 2023 at 02:45 PM EST. 7 Comments Merged today to the GNU Debugger (GDB) is initial support for the Debug Adapter Protocol (DAP) that is a JSON-RPC interface for use by integrated development environments (IDEs) to better communicate with debuggers. The Debug Adapter Protocol (DAP)

                                GNU Debugger "GDB" Adds Support For Microsoft's Debug Adapter Protocol - Phoronix
                              • GDBがeBPFのデバッグをサポートした

                                GDBがeBPFのデバッグをサポートした。 GNU Debugger Adding eBPF Debugging Support - Phoronix eBPFというのはLinuxカーネル内の仮想マシンだ。 もともと、BPF(Barkley Packet Filter)という仮想マシンがあった。これはネットワークのパケットフィルタリングをするための仮想マシンで、レジスターベースのRISCプロセッサーを模した命令セットになっている。 カーネル内で安全にユーザーコードを実行するというのは需要があるので、BPFをより汎用的に使いたいという声は多かったのだが、何分BPFは設計が古い。レジスタは2個で32bit、命令セットはatomic compare exchangeのようなモダンなプロセッサーに搭載されている命令がない。 そのためeBPF(extended BPF)が設計された。レジスタは10個

                                • 「GDB 9.1」が公開 | OSDN Magazine

                                  オープンソースで開発されているデバッガ「GNU Debugger(GDB)」開発チームは2月8日、最新版となる「GDB 9.1」の公開を発表した。マルチスレッドシンボルの読み込みのサポートを実験導入するといった機能強化が図られている。 GDBはC/C++やGo、Rustなどさまざまな言語に対応するソースレベルのデバッガ。WindowsやLinux、macOSを含む各種UNIXなどさまざまなプラットフォームで利用できる。 GDB 9.1は、2018年1月に公開されたバージョン8系に続く最新のメジャーリリースとなる。 コマンド名で「.」(ドット)を利用できるようになった。また、「printf」や「eval」コマンドではCおよびAdaスタイルの文字列を直接表示できるようになるなど、既存のさまざまなコマンドが強化されている。 ユーザー定義のプリフィックスコマンドを定義できる「define-pref

                                    「GDB 9.1」が公開 | OSDN Magazine
                                  • GitHub - gaogaotiantian/watchpoints: watchpoints is an easy-to-use, intuitive variable/object monitor tool for python that behaves similar to watchpoints in gdb.

                                    You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

                                      GitHub - gaogaotiantian/watchpoints: watchpoints is an easy-to-use, intuitive variable/object monitor tool for python that behaves similar to watchpoints in gdb.
                                    • Pleasant debugging with GDB and DDD

                                      GDB is an old and ubiquitous debugger for Linux and BSD systems that has extensive language, processor, and binary format support. Its interface is a little cryptic, but learning GDB pays off. This article is a set of miscellaneous configuration and scripting tricks that illustrate reusable principles. It assumes you’re familiar with the basics of debugging, like breakpoints, stepping, inspecting

                                        Pleasant debugging with GDB and DDD
                                      • MSYS2 のインストールと,MINGW64 環境で動く LLVM(Clang, Flang, LLD, LLDB)とGNU ツールチェーン類 (gcc, g++, gfortran, gdb, make, ninja, ccache, svn 等) のインストール(MSYS2 を利用 )(Windows 上)

                                        Windows での,MSYS2 と GNU ツールチェーン類(gcc など)のインストール手順を説明する. MSYS2 は,ターミナル mintty とシェル bash と各種UNIX風コマンドの詰め合わせ. MSYS2 には,MSYS, MINGW64, UCRT64 などのさまざまな環境がある (環境についての公式の説明は: https://www.msys2.org/docs/environments/). このページでは,MSYS2 のベースと,MINGW64環境の LLVM(Clang, Flang, LLD, LLDB)とGNU ツールチェーン類 (gcc, g++, gfortran, gdb, make, ninja, ccache, svn 等) のインストール を行う. 【目次】 MSYS2 のダウンロードとインストール GNU ツールチェーン類 (gcc, g++,

                                        • memo/GDB/gdb.md at master · tsuyopon/memo

                                          You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

                                            memo/GDB/gdb.md at master · tsuyopon/memo
                                          • gdb の使い方・デバッグ方法まとめ

                                            たとえば、変数 var の値を2進数で表示したい場合は、次のように指定します。 (gdb) p/t var 一覧表示 whatis 変数の型を調べる。 info b 今設定しているブレークポイントの一覧を表示 セグメントフォルトをした後に利用すれば、どの関数で発生したか確認できます。 info stack 関数の呼び出しスタックの一覧を表示 info Thread 存在しているスレッドの一覧を表示 異なるアドレスにおける処理継続 以下のコマンドを使用することで、ユーザが選択したアドレスにおいて実行を継続させることができます jump linespec linespecで指定される行において、実行を再開 jump *address addressで指定されるアドレスにある命令から、実行を再開 アドレスが分かっている場合のメモリリーク出力 xはhexの意味です。 (gdb) p (char*)

                                              gdb の使い方・デバッグ方法まとめ
                                            • GNUが「GDB 10.1」をリリース、マルチターゲットデバッグのサポートを試験導入

                                              GDBは、Ada/C/C++/Fortran/Go/Rustをはじめとする、数多くのプログラミング言語に対応した、ソースレベルのデバッガ。さまざまなプラットフォームに対応しており、GNU/Linux、UNIX、Windowsで動作する。 「GDB 10.1」では、BPFのデバッグに対応したほか、ARC GNU/LinuxとRISC-V GNU/LinuxにおけるGDBserverをサポートしている。 ほかにも、debuginfodや、64ビット版Windows GDBを使用した32ビットWindowsプログラムのデバッグ、GNU Guile 3.0および2.2を使用したGDBの構築をサポートするとともに、スレッドによる起動時のパフォーマンス向上、PythonおよびGuile APIデバッグ時のさまざまな機能強化、TUIモードにおける修正と機能強化、試験的なマルチターゲットデバッグのサポート

                                                GNUが「GDB 10.1」をリリース、マルチターゲットデバッグのサポートを試験導入
                                              1

                                              新着記事