C-Shark(シー・シャーク)

Linuxアプリケーション・デバッガ C-Shark

アプリケーション・デバッガ“C-Shark”

は、Linux標準デバッガ“gdb”の弱点を解消し、GUIベースで操作性抜群のWindows環境で使用できる高級言語デバッガ「CSIDE C-Shark」と、Linuxターゲット・システム内で動作する独自のCSIDEデーモン“csided”、“_csidedbg”により、組込み Linuxアプリケーションのデバッグ効率の向上を実現したデバッガです。 1つのデバッガの操作で、複数のアプリケーションをリモート操作で起動およびアタッチしてデバッグする事が可能です。また、当社旧製品(CSIDE for Linux)に比べて、CSIDE V5を搭載した大幅な性能向上と使い易いユーザーインターフェースを実現しています。

主な特長

  • EclipseやGDBに比べて、操作性、レスポンスのよい優れたGUIデバッガでデバッグ効率の大幅アップによる開発期間の短縮を実現
  • メモリ・プロファイルを標準搭載
  • LTTを使用しないで独自解析によるプロセス遷移図の表示を実現
  • 子プロセスのmain()関数からのデバッグを実現
  • CSIDEによるデバッグ情報ファイルの一括管理
  • FTP等のファイル転送プロトコルを必要とせず、CSIDEとターゲット間のファイル転送を実現
  • 初期導入にも安心のサポート・パッケージ(有償LSP)を用意
  • 対応アーキテクチャとしてx86、ARMをサポート

アプリケーション・デバッグ機能の特長

デバッグ・プロセスの簡単切り替え

CSIDE C-Sharkでは、1つのデバッガで複数のプロセスを簡単に切り替えてデバッグすることが可能です。


①アタッチしたプロセス名とプロセス(PID)番号

アタッチされたプロセスがツリーの項目として表示されます。 このツリーの項目を選択したプロセスがカレント・デバッグ対象になります。 この位置にカーソルがあると、プロセスに属する全てのスレッドが同時に実行やブレークを行います。 カーソル位置以外のプロセスは切り替える前の状態を継続します。

②アタッチしたプロセス内のスレッド(LWP)番号

スレッド番号の項目を選択すると選択したスレッドだけをデバッグ対象にする事ができます。 カーソル位置から外れたスレッドは切り替える前の実行やブレークの状態を継続します。

③デバッグ情報をロードしたプロセス名

CSIDEのファイル・サーバでデバッグ情報をロードしたプロセス名が表示されます。 ここに登録された項目のサブ・メニューから新しいプロセスを生成したり、実行中の同名プロセスにアタッチしてデバッグを行う事が可能です。

プロセス・トレース

プロセス・トレースは専用のドライバ(csidept.ko)を使用して、現在ターゲットで稼動しているプロセスの遷移状況をグラフ化して表示し、また、その情報を元にCPU占有率も表示します。

メモリ・プロファイル機能

メモリ・プロファイルは、デバッグ対象プロセスのメモリ使用量表示や、確保開放関数(malloc、free)が呼び出された場所の一覧表示を行います。 また、ユーザ・プログラム終了時にこの情報を解析し、メモリ・リークや、同じポインタに対する多重確保、無効な配列への開放の原因となった呼び出しを自動検出し、ダンプ表示も行います。 このウィンドウはglibcの確保、開放関数を対象とします。 対象となるメモリ確保、開放関数は以下の関数です。

・malloc, realloc, calloc, free

・new(mallocとして表示る場合があります), delete(freeとして表示される場合があります)

2点間実行時間測定

2点間実行時間測定は、ユーザ・プログラムの2点間を指定して、その間の実行時間を最小、最大、平均時間で計測する機能です。

プロセス毎のソフトウェア・ブレーク機能

ブレーク・ポイントはプロセスIDを認識していますので、特定のプロセスでブレークさせることができます。

シグナル受信ブレーク機能

セグメンテーションフォルトなど致命的なシグナルが発生するとアプリケーションは終了して、そのプロセスは消滅するため、再現性が低い不具合の場合にはデバッグ追跡するのが困難です。 シグナル・トラップ・ブレーク機能は、致命的なシグナルが発生したときにアプリケーションをブレークさせ、問題点がどこにあったかを追跡するのに役立ちます。

共有ライブラリ・デバッグ

共有ライブラリはアプリケーションと異なるアドレスに動的にマップされるため、アプリケーションとは違ったアドレス解決が必要になります。 この問題をクリアし共有ライブラリの変数参照やプロセスIDを認識したブレークの設定を可能にします。

ファイル転送機能

ftpサーバやsambaサーバが実装されていないターゲットにファイルを転送する場合に役立ちます。ファイルの削除やディレクトリの作成も可能です。

Android™ NDKのデバッグに対応詳細はこちらへ

C-Sharkは、Android NDKで作成したC言語プログラムのデバッグにも対応しています。 簡単な設定だけでプログラムの先頭からのデバッグやスレッドのデバッグが快適に行えます。

Android NDKのデバッグに対応

動作環境

Windowsホスト

  • PC/AT互換機(DOS/V機)
  • 日本語Windows Vista 32bit/7 32bit,64bit/8 32bit,64bit
  • Pentium4 2GHz以上のCPUを推奨
  • 100MB以上(推奨2GB以上)空き領域のあるハードディスク
  • 512MB以上(推奨2GB以上)のメイン・メモリ
  • 解像度1024x768以上(HighColor以上)のディスプレイ
  • USBドングル・プラグ用として1つの空きUSB(1.1以上)ポート
  • Linuxターゲット接続用として1つ以上のEthernet-LANまたは、USB-LANでTCP/IPプロトコルによって通信可能であること
  • 「CSIDE C-Shark」をインストールするためのCD-ROMドライブ

Linuxターゲット

  • Linuxカーネル 2.6.10~3.8.13
  • Android™ 2.1, 2.2, 2.3
  • Windowsホスト接続用として1つ以上のEthernet-LANまたは、USB-LANでTCP/IPプロトコルによって通信可能であること
  • デバッグを行うプログラムのファイル形式がELF/DWARF2形式であること
  • procファイル・システムがあること
  • CSIDEデーモン各種ファイルが組み込めること

コンパイル環境

  • GNU Cコンパイラ(gccパッケージ)
  • GNU Cライブラリ、ヘッダー(binutils / glibcパッケージ)
  • カーネル・ソースおよび、カーネル・ヘッダ
  • ローダブル・モジュールの作成環境があること

デバッグ構成図

デバッグ構成図


① CSIDEデーモンと、アプリケーションをソースからクロス・コンパイルする。

② CSIDEデーモンの実行バイナリ・ファイルをLinuxターゲットのファイル・システムに配置する。

  環境変数PATHに設定されたディレクトリに全て配置してください。

③ CSIDEサーバの実行バイナリ・ファイルをLinuxターゲットのファイル・システムに配置して実行する。

④ アプリケーションの実行バイナリ・ファイルをLinuxターゲットのファイル・システムに配置する。

⑤ CSIDE C-Sharkが、CSIDEデーモンと通信してLinuxターゲットの操作を行う。

⑥ CSIDE C-Sharkがアプリケーションのデバッグ情報のロードを行い、ソース・ファイルの表示を行う。

⑦ CSIDEデーモンがCSIDE C-Sharkからの要求に従って複数のCSIDEサーバを起動する。

⑧ CSIDEサーバがデバッグするアプリケーションのプロセスにアタッチしてデバッグが可能となる。

製品構成

C-Shark製品構成

■ CSIDE C-Sharkセットアップ・ディスク

 「CD-ROMの詳細」

  • CSIDE C-Shark
  • PDFマニュアル一式

■ USBドングル・プラグ


■ C-Shark導入ガイド

対応CPU

■ C-Shark ARM

  ARMアーキテクチャ(ARMv4T~ARMv7)のCPU


■ C-Shark CEV (当社評価ボード "CEV-RZ/A1L"専用)

  ルネサス エレクトロニクス製 RZ/A1L


■ C-Shark x86

  386以上のIntel x86アーキテクチャのCPU

ライセンス

  • CSIDEデバッガ本体は、複数のパソコンにインストール可能ですが、本製品に付属するUSBドングル・プラグを接続したWindowsホストに限って使用することができます。
  • C-Shark CEVは、当社評価ボード"CEV-RZ/A1L"専用のデバッガです。この評価ボード以外では使用できません。

ダウンロード

より多くの方に当社製 C-Shark(シー・シャーク)を体験していただくことを目的とした評価版ダウンロードを実施中です。

評価版はCPU別にご用意しており、インストール後30日間は製品版と同じく全ての機能をご使用いただけます。

関連資料

ドキュメント


PDF
PDF形式のデータをご覧になるには、 Adobe Reader®が必要です。 Adobe Reader®は、Adobe Systems Incorporatedの商標または登録商標です。
Adobe Readerのダウンロード・サイト