コース概要

導入

  • Unix/Linuxの歴史
  • フリーソフトウェア
  • Unixの哲学

ホスト実習

  • GNU/Linuxを操作する
    • アーキテクチャ
    • シェル
    • パーミッション
    • FHS(ファイル階層標準)
    • ハード/ソフトリンク
    • 実効UID/GID
    • スケジューラー
    • プロセス/タスク/スレッド
    • IPCの基本/高度な技術
      • パイプ
      • シグナル
      • メッセージキュー
      • セマフォ
      • 共有メモリ
      • ソケット
      • select/poll
    • 避けるべきIPC技術
  • ホストLinuxの設定
    • Yocto/ELDK(クロス/ターゲットツール、ライブラリ、パッケージ)
    • ターミナルエミュレーション
    • サーバー (DHCP, tftp, NFS)

ターゲット実習

  • ボードで何かを実行するために必要なファイル
    • JTAG/BDI設定
    • u-boot(チェックアウト、設定、ビルド)
    • カーネル(チェックアウト、設定、ビルド)
    • ルートファイルシステム
    • フラットデバイストリ
  • 上記の適用可能なものをターゲットボードで構築/実行する
  • さまざまなルートファイルシステム
    • CRAMFS
    • ramdisk
    • MTD
    • JFFS2
    • roEXT2
    • ubi
  • 上記の適用可能なものをターゲットボードで構築/実行する
  • ルートファイルシステムの比較
  • デバッグ
    • 簡単なツール
    • ローカル/リモート
    • ユーザーモード/カーネルモード
    • gdb
    • gdbserver
    • JTAG/BDI(オプション)
  • プロファイリング
    • gprof
    • gcov
    • oprofile

リアルタイム

  • 前提条件
    • 割り込み
    • 再入可能なコード
  • リアルタイムLinux
    • 明示的/暗黙的なプリエンプションポイント
    • リアルタイムプリエンプションパッチ
    • 完全にプリエンプティブなカーネル
    • ハードリアルタイム拡張
  • Adeos/Xenomai
    • adeosパッチ
    • xenomai
    • カーネルのパッチ/設定/ビルド
    • ボードで実行する

ソフトウェアリリース

  • 管理
  • 開発
  • ソフトウェアリリースを再現する方法は?

その他のトピック

  • getopt
  • エンディanness
  • チートシート

特別な場合を除いて、このコースの概要のコンテンツは クリエイティブコモンズ 表示-非営利-継承 4.0 国際 (CC BY-NC-SA 4.0) のライセンスの下に提供されます。

要求

  • GNU/Linuxシステム(例:Ubuntu)をエンドユーザーとしてユーザースペースで使用する基本的な経験
  • コマンドラインシェルの基本的な経験
  • ユーザースペース/アプリケーション開発の基本的な知識(GNU/Linuxを使用して)
  • 組み込みプロセッサと開発ボードに関する基本的な知識
  • C言語プログラミングの基本的な知識
  • …または上記を学ぶ恐怖…
 35 時間

参加者の人数


参加者1人あたりの価格

お客様の声 (3)

今後のコース

関連カテゴリー