【Linux課程】嵌入式Linux設計開發 填表預約諮詢

訓練單位:艾鍗學院

訓練位置:台北市中正區重慶南路一段143號4樓

學員負擔:填表洽詢

政府負擔:填表洽詢

報名區間:
2023-12-15~2024-12-31

訓練區間:
2024-04-27~填表洽詢

甄試日期:
填表洽詢

適合職務:

收藏課程

訓練時段

週六,週日
上午,下午

訓練時數

63小時

訓練人數

20名

其他條件

*不需具備Linux基礎,有志投入Embedded Linux技術領域發展者 *針對社會新鮮人、退役軍人、待業上班族想轉職就業跨半導體科技產業者 *已在相關領域,欲再增強本身專業技能者 *欲學習Embedded Linux開發技術並能具體進行嵌入式產品研發工作 *對ARM架構和其底層系統程式開發有興趣,或想從事ARM BSP development、ARM Bootloader/BIOS programming研發相關工作者。 *需領導、管理嵌入式系統開發專案,並與團隊加強溝通者

訓練目標
我可以學到什麼?
1. 能清楚掌握嵌入式Linux的開發流程,並了解業界如何進行嵌入式產品開發與生產。
2. 瞭解如何建構一個完整的嵌入式Linux系統,並能夠進行軟硬體系統的整合、移植與開發。
3. 掌握Embedded Linux開發重點:Toolchain, Bootloader, Kernel, Root Filesystem。
4. 上手Embedded Linux BSP:Buildroot與OpenWrt。
5. 瞭解Open Source Porting與Debug技巧。
6. 學會如何在嵌入式Linux開發多執緒Pthread程式、網路Socket通訊程式。
7. 能具備Linux硬體驅動程式撰寫與除錯的能力,包含Linux中斷、GPIO、UART、SPI、I2C、ADC等Driver。
8. 瞭解ARM核心的指令集、記憶體處理器(MMU)、中斷處理等,並能以Bare-metal(Non-OS)的方式驅動I/O。

◎課程特色
● 專業師資群:
所有講師均超過12年以上產品開發經驗,將十多年累積RD經驗整理成教材,深入淺出的講解原理並快速學習獲取Know-How。
● 全新Bottom-up 速學模式:
以開發者的角度直效學習,從Linux OS系統到Linux 驅動程式完成,當一個以Linux為基礎的嵌入式系統建構完成後,才開始進入系統應用的開發階段。
● 推薦就業:
本公司長期與國內系統廠及IC廠的接觸,可為轉職的學員介紹工作,擁有優先面試的機會。
● 模擬業界實戰開發:
實戰演練!並深入業界嵌入式產品的開發與生產細節,幫助你縮短自學摸索和產品開發的時間,快速產出工程樣品。
● 軟硬整合實力大躍進:
不少企業團隊體認到,軟硬體整合能力的門檻和需求才是最高的,但只要跨過門檻就能夠解決更多問題。學習這門課,你將了解嵌入式系統架構並能進行軟硬體系統的整合、移植與開發。
● Raspberry Pi I/O擴充板:
艾鍗專為Raspberry Pi設計的一個I/O子板,以擴充原官方Raspberry Pi板的功能,使您可以並透過主題式的Lab,讓您的學習事半功倍。
課程說明
 
 
產業趨勢        
 
在半導體技術發展與AI人工智慧朝向專用化的推波助瀾下,AI得以與物聯網中各種嵌入式系統設備整合為AIoT(AI+IoT)系統。而為了解決海量數據帶來的龐大運算需求、在雲端運算儲存激增的成本,以及連網帶來的資訊安全問題,「邊緣運算(Edge Computing)」迅速崛起。使用邊緣運算是讓終端的嵌入式設備具有一定運算能力和反應機制,除了能夠防範萬一網路中斷帶來的各種風險,當終端能夠將數據預先處理、整理、過濾掉具隱私疑慮的內容,再將結果傳回雲端做進一步的工作,不僅大幅降低雲端作業與儲存的負載,也保障了隱私安全。
在AI時代,智慧化的嵌入式物聯網終端已成為不可或缺的存在!工業自動化控制設備、機器人、電信系統、行動裝置、汽車、電動車充電樁、各種互動式多媒體機台、AI影像辨識與監控設備,到醫療設備等,都採用了嵌入式系統。
「嵌入式系統」雖不是新興的技術,但一直到今天仍是所有電子產品最重要的底層核心技術,滿足特定應用的同時,更將觸角伸向更多元的系統整合、更智慧、更彈性的設計與整合度。搭著AI、物聯網、邊緣運算等大勢,嵌入式科技前景持續看漲,人才更是供不應求。
 
艾鍗力邀業界資深工程師聯手打造嵌入式系統學程。帶你熟悉Linux系統環境及伺服器安裝,了解Embedded Linux的主要部份包含:Toolchain, Bootloader, Kernel, Root Filesystem。上手Embedded Linux BSP:Buildroot與OpenWrt。掌握開發Linux驅動程式需要的知識,以及Linux驅動程式設計概要及學習方法。能看懂程式碼、分析程式碼,進而修改程式碼,體驗一個驅動程式形成的每個細節,並能依此參考加以改寫完成自己的程式。搭配數位學習從C語言到底層ARM Boorloader設計,協助學員全方位掌握嵌入式系統的開發觀念和技術脈絡,一舉省下茫然摸索、繞彎路的時間!
 
 
 
【第一階段】 Linux系統建置實務
▶ 開發平台硬體Raspberry Pi
▶ 套件安裝管理及Linux常用指令
▶ 檔案結構與檔案系統
▶ 使用者帳號管理
▶ 伺服器安裝與設定
[講師實務經驗分享]
此門課是為了進入嵌入式Linux開發的預備課程,要在Linux作業系統開發,對Linux這套作業系統的操作環境須要有一定的熟悉度,包含Linux系統架構、檔案系統結構、指令操作、網路設定、常用伺服器建置等。
 
【第二階段】 嵌入式Linux設計開發與軟硬體整合
▶ 了解嵌入式系統架構並能進行軟硬體系統的整合、移植與開發。
▶ 在拿到一般嵌入式BSP後懂得如何開始,會知道如何進行核心組態與編譯,Boot loader 編譯以及Root File system建立等。 能熟悉GNU Toolchain的使用,包含GNU AutoTools與Makefile的撰寫。熟悉Open Source 程式與函式庫的移植技巧。 課程利用Raspberry Pi 開源硬體,讓你從空的SD card,從無到有建構自己的嵌入式Linux 系統並能使板子能開機。在Linux系統建立完成之後,教你開發Linux Pthread、Socket及File(Device)I/O的系統程式。最後,以嵌入式Linux常見的產品,如IPCam、Wi-Fi Router、NAS,手把手教你這些功能是如何被實現的。
[講師實務經驗分享]
嵌入式Linux開發初期,必須先建立好主機端的開發環境與GNU Toolchain (包含交叉編譯器版本的選擇),通常剛入行者,不是不會寫程式,而是被這個環境搞死。上這門課可以了解整個嵌入式Linux的架構觀念與開發流程(這對於剛切入領域甚為重要),包含boot loader、Linux核心交叉編譯、板子Flash空間配置、Root File system產生等。Linux有很多開源軟體,你會想要了解如何移植這些Open Source,不論是應用程式、函式庫,還是驅動程式。這時你會開始要去懂Makefile、Shared Library與Static Library、 kernel module等。也一定會遇到gcc或ld error等,要去了解問題所在,你會發現善用GNU Toolchain對於Debug或分析問題很有幫助。 有一個系統架構後,我們帶你進入實際產品應用,包含Wi-Fi Driver移植、USB Camera整合應用等,讓你更能想像該如何快速整合出一個嵌入式軟體架構。


【第三階段】 嵌入式Linux驅動程式實戰
▶ 不管你是要自己撰寫或移植,這都是資深嵌入式系統工程師的必修課。
▶ 熟悉Linux驅動程式架構並能實際動手撰寫Linux 核心底層的驅動程式。
▶ 了解如何撰寫Linux硬體驅動程式,配合Raspberry Pi 硬體實戰 GPIO Driver、Linux中斷處理、UART Driver、SPI Driver、I2C Driver、ADC Driver等Driver。
[講師實務經驗分享]
嵌入式Linux系統的另外一個主要工作就是加入新硬體,此時我們要能了解硬體界面、控制原理與晶片功能,更重要的是為它撰寫一隻Linux驅動程式。涉及底層Linux驅動程式架構,對於Linux核心程心的掌握是一定要具備的!如何學好它?先要有一個實驗平台搭配硬體裝置,試著學會同步與非同步I/O控制、硬體中斷、I/O通訊等實際裝置驅動才有真正的感覺在設計驅動程式。此外,Linux驅動程式開發也是要準備好相關開發環境,才能開始編譯,所以通常沒概念者也難以切入。Linux驅動程式是嵌入式系統的核心技術之一,但大多數人的也僅僅只具觀念上與架構上的認知而已,鮮少有人真正有驅動程式的開發經驗,然而產業界對於RD研發工程師,有較高的職能要求。本課程使用Raspberry Pi ,並搭配我們自行設計的Raspberry Pi I/O擴充板作為驅動程式實戰演練,讓你快速上手Linux驅動程式!


【數位】Linux系統程式設計
▶ 了解Linux system call (如I/O, IPC, pthread等),而能運用這些system call實現linux程式,亦藉此了解OS在嵌入式系統所扮演的角色
▶ 了解 server/client程式運作與 TCP/IP原理
▶ 能夠以 C語言實作 TCP/UDP/Raw Socket
▶ 能夠以 ioctl/fcntl/setsockop去控制 Socket的行為
▶ 實現 Broadcast,Multicast
[講師實務經驗分享]
一般情況,通常整個嵌入式Linux系統的功能會有你自己寫的程式(可能也會去連結GPL或LGPL函式庫)並整合一些來自Open Source的程式。雖然Linux已存在很多的Open Source,但不可能永遠運氣這麼好都可以找到100%符合需求或規格的原始碼,所以你必須懂得如何修改成你要的功能。不論自己寫或移植Open Source,這些都是基於Linux核心,所以一定會用到Linux核心的能力,包含裝置I/O請求、多行程、同步處理、行程通訊等。若你的系統需要TCP/IP通訊,還得懂Socket網路程式設計。想自己寫並且能改得動Open Source的程式,其實要具備Linux系統程式設計的能力,你可以透過閱讀"Linux Programming Manual",但是篇幅之廣泛且多元,如果沒有對作業系統有一定的認知,不懂對系統呼叫(System call)所產生Linux背後的運作行為,很難了解真諦。因此若有經驗的人帶你看並且提供範例程式演練,對於學習會相當有幫助。


【數位】ARM Boot Loader設計
▶ 了解ARM核心架構與ARM例外處理
▶ 能熟悉ARM組合語言並能撰寫Startup code與Linker Script
▶ 配合Raspberry Pi硬體自幹 Boot code
[講師實務經驗分享]
沒有它,什麼都不會動!ARM Bootloader設計是嵌入式系統最底層的核心技術,如同電腦BIOS的角色。這技術就是談晶片開機的動作,從ARM初始化、DRAM初始化、Flash初始化、SoC中斷控制器到一般GPIO、UART等驅動。有能力設計Bootloaer你必須對你的CPU架構很清楚,例如使用ARM就必須了解ARM架構及指令集,了解Linker/Linker Script作用, 及了解你的SoC晶片手冊。Bootloader設計工作是位在嵌入式系統非常初期的階段,這對於IC設計公司或是會自己開IC的公司,是一項非常重要的核心技術。然而大多數系統廠商不常碰到這麼低階的開發技術,但若能擁有此項技術也會有非常多的幫助,因為有些工作是可以自己做的:如DRAM、Flash的容量的變更(這不是換chip而已) 要如何改code、如何設計韌體救援模式(韌體更新失敗時)、如何設計雙系統開機,如平板可以選擇Windows 10或Android 開機。在台灣很少有大學能夠開這種課程,因此知道這項技術核心的人非常少。在業界中會的人少,薪水更是高人一等!事實上,這個技術的學習是能夠有能力自幹一套作業系統的開始。
 
 
職涯方向
Embedded Linux工程師 │ 嵌入式系統軟體研發工程師 │ 嵌入式應用開發工程師 │Linux軟體 / 韌體工程師 │ Linux驅動程式工程師 │ 韌體研發工程師 │ BIOS 工程師 │ RTOS 工程師
 
 
師資介紹
 

范老師

▪ 清華大學資訊工程碩士

▪ Embedded system ▪ Linux ▪ C/C++

▪ Web based ▪ PHP/JSP ▪ Java

 

 

Joseph

▪ 台灣大學電機工程系博士研究 ▪ 上市網通科技公司/資深軟體工程師

▪ 嵌入式Linux系統 ▪  ARM Boot Loader  ▪  資料結構及演算法 ▪  PCB Layout

▪ MCU 韌體設計 ▪  Linux 驅動程式▪ Linux系統程式 ▪ 網路通訊協定

 
 

Collin

▪ 國立雲林科技大學電機系

▪ Linux 驅動程式 ▪ Embedded linux 開發 ▪ ARM u-boot 開發

▪ 產品開發經驗: Android cell phone, P.O.S(工業電腦)

 

 

Hank

▪ MIS資訊部經理  ※20年MIS工程師經驗

▪ Linux 系統管理 ▪ Embedded linux 開發 ▪ Linux網路伺服器管理

▪ Linux防火牆/iptables 管理 ▪ PHP網頁程式設計

 

E learning 728X200

備註
如您對本課程有興趣,或需相關諮詢,請於下方留下您的聯絡資訊,我們將派專人與您聯繫,回覆問題,感謝您!
我對課程有興趣
本資訊為職訓課程內容說明,若欲報名,請與培訓單位聯繫,或請至台灣就業通
  • code
    換一個
若您有進修網會員帳號,建議您登入進修網,省去填表部份欄位的填寫!
相似課程推薦
  課程名稱 認證機構(分校) 上課地點 費用 開課日期
索取課程資料
收藏課程資料
training 【產業新尖兵】AI與大數據應用... 工研院產業學... 台北市大安區 線上洽詢 2024-05-13
索取課程資料
收藏課程資料
training 【產業新尖兵】Solidity應用工... 工研院產業學... 台北市大安區 線上洽詢 2024-05-23
索取課程資料
收藏課程資料
training Gimp多媒體影像處理班 北訓電腦有限... 高雄市三民區 1134 2024-04-27
索取課程資料
收藏課程資料
LC11_C++ 程式設計 巨匠電腦高雄認證 高雄市新興區 線上洽詢 隨時開課
索取課程資料
收藏課程資料
▲線上遠距教學▲Web全端應用開發班 艾鍗學院 線上課程 線上洽詢 隨時開課
活動_職前訓練_全區495

登入1111進修網

1
2
提示
3
從facrbook登入
我無法登入、忘記密碼?
註冊成為進修會員