Developing Applications For Linux (LFD401)

Linux環境用のアプリケーションを開発する方法を学びます。このコースでは、Linuxアプリケーション開発に必要なツールと方法を実際に体験し、Linux固有の機能と技術について学びます。

$3250 申し込む 見積もりを取得

コースの概要

このコースは、経験豊富な開発者がLinux環境用のアプリケーションを開発する方法を速やかに理解できるように設計されています。

もっと見る

このコースでは次のことを学びます。

  • LinuxでC言語プログラムの開発や、システムプログラミングを行うためのツールと方法。
  • デバッグ手法とプロセス管理。
  • Linux固有の有料およびシステムコール。
  • もっと。

このコースの情報は、主要なLinuxディストリビューションで機能します。

スケジュール

インストラクター主導
7/13/2020 - 7/16/2020
バーチャル
$3250 カートに追加 見積もりを作成する
あなたのスケジュールに合うコースがない場合は、こちらを参照してください。 パートナーが提供するコース>

おもなテーマ

  1. 前書き
    • 目的
    • あなたは誰ですか
    • The Linux Foundation
    • Linux Foundationのトレーニング
    • Linuxディストリビューション
    • プラットフォーム
    • システムの準備
    • 仮想マシンの使用とダウンロード
    • Linuxで物事が変わる
    • コース登録
  2. 予選
    • 手続き
    • 基準と LSB
  3. OSSプロジェクトでの作業方法**
    • 適切に貢献する方法の概要
    • セキュリティと品質のためにメインラインの近くにとどまる
    • プロジェクトDNAの研究と理解
    • スクラッチしたいものを把握する
    • メンテナーとそのワークフローと方法を特定する
    • 初期の入力を取得し、オープンで作業する
    • 大きなコードダンプではなく、増分ビットを提供する
    • あなたのエゴをドアに置いてください:薄くなるな
    • 忍耐強く、長期的な関係を築き、助けになる
  4. コンパイラー
    • GCC
    • その他のコンパイラ
    • 主要なgccオプション
    • プリプロセッサ
    • 統合開発環境(IDE)
    • ラボ
  5. 図書館
    • 静的ライブラリ
    • 共有ライブラリ
    • ライブラリへのリンク
    • ダイナミックリンクローダー
    • ラボ
  6. 作る
    • makeおよびMakefileの使用
    • 大規模プロジェクトの構築
    • より複雑なルール
    • 組み込みルール
    • ラボ
  7. ソース管理
    • ソース管理
    • RCSおよびCVS
    • 転覆
    • ギット
    • ラボ
  8. デバッグとコアダンプ
    • gdb
    • コアダンプファイルとは何ですか?
    • コアダンプの生成
    • コアダンプの調査
    • ラボ
  9. デバッグツール
    • 電気柵
    • 時間を取得する
    • プロファイリングとパフォーマンス
    • valgrind
    • ラボ
  10. システムコール
    • システムコールとライブラリ関数
    • システムコールの作成方法
    • 戻り値とエラー番号
    • ラボ
  11. メモリ管理と割り当て
    • メモリ管理
    • 動的割り当て
    • チューニング malloc()
    • ページのロック
    • ラボ
  12. のファイルとファイルシステム Linux **
    • ファイル、ディレクトリ、デバイス
    • 仮想ファイルシステム
    • ext2 / ext3ファイルシステム
    • ジャーナリングファイルシステム
    • ext4 /ファイルシステム
    • ラボ
  13. ファイルI / O
    • UNIXファイルI / O
    • 開閉
    • 読み取り、書き込み、およびシーク
    • 位置およびベクターI / O
    • 標準I / Oライブラリ
    • 大容量ファイルのサポート(LFS)
    • ラボ
  14. 高度なファイル操作
    • 統計関数
    • ディレクトリ機能
    • inotify
    • メモリマッピング
    • 群れ() および fcntl()
    • 一時ファイルを作成する
    • その他のシステムコール
    • ラボ
  15. プロセス– I
    • プロセスとは何ですか?
    • プロセス制限
    • プロセスグループ
    • proc ファイルシステム
    • プロセス間通信メソッド
    • ラボ
  16. プロセス– II
    • を使用して システム() プロセスを作成するには
    • を使用して フォーク() プロセスを作成するには
    • を使用して exec() プロセスを作成するには
    • を使用して クローン()
    • 終了
    • コンストラクターとデストラクター
    • 待っています
    • デーモンプロセス
    • ラボ
  17. パイプとFifo
    • パイプとプロセス間通信
    • popen() および pclose()
    • パイプ()
    • 名前付きパイプ(FIFO)
    • splice()、vmsplice() および tee()
    • ラボ
  18. 非同期I / O **
    • 非同期I / Oとは何ですか?
    • POSIX非同期I / O API
    • Linuxの実装
    • ラボ
  19. シグナル– I
    • シグナルとは何ですか?
    • 利用可能な信号
    • 信号の発信
    • アラーム、一時停止および睡眠
    • シグナルハンドラーのセットアップ
    • 信号セット
    • sigaction()
    • ラボ
  20. シグナル– II
    • 再入可能性とシグナルハンドラ
    • ジャンプと非ローカルリターン
    • siginfo および sigqueue()
    • リアルタイム信号
    • ラボ
  21. POSIXスレッド– I
    • Linuxでのマルチスレッド
    • 基本的なプログラム構造
    • スレッドの作成と破棄
    • シグナルとスレッド
    • 分岐とスレッド
    • ラボ
  22. POSIXスレッド– II
    • デッドロックと競合状態
    • ミューテックス操作
    • セマフォ
    • フューテックス
    • 条件付き操作
    • ラボ
  23. ネットワーキングとソケット
    • ネットワーク層
    • ソケットとは何ですか?
    • ストリームソケット
    • データグラムソケット
    • 生のソケット
    • バイト順
    • ラボ
  24. ソケット-アドレスとホスト
    • ソケットアドレス構造
    • IPアドレスの変換
    • ホスト情報
    • ラボ
  25. ソケット–ポートとプロトコル
    • サービスポート情報
    • プロトコル情報
    • ラボ
  26. ソケット-クライアント
    • 基本的なクライアントシーケンス
    • ソケット()
    • connect()
    • 閉じる() および シャットダウン()
    • UNIXクライアント
    • インターネットクライアント
    • ラボ
  27. ソケット–サーバー
    • 基本的なサーバーシーケンス
    • 練る()
    • 聴く()
    • accept()
    • UNIXサーバー
    • インターネットサーバー
    • ラボ
  28. ソケット-入出力操作
    • 読み取り、書き込み()
    • send()、recv()
    • sendto()、recvfrom()
    • sendmsg()、recvmsg()
    • ファイルを送信()
    • socketpair()
    • ラボ
  29. ソケット–オプション
    • ソケットオプションの取得と設定
    • fcntl()
    • ioctl()
    • getsockopt() および setsockopt()
    • ラボ
  30. ネットリンク ソケット**
    • netlinkソケットとは何ですか?
    • netlinkソケットを開く
    • netlinkメッセージ
    • ラボ
  31. ソケット–多重化サーバーと同時サーバー
    • 多重化された非同期ソケットI / O
    • 選択する()
    • poll()
    • pselect() および ppoll()
    • エポール
    • 信号駆動および非同期I / O
    • 同時サーバー
    • ラボ
  32. プロセス間通信
    • IPCの方法
    • POSIX IPC
    • System V IPC **
    • ラボ
  33. 共有メモリ
    • 共有メモリとは何ですか?
    • POSIX共有メモリ
    • System V共有メモリ**
    • ラボ
  34. セマフォ
    • セマフォとは何ですか?
    • POSIXセマフォ
    • System Vセマフォ**
    • ラボ
  35. メッセージキュー
    • メッセージキューとは何ですか?
    • POSIXメッセージキュー
    • System Vメッセージキュー**
    • ラボ
  36. Closing and Evaluation Survey

**これらのセクションは、一部または全体をオプションと見なすことができます。これらには、背景の参考資料、専門的なトピック、または高度な主題が含まれています。インストラクターは、教室での経験と時間の制約に応じて、それらをカバーするかしないかを選択できます。

前提知識

このコースは経験豊富な開発者向けです。受講生はCプログラミングに習熟し、基本的なLinuxユーティリティとテキスト エディタに精通している必要があります。

構成

配送方法

ライブオンライン(仮想)
ライブ(教室)

含まれているもの

  • インストラクター主導の4日間の授業時間
  • 演習と課題
  • リソースとコースマニュアル
  • 修了証
  • デジタルバッジ
  • 無料のChromebook

経験レベル

   中級

コースの評価

   

アドバイス

5人以上でトレーニングを受けるなら?
企業向けの団体割引を受ける>

Chromebook
$3250 申し込む 見積もりを取得