GNU Toolchains & Embedded Linux Programming-第 16 期

為什麼要學習 Embedded Linux Programming?這門課程在學習 Linux 系統程式設計與觀念,這是寫好 Linux 應用程式,並學好 Linux 驅動程式的基礎。例如,Linux Threading 是經常應用在 Linux 應用程式的技術,也是重要的 Concurrency 觀念;又如,Linux Threading 也影響 Linux 驅動程式的設計。

GNU Toolchains 是 Linux 的主要開發工具,這是學習 Linux 的基本主題。本訓練課程整理並精選主要的 Linux 系統程式入門主題,幫助初學者有效學習 Linux 開發工具與系統程式設計。—Moko365 Team

課程方向

訓練學員使用 GNU 開發工具,並在工具的操作過程中講解重要的 Linux 系統程式觀念,將觀念融入工具的操作過程,並透過工具的操作驗證觀念。程式設計部份,我們希望能訓練學員有效地了解重要的系統程式觀念,並透過一個連貫性的範例進行研究討論(Web Server),以進行整體觀念的解析。

更新通知

本課於 2015 年 01 月 27 日進行第四次改版。第四版課程增加了 GNU Toolchains for Embedded IoT 介紹,以及在 IoT 上撰寫程式的實習練習。

課程代號

SP000

課程簡介

訓練學員使用 GNU 開發工具,並在工具的操作過程中講解重要的 Linux 系統程式觀念,將觀念融入工具的操作過程,並透過工具的操作驗證觀念。程式設計部份,我們希望能訓練學員有效地了解重要的系統程式觀念,並透過一個連貫性的範例進行研究討論(Web Server),以進行整體觀念的解析。

課程大綱

上課時數:12 小時,共計 2 天。

時程 上課大綱 講師
第 1 天
09:30 am-04:30 pm
第 01 堂課:GCC & Linker
  • 1.1 GCC 常用與重要參數
  • 1.2 gcc-lib 說明
  • 1.3 startup files (crt?.o)
  • 1.4 shared library 參數
  • 1.5 常用的 GNU C extensions
  • 1.6 glibc and shared library
  • 1.7 linker script 撰寫

    第 02 堂課:GNU Debugger
  • 2.1 GDB 常用指令
  • 2.2 Symbol table
  • 2.3 除錯環境建立

    第 03 堂課:Makefile, Makefile Rules
  • 3.1 Makefile 觀念與應用
  • 3.2 Makefile rule 撰寫

    第 04 堂課:GNU Bintuils, ELF, loader/linker
  • 4.1 ar
  • 4.2 nm
  • 4.3 strip
  • 4.4 ldd
  • 4.5 objdump
  • 4.6 Symbol table
  • 4.7 Executable and Linking Format(ELF)
  • 4.8 ELF loader
  • Jollen
    第 2 天
    09:30 am-04:30 pm
    第 05 堂課:系統程式觀念
  • 5.1 System calls
  • 5.2 Process and fork: parent and child
  • 5.3 Process and signal
  • 5.4 Blocking function

    第 06 堂課:系統程式設計
  • 6.1 IPC(行程間通訊)
  • 6.2 程序同步(Process Synchronization)觀念
  • 6.3 mmap(Mapped Memory)實作
  • 6.4 Mmap:Memory Model 說明
  • 6.5 Shared Memory 實作
  • 6.6 Shared Memory:Memory Model 說明
  • 6.7 Socket(Network Programming)

    第 07 堂課:多執行緒設計
  • 7.1 多執行緒設計 (Multi-threaded):POSIX threads
  • 7.2 消費與生產(Producer-consumer)觀念
  • 7.3 Semaphore

    第 08 堂課:GNU Toolchains for Embedded IoT
  • 8.1 Threading
  • 8.2 Interrupt handling
  • 8.3 Timer
  • 8.4 Sensor Fusion Programming
  • 8.5 Lightweigh Web Server
  • Jollen

    先備知識

    • 基本的 Linux 終端機環境操作
    • C 語言

    報名費用

    NT$ 11,800(上課時數 12 小時,共計 2 天)

    優惠方案

    • 開課前一週,天天早安鳥;開課前一週完成繳費享有「早安鳥」88 折優惠價(NT$ 10,300),我要早安鳥報名
    • 持 VIP Code 或仕橙會員卡,再折 NT$ 1,000
    • 持仕橙折價卷:依面額折抵,一門課程限用一張,可搭配 VIP Code 或仕橙會員卡使用
    • 持仕橙折價卷的學員,請於填寫報名表時勾選,並於開課當日繳交,如無法繳交折價卷者,須補繳課程費用

    開課時間

    • 日期:2016 年 06 月 04、05 日,第 16 期
    • 時間:09:30~12:00,13:00~16:30(09:00 AM 開始報到)

    開課紀錄

    • 仕橙版第 09 期(暨 Jollen’s Consulting 第 16 期)將於 2016 年 06 月 04 日開課(台北)
    • 仕橙版第 08 期(暨 Jollen’s Consulting 第 15 期)已於 2015 年 09 月 20 日結訓(台北)
    • 仕橙版第 07 期(暨 Jollen’s Consulting 第 14 期)已於 2015 年 02 月 08 日結訓(台北)
    • 仕橙版第 06 期(暨 Jollen’s Consulting 第 13 期)已於 2014 年 05 月 04 日結訓(台北)
    • 仕橙版第 05 期(暨 Jollen’s Consulting 第 12 期)已於 2012 年 01 月 08 日結訓(台北)
    • 仕橙版第 04 期(暨 Jollen’s Consulting 第 11 期)已於 2011 年 04 月 17 日結訓(台北)
    • 仕橙版第 03 期(暨 Jollen’s Consulting 第 10 期)已於 2010 年 08 月 22 日結訓(台北)
    • 仕橙版第 02 期(暨 Jollen’s Consulting 第 09 期)已於 2010 年 01 月 10 日結訓(台北)
    • 仕橙版第 01 期(暨 Jollen’s Consulting 第 08 期)已於 2009 年 10 月 25 日結訓(台北)

    上課地點

    台北市博愛路(詳細教室資訊另行公佈)

    我要報名

    results matching ""

      No results matching ""