fbpx

基於 C 和 C++ 的 Linux 系統程式設計

使用 C 和 C++ 程式語言如叉執行緒訊號燈( fork thread semaphore ) IPC 進行 Linux Unix 系統程式設計的實用方法

報名參加課程

已經上過這門課程?

🔥歡迎來參加這個活動 – 上課心得分享與獎勵說明 :分享就贈送一門線上課程

從這 2.5 小時的課程,你會學到

  • 能夠編寫自己的系統呼叫,並利用 Linux/Unix 上現有的系統呼叫來建立系統軟體
  • 能夠更詳細地理解 Unix/Linux/Mac/Windows 系統
  • 提高 C 語言程式設計技能
  • 對於現有的開發人員來說,將有助於編寫更好的程式碼,避免記憶體洩漏和其他資源洩漏

要求

  • 學生應熟悉 CC++ 程式語言
  • 理解或處理 PC 與環境和編譯器的設定將有所幫助

課程說明

本課程深入解說 Linux、 Unix、 Mac OS X、 Windows 和 Free BSD 等與 posix 相容的系統程式設計。

學習用 C 和 C++ 編寫系統程式設計,並可視化 Linux 或 Unix 的工作原理。成為一個更好且比更有優勢的程式設計師。

設定編譯和除錯 C 和 C++ 程式碼的開發環境。 系統程式設計是基本的構建區塊和底層基礎,任何使用者 APP 都是建立在這個基礎上的,因此本課程涉及呼叫的重要細節,如 :

  • Fork 和其相關家族
  • Pthread 及其使用,以及不同的變數、參數傳遞等。
  • 檔案操作和 IO 未緩衝地處理
  • 檔案操作-使用緩衝呼叫,如 fopen、fwrite、fread、fseek、ftell、rewind
  • 讀寫控制台和檔案。
  • 緩衝 IO 對無緩衝 IO
  • 通訊端( Socket )程式設計
  • 訊號( Semaphore )、互斥鎖( Mutexes )以及如何使程式執行緒安全
  • 如何編寫生產者、消費者應用程式。
  • 目錄和檔案導航
  • 訊號處理
  • 警報訊號
  • 消除程序訊號
  • 系統呼叫如何工作以及如何實現系統呼叫和與核心的介面
  • 有助於更好地處理 C 或 C++ 語言
  • 強調學生以簡潔明瞭的方式編寫 Linux、Unix、Mac OSX、Windows 課程,避免記憶體洩漏和資源洩漏。

目標受眾

  • 希望瞭解作業系統和底層架構細節的系統開發人員或程式設計師
  • 想要詳細瞭解 Posix API 如何工作的程式設計師

講師簡介

Shakil khan 高階軟體工程師

超過15年的軟體開發經驗,專注於 C/C++/Linux/Symbian C++ ,不同風格的 UNIX (SCO,HP-UX,SunOS,AIX 和 RedHat Linux)。 瞭解 LINUX 內部構件 / 系統程式設計 / 程序間通訊和 Shell 指令碼。

在 Symbian OS 運用 TLS/descriptors/ threads/ semaphore/IPC/ Active Objects/ Dynamics Arrays/Cleanup Stack/Client –Server/Binary Compatibility 等

在 Linux 和 LynxOS 平臺上使用 C/C++/ Clearcase/Subversion/GIT 開發大型專案的所有階段都有經驗。

  • 負責 Linux 裝置的驅動程式和系統程式設計。
  • 曾經在 HP bootloader、Board Support Package 和 grub 工作過。
  • 瞭解虛擬檔案系統,ext3,I/O 排程程式。
  • 熟悉 Socket、TCP/IP 和路由協議協議,如 BGP、RIP。
  • 對於移植( porting )和交叉編譯( cross-compilation )和將 FreeBSD-libc 移植到 Symbian 平台很熟悉。
  • 曾做 Linux 裝置驅動程式(並行埠控制面板、USB 大容量儲存驅動程式) ,系統程式設計,ELF32,DWARF,二進位制優化。
  • 曾做過 GNU 工具鏈,如交叉編譯器( Cross-Compiler )、Makefile、 Auto Conf.
  • 曾做過 SPI、UART、I2C、GPIO 匯流排的驅動程式,成為電路板加速的一部分
  • 熟悉多執行緒、訊號( Semaphore )、訊息佇列、共享記憶體和其他 IPC 機制
  • 通過在掃描器、傳真機、硬碟等裝置中實現各種睡眠模式,提升了電路板並增強產品,在功率能量消耗上
  • 瞭解 GNU 工具鏈和交叉編譯
  • 參與程式碼評審、風險管理、設計文件以及實施階段
  • 熟悉物件導向分析和設計
  • 熟悉 Xen / Qemu 和虛擬化
  • 曾做過惡意軟體分析和拆解
  • 熟練掌握 Hypervisor 知識,如 Xen、KVM

英文字幕:有

  • 想要了解如何將英文字幕自動翻譯成中文? 請參考這篇 How-To

報名參加課程

Sponsored by Udemy

也許你會有興趣

 歡迎使用 e-mail 訂閱 Soft & Share 

Spread the love

這個網站採用 Akismet 服務減少垃圾留言。進一步瞭解 Akismet 如何處理網站訪客的留言資料

Powered by WordPress.com.

Up ↑

%d 位部落客按了讚: