104學習精靈

全部 課程 貼文 教室 證照 影片
Linux系統管理相關的課程 (6)
從工作推薦課程
Linux系統程式設計
一般情況,通常整個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背後的運作行為,很難了解真諦。因此若有經驗的人帶你看並且提供範例程式演練,對於學習會相當有幫助。 本數位課程為學習套餐,另外加入了C程式及及資料結構(Data Structures)2門基礎課程,雖是基礎但它卻是資訊學科領域非常重要的核心課程,因為唯有好的程式基礎對於本課程的理解才會事半功倍。 學習目標: 1. 了解Linux system call 及OS作業系統所扮演的功能。 2. Linux 低階I/O輸入輸出 3. Linux 多執行緒與同步控制 4. Linux 行程管理與IPC行程間通訊 5. 了解TCP/IP原理與client server網路架構 6. Socket Programming 網路程式設計 7. 能夠實現Raw Sokcet與UDP Multicast 功能 8. UART Serial 序列程式設計 章節架構 ★ 精通C語言  程式語言導論  C程式介紹  運算式  流程控制  函式與巨集  陣列與指標  字串處理  變數範圍  檔案管理  NEW data Type ★ 資料結構  資料結構導論  ADT 抽象資料型別設計方法  Set 集合 ADT設計  Stack堆疊  Queue 佇列  Linked List鏈結串列  Tree樹狀結構  Graph 圖形結構  Search資料搜尋  Sorting資料排序 ★ Linux系統程式設計  Low Level I/O Routine  File and Directory Manipulation  General Library Interface  Processes  Signals  POSIX Thread  InterProcess Communication  Shell programming  Linux Serial Programming  Linux Sokcet Programming  TCP/IP 網路簡介(1)  TCP/IP 網路簡介(2)  Wireshark 工具使用  TCP Socket程式與Socket API介紹  Socket多工處理  UDP Socket  Unix Domain Socket  Socket Option & Ioctl
艾鍗學院
嵌入式Linux設計開發
「嵌入式系統」是所有電子產品最重要的底層核心技術之一。從工業自動化控制設備、機器人、WiFi路由器、汽車、電動車充電樁,到手機與平板等行動裝置、各種互動式多媒體機台、監控與電信設備、醫療設備等,都採用了嵌入式系統。在半導體技術與人工智慧的發展下,AI與物聯網中各種嵌入式終端整合為AIoT系統,帶動嵌入式應用更加多元、智慧與彈性。儘管科技持續迭代變化,嵌入式技術的重要性仍未動搖,嵌入式Linux開發人才在半導體與電子資訊科技產業依然炙手可熱。 然而,由於學習嵌入式有一定的門檻和難度,學習者普遍面臨著整體概念模糊、實作經驗不足、學習與應用之間的落差,以及相對複雜的軟硬體整合等問題。因此,艾鍗力邀業界資深工程師聯手打造嵌入式系統學程。帶你熟悉Linux系統環境及伺服器安裝,了解Embedded Linux的主要部份包含:Toolchain, Bootloader, Kernel, Root Filesystem。上手Embedded Linux BSP:Buildroot與OpenWrt。 學習目標 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通訊程式。 課程大綱 1. 嵌入式Linux系統簡介與實務開發方式 2. 開發硬體平台說明 3. 軟體開發平台BSP 解說 4. 深入 GNU make 5. 移植 Open Source 6. Linux Frame Buffer Device & GUI 圖形系統 7. Bootlloader (u-boot開發, init SDRAM, Flash, How to write Driver in U-bot....) 8. Linux 檔案系統 (JFFS2, CRAMFS, YAFFS,UBIFS...) 9. Linux MTD 裝置 10. GNU toolchain (Shared vs. Static Library, Linker Script, ELF Format, ar, objcopy, objdump, nm, libtool,etc. GCC Compiler . GDB,..) 11.產品應用 (1)Media Player -Porting MP3 Player (2)NAS -Porting SAMBA (3)Wi-Fi Router -hostapd, dhcpd, bridge, ... (4)IP Camera -Porting Streaming server (5)HTTP Server & CGI -BusyBox
艾鍗學院
Linux驅動程式
用Raspberry Pi學Linux驅動程式,並且搭配本公司所設計的Raspberry Pi I/O擴充板作為驅動程式實戰演練,實戰GPIO, UART, I2C, SPI等Linux硬體驅動,讓您在學習的過程中能夠快速了解硬體架構及軟體架構。 1.學習Driver撰寫的各個層面,包含核心API、中斷處理、同步、記憶體管理等等。 2.導正學員Linux Device Driver與Linux基本作業系統的觀念,為將來的Driver coding打下良好的基礎。 3.可以了解user-space與kernel-space之間的關係。 4.可以開始研讀及參考kernel裡面或是別人撰寫的device driver source code。 學習目標: 1. 能掌握Linux驅動程式設計概要及學習方法 2. 能看懂drivers目錄中與你要寫的類似驅動程式,並能依此參考並能加以改寫完成你自己的驅動程式 章節架構: ► Linux 驅動程式架構 ► Linux HAL ► Linux Driver開發流程 ► 核心程式碼與Makefile ► Driver 模組編譯與載入 ► 字元裝置Driver ● Character_Driver (1) ● Character_Driver (2) ● Character_Driver (3) ● Udev ► Linux Misc Device ► Linux GPIO Driver Framework ● Linux GPIO Lib ● BCM2835 GPIO 控制說明 ● Linux GPIO Host Controller驅動程式 ► Linux 中斷服務程式 ► Linux中斷控制器HAL層 ► Bottom Halves (Tasklet & Work Queue) ► 進階字元Driver ● Wait Queue ● Completion及非同步通知 ● Kernel Timer List (Jiffies, timer ticks) for LED 閃爍 ► Linux Platform Device & Platform Driver ► Linux Device Tree ► Linux SPI Driver Framework ● SPI簡介 ● SPI Flash 操作 ● Linux SPI Client驅動程式 for SPI Flash ● Linux MTD 驅動程式 ● Linux SPI Bus master驅動程式 ► Device Tree for ADC Driver (MCP3008) ► Linux I2C Driver Framework ● I2C 簡介 ● Linux I2C Framework(1) ● Linux I2C Framework(2) ● Linux I2C Bus master驅動程式 ► Linux UART Driver Framework ► Linux User Space Driver - BCM2835 C I/O Library
艾鍗學院
Linux入門職能精修
本課程以教企業的方式來教學,著重在使用方法與思維!許多學過Linux的應徵者在面試時,常被問到「你會LINUX嗎?」、「你實際做過那些LINUX服務呢?」、「什麼是LAMP呢?」如果你未來想成為網管、網站開發、嵌入式Linux開發、ROS機器人開發、敏捷開發、雲端架構、AI大數據分析、Web全端開發、資安防禦等領域的工程師,那你不可不學Linux。 看書自學太複雜,密密麻麻的文字介面,讓大部分的人看不到幾個章節就投降了。 查找網路上的技術文章,無法讓初學者循序漸進的掌握技術全貌,遇到問題也不一定有人幫你解答。 上一般坊間的Linux課程,講者不一定會明確告訴你技術應用的方向,學到的知識不一定能讓你與職場所需接軌。 為了幫助初學者克服上述困境,本課程從「如何幫你培養與業界接軌的Linux職能」角度出發,從系統安裝到服務器應用,由講師一步一步地教你操作。只要你照著講師的步驟,就會自然而然地學會Linux。接下來只要反覆練習,你將對Linux更熟練。 1. 什麼是Linux 2. Linux系統安裝 3. Hyper-V 4. VMwarePlayer 5. Virtualbox 6. 如何連線遠端Linux 7. RemoteConnectLinux - 讓你清楚的明白,什麼是遠端連線。 8. 檔案系統與系統結構 9. 系統結構 10. 檔案系統 (ext2、ext3、ext4、xfs) 11. 檔案類型與權限 (chown、chmod) 12. 套件安裝與常用指令 13. 關閉IPV6 & 變更Source.lst 14. 如何安裝需要的套件 (apt-get、dpkg) 15. 常用指令 16. 編輯器的使用 vi 17. 必懂的Linux操作 18. 核心升級 (apt-get、dirt-upgrade) 19. 網路設定 (ifconfig、route) 20. 時區設定及校時 (ntpdate) 21. 硬碟分割與掛載 (fdisk、mkfs、mkfs.ext2、 mkfs.ext3、mount) 22. 使用者帳號管理 (useradd、adduser、deluser、userdel) 23. 檔案壓縮與備份 tar 24. Ubuntu核心編譯 25. APACHE服務的安裝與設定 26. 服務器安裝 Vsftpd + windows應用 27. NFS服務的安裝與設定 28. SAMBA 服務的安裝與設定 + windows應用 29. PHP 30. 服務器安裝 Mysql 31. LAMP整合安裝 (tasksel install lamp-server)
艾鍗學院
Linux Socket網路程式設計
1. 了解 server/client程式運作與 TCP/IP原理。 2. 能夠以 C語言實作 TCP/UDP/Raw Socket。 3. 能夠以 ioctl/fcntl/setsockop去控制 Socket的行為。 4. 實現 Broadcast,Multicast。 適合具備C語言基礎,想要從事Linux程式或嵌入式應用程式開發者。 1. TCP/IP ▪ Introduction ▪ TCP/IP and OSI maping 2. Socket-What is Socket? ▪ Socket API ▪ Socket programming flows (connection-oriented) ▪ Socket programming flows (connectionless) ▪ Socket address structure ▪ Byte ordering and manipulation ▪ TCP socket API ▪ UDP socket API 3. Raw Socket ▪ Introduction ▪ Create Raw Socket ▪ Raw Socket I/O 4. Socket Option ▪ getsocketopt / setsocketopt ▪ Generic Socket option ▪ fnctl function ▪ ioctl function ▪ File operations ▪ Interface operation 5. Name and Address conversion ▪ Domain Name System ▪ Resolvers and Name server ▪ gethostbyname function ▪ gethostbyaddress function ▪ gethostname function ▪ getservbyname and getservbyport function 6. Daemon Processes ▪ Daemon characteristics ▪ Syslog daemon ▪ xinetd Daemon 7. I/O Multiplexing ▪ Blocking I/O model ▪ Nonblocking I/O model ▪ I/O multiplexing model ▪ Signal driven I/O model ▪ Asynchronous I/O model ▪ Comparison I/O module ▪ Select function ▪ poll function 我想了解更多 8. Broadcasting & Multicasting ▪ Introduction ▪ Broadcast addresses ▪ Multicast addresses
艾鍗學院
SDN網路技術實務
【SDN將翻轉5G架構】 5G通訊系統是一個全方位服務多技術融合的網路,滿足海量數據資料和連接的各種業務發展需要,最終滿足以用戶為中心的無線聯網需求,其中一個重要關鍵就在於SDN —軟體定義網路。 【SDN架構將全由軟體發號施令】 本課程主要說明SDN如何利用OpenFlow協定、訊息將網路裝置的控制面(control plane)從資料面(data plane)中分離出,並改以軟體方式實際操作。該架構可使網管人員可以在不更動硬體裝置的情況下,以集中控制方式使用程式重新規劃網路,為網路流量控制提供了一個新方案,也為核心網路和應用創新提供了良好平台。 課程特色 1. 快速讓你了解5G關鍵-SDN與OpenFlow相關技術。 2. 實現SDN技術有關的mininet操作,完全新手也能立即上手。 3. 學習到Wireshark抓取OpenFlow協定以及封包分析,並驗證 SDN交換器流表具2層以上的比對和流表記錄的內容如何操作與顯示。 4. 快速瞭解SDN防火牆的程式撰寫與實作結果的分析。 5. 利用Miniedit圖型編輯器,建立SDN網路拓樸。 6. 全新數位學習平台,全步驟影音分段指導+講義學習,讓你反覆觀看、實作練習,助你順利學習,將知識技術吸收消化。 學習目標 1. 釐清現有的傳統網路架構面臨的瓶頸,以及新一代SDN的網路架構如何解決當前傳統網路架構的關鍵技術。 2. 瞭解新一代SDN的網路技術最重要的、必須要懂的OpenFlow協定技術標準及實作驗證。學到OpenFlow如何工作?OpenFlow的訊息型態為何? 3. 學員可以學到用VMware開啟ubuntu內的終端機,並學到Mininet安裝、Wireshark安裝及使用方法。 4. 學員將了解如何透過Mininet搭建OpenFlow實際操作環境,並搭配Wireshark捕捉封包的分析與現有網路比較。 5. 學員可學會實現乙太網集線器的Mininet實作與程式分析。 6. 學員可學會實現乙太網交換器的Mininet實際操作與程式分析。 7. 學員可學會實現防火牆的Mininet實際操作與程式撰寫與分析。 章節架構 單元1-下一代革命性的網路—SDN 單元2-OpenFlow 1.x版必須懂的規格標準 單元3-OpenFlow訊息類型 單元4-OpenFlow 交換器與控制器 單元5-Linux與Mininet操作基礎 單元6-OpenFlow實驗與mininet操作 單元7-SDN乙太網集線器實現與Wireshark分析 單元8-OpenFlow流項目顯示與流加入方法 單元9-交換器類型的實現方式 單元10-Miniedit SDN網路模擬的實現方式
艾鍗學院