Logo
  • はじめに
    • SOLID の紹介
    • SOLID の機能
      • Visual Studio Shell ベースの IDE
        • 実績豊富なVisual Studioを採用
        • Visual Studioの高度な機能との連携
        • Visual Studioによる快適なデバッグ
      • RTOS TOPPERS
        • TOPPERS/ASP3,TOPPERS/FMPおよびTOPPERS/FMP3を採用
        • SOLID-IDEと密接に連携
      • GCC/Clang コンパイラ
      • メモリ管理機能
        • ARM Cortex-AシリーズのMMUを活用
        • IDEメモリマップデザイナ
      • ELF ローダー
        • ELFローダーを標準提供
        • 軽量動作の実現
      • ソースコード静的解析
        • 静的解析機能を標準搭載
        • 簡単に使用可能
      • アドレスサニタイザ
        • 実行時の不正メモリアクセスを監視
  • セットアップ
    • インストール
      • SOLID インストーラの入手
      • SOLID インストーラの起動
        • Visual Studio 2013 Shell (Isolated) のインストール
      • SOLID本体のインストール
        • SOLID-IDE のインストール
        • PARTNER Debugger のインストール
        • exeGCC のインストール
      • Visual Studio 2013 のアップデート
      • ツールチェーンのアップデートについて
      • SOLID for AArch64 について
        • 入手方法
        • インストール
    • ライセンスの登録
      • SOLID-IDE の起動
      • 接続するPARTNER-Jet2の選択
      • ライセンスキーの登録
      • ライセンスの確認
  • ユーザーガイド
    • ツールチェーンの指定
      • プロジェクト単位の指定
      • IDE起動時などに指定
      • ソリューション単位の指定
        • 全ての環境でs002を指定する場合
        • プラットフォームごとに別のツールチェーンを指定する場合
      • デフォルトツールチェーンの変更
    • コマンドラインでのビルド
    • MSBuildによるコマンドラインビルド
      • 実行前の設定
        • 環境変数の設定
        • ソリューションファイルの拡張子変更
      • ビルドの実行
      • ビルド実行バッチのサンプル
    • Parterコマンドウインドウ
      • 現在 Parterコマンドウインドウでサポートされているコマンド
    • デバッグ中のI/Oアクセス (PI/POコマンド)
      • 概要
      • 使い方
      • 使用可能なコマンド
      • 指定可能なオプションについて
    • 静的解析
      • 概要
      • 使い方
      • 実行例
        • 1. Null pointer argument in call to string length function
        • 2. Undefined or garbage value returned to caller
        • 3. Division By Zero
    • アドレスサニタイザ
      • 概要
      • 使い方
        • アドレスサニタイザデモについて
        • 構成の変更と実行
        • ビルドと実行
        • バグの検出
      • アドレス設定と注意点
        • 監視領域について
        • アドレス設定について
    • コードカバレッジ
      • 概要
      • 使い方
        • ソリューション構成
        • コードカバレッジの有効化
        • 実行
      • オーバーヘッドについて
    • 例外処理
      • 例外発生時の動作
      • 例外発生時のレポート
        • データアボート
        • 未定義命令例外
        • プリフェッチアボート
      • 例外処理の変更
    • スタックフェンス
      • 概要
      • 使い方
    • 関数情報の表示
      • 概要
      • 使い方
        • ソリューション構成
        • 関数情報の表示の実行
        • 最大スタックサイズの予測
        • 関数情報についての注意点
    • 関数トレース
      • 概要
      • 準備
        • プロパティシート変更
        • メモリ領域の割り当て
        • インストルメンテーションの有効化
        • 関数へのパッチ適用
      • 実行と結果表示
      • その他の使い方
        • 特定の関数にパッチを当てる
        • パッチの無効化
      • 制限事項
    • イベントトラッカー
      • 概要
      • 使い方
        • イベントトラッカー を使用するための準備
        • イベントトラッカー の有効化
        • イベントトラッカー の API
        • 指定できる操作
        • SOLID_EVTTRK_Ctrl
        • 実行
        • 表示の線・マークの見方
        • 主な操作
      • 要実装関数
        • IMPL_EVTTRK_Init()
    • ハードウェアブレーク
      • 概要
      • 使用方法
      • 設定の変更
      • 設定項目
        • アドレス
        • CPUステータス
        • バイトカウント
        • マスク指定
        • タスクID
    • メモリマップの設定 (MMUの設定)
      • 概要
      • メモリマップデザイナ
      • SOLIDで予約されているメモリ空間名
      • SOLID MEM API
      • 用語
    • OS内部資源情報の表示
      • 概要
      • 使い方
      • 表示項目について
        • タスク
        • イベントフラグ/セマフォ/ミューテックス
        • データキュー
        • タイムイベント ハンドラ
        • メモリプール
        • タスク状態の一覧
        • タスク待ち状態の要因一覧
    • クラッシュダンプデバッグ
      • 概要
      • 使い方
        • スナップショットファイルの作成
        • スナップショット生成するサンプルコード(1)
        • スナップショット生成するサンプルコード(2)
        • スナップショットファイルの再生
      • 制限事項
    • インクルードディレクトリの追加
      • 概要
      • 設定方法
    • プリプロセッサの定義を追加
      • 概要
      • 設定方法
    • ターミナル
      • 概要
      • 使い方
    • 実行コンテキスト情報の表示
      • 概要
      • 使い方
      • 実行例
    • 並列スタック
      • 概要
      • 使い方
      • 実行例
    • マクロ展開エクスプローラ
      • 概要
      • 使い方
      • 実行例
    • ライセンスの登録と確認
      • ライセンスダイアログの起動
      • ライセンスの登録
  • ベアメタル
    • チュートリアル
      • ベアメタル向けのアプリケーションプロジェクトを作成する
        • プロジェクトの作成
        • ベアメタルテンプレート独自の動作
      • ベアメタル向けのライブラリプロジェクトを追加する
        • プロジェクトの作成
        • ビルド順序の設定する
        • ベアメタルテンプレート独自の動作
  • SOLID-IDE
    • はじめに
      • SOLID-IDEの起動
      • プロジェクトの新規作成
    • デバッグ
      • デバッグの設定
        • 起動する PARTNER-Jet2 の選択
      • デバッガー内の式
    • メモリマップデザイナ
      • 概要
      • 表示方法
      • 特定の領域だけ設定を無効にする
      • 物理アドレス制限の設定
      • アドレスサニタイザの設定
    • サイズ プロファイラー
      • サポートされているフォーマット
      • 使用方法
        • サイズプロファイルを表示するには
        • サイズの比較を行うには
        • 表示方法を変更するには
        • CSVファイルを出力するには
    • ビルド
      • ビルド構成
    • プロジェクト管理
      • C/C++ プロジェクト
        • プロパティ ページ
    • よく使われる キーボードショートカット
    • コマンドラインスイッチ
      • スイッチの構文
      • コマンドラインスイッチ
    • SOLID-IDE メニュー構成
      • ファイルメニュー
      • 編集メニュー
      • 表示メニュー
      • プロジェクトメニュー
      • ビルドメニュー
      • デバッグメニュー
      • ツールメニュー
      • KMC(SOLID_V7A_ARM)
      • KMC(SOLID_V8A_AARCH64)
      • ウインドウメニュー
      • ヘルプメニュー
  • SOLID-OS
    • 概要
      • 要実装関数
    • ブート
      • 本項
        • ブートローダーが存在する場合
        • ブートローダーが存在しない場合
      • 要実装関数
        • IMPL_BOOT_Init
        • IMPL_BOOT_GetArgument
        • IMPL_BOOT_GetCsInfo
        • IMPL_BOOT_LoadCs
      • SMP時の要実装関数
        • SOLID_BOOT_SMP_INFO
        • IMPL_BOOT_SMP_Init
    • Core Service
      • メモリ
        • API
        • SMP用API
        • 要実装関数
      • ベクタ
        • API
      • 割り込みコントローラ
        • API
        • SMP用API
      • I/Oリソースマネージャ
        • API
        • 要実装関数
      • タイマ
        • API
        • タイマの要実装関数
        • フリーランカウンタの要実装関数
      • ログ出力
        • API
        • 要実装関数
      • ローダー
        • API
      • アドレスサニタイザ
        • ASAN_ERROR_TYPE
        • ASAN_ERROR_INFO
        • ASAN_REPORT_FUNC
        • SOLID_ASAN_Enabled
        • SOLID_ASAN_RegisterReporter
      • ネットワーク
        • 概要
        • ネットワーク機能を利用するための設定
        • APIリファレンス
      • SOLID独自の型
        • エラーコード
        • SOLID_ADDRESS
        • SOLID_PHYADDRESS
        • SOLID_REGISTER
        • SOLID_CPU_CONTEXT
      • イベント通知
        • 要実装関数
      • ミューテックス
        • API
      • Real Time Clock
        • API
        • 要実装関数
      • DMAコントローラ
        • データタイプ
        • API
        • 要実装関数
      • ヒープ
        • API
      • デバッグ
        • VLINK関連API
        • デバッガ関連API
      • スナップショット
        • API
        • 要実装関数
      • SMP
        • API
      • 定義済みのメモリマップ名
      • 予約されている割込み
        • RZ/A1H Starter Kit
        • AG903 Starter Kit
    • ファイルシステム
      • 本項
        • ドライバの登録
        • Fat FileSystem用ドライバの登録
      • API
        • SOLID_FS_Open
        • SOLID_FS_Close
        • SOLID_FS_Read
        • SOLID_FS_Write
        • SOLID_FS_Lseek
        • SOLID_FS_Sync
        • SOLID_FS_Ftell
        • SOLID_FS_Feof
        • SOLID_FS_Fsize
        • SOLID_FS_Truncate
        • SOLID_FS_OpenDir
        • SOLID_FS_CloseDir
        • SOLID_FS_ReadDir
        • SOLID_FS_Stat
        • SOLID_FS_Unlink
        • SOLID_FS_Rename
        • SOLID_FS_Chmod
        • SOLID_FS_Utime
        • SOLID_FS_Mkdir
      • メモリファイルシステム
      • VLINKファイルシステム
    • Kernel
      • SOLID-OSがサポートするCPU
      • サービスコール(API)仕様
        • TOPPERS/ASP3 リリースとの相違点
        • TOPPERS/FMP リリースとの相違点
        • TOPPERS/FMP3 リリースとの相違点
        • オリジナルTOPPERS仕様からの機能拡張一覧
        • SOLID-OS実装での制限事項(解消予定を含む)
      • カーネル起動パラメータの設定
        • 設定ファイルの編集 (ASP3)
        • 設定ファイルの編集 (FMP)
        • 設定ファイルの編集 (FMP3)
      • カーネルのメモリ管理について
        • カーネルのメモリ管理の概要
      • 外部リンク
    • ソリューションのプロパティ (カーネルコンフィグレーション等)
      • ソリューションのプロパティファイル
        • ソリューションのプロパティファイルの形式
      • ソリューションのプロパティ一覧
        • ソリューション全体に関するプロパティ
        • 基本動作に関するプロパティ
        • SOLIDの振る舞いに関するプロパティ
        • SOLID-OSの追加機能に関するプロパティ
        • カーネル選択のプロパティ
        • カーネルの振る舞いに関するプロパティ
        • カーネルの追加機能に関するプロパティ
        • ソリューション全体にかかるコンパイルオプション
      • BSPのプロパティファイル
        • BSPのプロパティファイルの形式
      • BSPで指定するプロパティ一覧
        • CPU種別
        • BSP ボード依存部の設定
        • BSP SOC依存部の設定
      • その他のコンパイルオプション
        • BOOT と COREサービス の両方に関するコンパイルオプション
        • BOOT に関するコンパイルオプション
        • COREサービス に関するコンパイルオプション
        • TOPPERSカーネル に関するコンパイルオプション
    • SOLIDインテリジェント ローダー
      • SOLIDインテリジェント ローダー 概要
        • ローダー の機能
        • ローダー を使うメリット
        • 2種類のローダブルアプリケーション
      • ローダー を使った開発の流れ
        • ローダー を使った分散開発
        • 各分散拠点の担当作業
      • ローダブルアプリケーション開発環境の準備
        • 開発会社が準備すること(1)「最初にすること」
        • 開発会社が準備すること(2) 「コーディング&ビルドのための準備」
        • 開発会社が準備すること(3) 「デバッグするための準備」
        • 開発会社が準備すること(4) 「協力会社に提供する前の動作確認」
        • 開発会社が準備すること(5) 「シンボルのEXPORT/IMPORT」
      • SOLID独自形式 / DLL形式 のソリューションひな形作成
        • ローダブルアプリケーションのソリューション生成前に知っておくこと
        • SOLID独自形式、DLL形式 ローダブルアプリケーションプロジェクトの作成
    • スタティックライブラリ の作成
      • ウィザードの開始
      • ウィザードの設定
  • SOLID ツールチェーン
    • C/C++ の言語規格について
      • デフォルトの言語規格
    • ライブラリの仕様(ARM)
      • exeGCC for SOLID s005 ライブラリ仕様
        • ライブラリの共通設定
        • C11/C++14 標準関数サポート
        • 未サポートの機能
        • 省メモリ環境向けのコンパクトな libc_tiny
        • ワイド文字(列)の扱いについて
      • exeGCC for SOLID s002 ライブラリ仕様
        • ライブラリの共通設定
        • C11/C++14 標準関数サポート
      • 未サポートの機能
      • ワイド文字(列)の扱いについて
    • ライブラリの仕様(AArch64)
      • exeGCC for SOLID s005 (AArch64)ライブラリ仕様
        • ライブラリの共通設定
        • C11/C++14 標準関数サポート
        • 未サポートの機能
    • SOLID が使用しているオプション
      • プリプロセッサオプション
      • ディレクトリオプション
      • コンパイラオプション
        • 共通オプション
        • ARM 専用オプション
      • アセンブラオプション
      • リンカオプション
    • Clang と GCC の主な相違点
      • コンパイラドライバ
      • 文字コード
      • pragma, attribute 拡張機能
      • mthumb-interwork オプション
      • marm オプション
      • specs ファイル
      • arm-*-eabi ターゲット時の enum サイズの仕様
    • GCC と Clang のオプション概要
      • GCC と Clang の共通オプション
      • GCC のみ指定可能なオプション
      • Clang のみ指定可能なオプション
    • ARM Compiler ツールチェーンとの相違点
      • ワイド文字のサイズ
      • armcc リンカの $$Sub$$ や $$Super$$ による既存関数のオーバーライド
      • __attribute__((at( ADDRESS ))) で変数を絶対アドレス ADDRESS に配置
      • armcc fromelf イメージ変換ツールの scatter-loading 機能の様な複数バイナリの生成
      • armcc の _mutex_XXX のようなマルチスレッドアプリケーションにおけるロックの管理機能
    • KMC 独自の修正について
      • GCC/Clang 共通の修正
      • GCC のみの修正
      • Clang のみの修正
    • マルチコンテキスト対応
      • errno のマルチコンテキスト対応
      • malloc 系関数のマルチコンテキスト対応
      • VLINK のマルチコンテキスト対応
    • ツールチェーン更新履歴
      • s005 (ARM)
      • s002 (ARM)
      • s001 (ARM)
    • ツールチェーンのライセンスについて
      • The copyright of exeGCC libraries
      • The copyright of exeGCC libraries (detail)
      • The NetBSD Project
      • LLVM/Clang Project
      • GNU Project
    • NetBSD libc を選択した理由
      • libc を自社開発からオープンソースに移行した理由
      • 歴史的な理由
      • NetBSD libc はこれらの要件全てを満たしていました
      • 他の候補との比較
        • newlib
        • FreeBSD/OpenBSD
        • MUSL
    • exeGCC について
      • exeGCC という名前について
        • 8086 のデバッガ製品の開発
        • FM TOWNS GCC 環境
        • COFF ファイルを DOS 上で実行する exeGCC
        • 現在の MinGW exeGCC
      • exeGCC4 というバージョンについて
      • exeGCC の各製品バージョンの概要
        • exeGCC(1995): 主に MS-DOS 用
        • exeGCC2(1999): Windows サポート開始
        • exeGCC3(2003): GCC 3 対応
        • exeGCC4(2009): MinGW ビルド版
      • 参考サイト
        • wikipedia「DOSエクステンダ」2019/8/30 版
  • スターターキット
    • スターターキットについて
      • RZA1H スターターキットの内容物
        • 同梱物全体
        • 名称と数量
      • AG903 スターターキットの内容物
        • 同梱物全体
        • 名称と数量
    • チュートリアル
      • SOLID-SDK/BSP のインストール
        • インストーラの入手
        • インストーラの起動
        • SOLID-SDKのインストール
        • BSPのインストール
        • インストールの完了
      • ハードウェアのセットアップ (AG903)
        • Jet2本体とボードの接続
        • ボードへの電源の接続
        • ボードとPCの接続
        • PARTNER-Jet2本体とPC間の接続
      • ハードウェアのセットアップ (RZ/A1H)
        • Jet2本体とボードの接続
        • ボードとPCの接続
        • PARTNER-Jet2本体とPC間の接続
      • サンプルアプリケーションの実行
        • プロジェクト新規作成ウィザードの開始
        • プロジェクトの種類の選択
        • SOLIDバージョンの選択
        • 使用するBSPとサンプルの選択
        • ウィザードの完了
        • プロジェクトのビルド
        • デバッグの開始
    • ユーザーガイド
      • 新規プロジェクトの作成
        • 概要
        • 作成方法
      • スタティックライブラリの作成
        • 概要
        • 作成方法
      • サンプルアプリケーションについて
        • サンプルアプリケーションの種類
        • ビルド方法
  • トラブルシューティング
    • PARTNER(ARM)が起動できない
      • 現象
      • 原因
      • 解決方法
    • ビルドが実行できない
      • 現象
      • 原因
      • 解決方法
    • 新規プロジェクトの作成ができない
      • 現象
      • 原因
      • 解決方法
    • リンク時に警告が出るようになった
      • ツールチェーンをs001に戻す場合
    • ソリューションファイルが関連付けられない
      • 現象
      • 解決方法
    • 動作が遅い
      • 現象
      • 原因
      • 解決方法
    • Visual Studio 2013 Update 5 のインストールに失敗する
      • 現象
      • 原因
      • 解決方法
  • FAQ
  • リリースノート
    • SOLID 2.0.0 (2020-11-27)
      • 機能追加/変更
        • ツールチェーン
        • SOLID-IDE
        • SOLID-OS
        • デバッガ
      • 不具合修正
        • SOLID-IDE
        • デバッガ
    • SOLID 1.4.0 (2019-10-31)
      • 機能追加/変更
        • SOLID-IDE
      • 不具合修正
    • SOLID 1.3.0 (2019-4-15)
      • 機能追加/変更
        • ツールチェーン
        • SOLID-IDE
      • 不具合修正
        • SOLID-IDE
        • デバッガ
    • SOLID BSP AG903 2.0.1 (2018-9-11)
    • SOLID BSP RZA1H 2.0.1 (2018-9-11)
    • SOLID 1.2.0 (2018-9-7)
      • 機能追加/変更
        • ツールチェーン
        • SOLID-IDE
      • 不具合修正
        • デバッガ
        • SOLID-IDE
        • メモリマップデザイナ
    • SOLID SDK 2.0.0 (2018-9-7)
      • 機能追加/変更
    • SOLID BSP AG903 2.0.0 (2018-9-7)
      • 機能追加/変更
    • SOLID BSP RZA1H 2.0.0 (2018-9-7)
    • SOLID 1.1.3.1 (2018-4-25)
      • 不具合修正
    • SOLID 1.1.3 (2018-4-16)
      • 機能追加/変更
      • 不具合修正
    • SOLID 1.1.2 (2017-12-1)
      • 機能追加/変更
      • 不具合修正
    • SOLID 1.1.1 (2017-9-11)
      • 機能追加/変更
      • 不具合修正
    • SOLID 1.1.0 (2017-7-18)
      • 機能追加/変更
      • 不具合修正
    • SOLID SDK 1.0.1 (2017-7-10)
      • 機能追加/変更
      • 不具合修正
    • SOLID BSP AG903 1.0.1 (2017-7-10)
      • 機能追加/変更
      • 不具合修正
    • SOLID BSP RZA1H 1.0.1 (2017-7-10)
    • SOLID 1.0.1 (2017-6-26)
      • バグ修正
    • SOLID 1.0.0 (2017-6-16)
  • Open Source Software used in SOLID
    • LLVM/Clang Project
    • Boost
    • FatFS
    • lwIP
    • FlatBuffers
    • LZ4
    • nanomsg
    • WhackWhackTerminal
    • node-pty
    • xterm.js
    • accepts
    • after
    • async-limiter
    • base64id
    • component-emitter
    • cookie
    • debug
    • engine.io
    • engine.io-parser
    • has-binary2
    • isarray
    • mime-db
    • mime-types
    • ms
    • negotiator
    • safe-buffer
    • socket.io
    • socket.io-adapter
    • socket.io-client
    • socket.io-parser
    • ultron
    • ws
    • VS-PPT
    • Json.NET
    • bloaty
    • walk
    • Live-Charts
    • MSAGL
    • squirrel
    • Node.js
    • Libelfin
    • JSON for Modern C++
    • python
    • asn1
    • node-bindings
    • safer-buffer
    • semver
    • Node Serialport
    • SSH.NET
    • ssh2
    • ssh2-streams
    • streamsearch
    • NJsonSchema
    • json-editor
    • foundation
    • markdeep
    • OxyPlot
    • ツールチェーンのライセンスについて
      • The copyright of exeGCC libraries
      • The copyright of exeGCC libraries (detail)
      • The NetBSD Project
      • LLVM/Clang Project
      • GNU Project
  • 索引
SOLID
  • Open Source Software used in SOLID
  • cookie
Previous Next

cookie

(The MIT License)

Copyright (c) 2012-2014 Roman Shtylman <shtylman@gmail.com>
Copyright (c) 2015 Douglas Christopher Wilson <doug@somethingdoug.com>

Permission is hereby granted, free of charge, to any person obtaining
a copy of this software and associated documentation files (the
'Software'), to deal in the Software without restriction, including
without limitation the rights to use, copy, modify, merge, publish,
distribute, sublicense, and/or sell copies of the Software, and to
permit persons to whom the Software is furnished to do so, subject to
the following conditions:

The above copyright notice and this permission notice shall be
included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND,
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

Previous Next

© Copyright 2017–2024, Kyoto Microcomputer Co., Ltd..

他のバージョン v: 2.0.0
バージョン
1.2.0
1.3.0
1.4.0
2.0.0
2.1.0
2.2.0
3.0.0
3.1.0
3.2.0
3.3.0
3.5.0
最新
latest