一、 課程簡介:
本課程從Linux內(nèi)核的進(jìn)程模型和線程模型出發(fā),講解多線程開發(fā)的原理,并結(jié)合實際應(yīng)用需要講解如何結(jié)合實際問題,選擇合理的設(shè)計和實現(xiàn)機制,實現(xiàn)性能和可靠性。
二、培訓(xùn)目標(biāo):
理解進(jìn)程與線程內(nèi)核原理與開發(fā)基礎(chǔ)
Linux進(jìn)程調(diào)度原理
Linux線程的內(nèi)核實現(xiàn)原理
Linux多進(jìn)程應(yīng)用開發(fā)
進(jìn)程間通信
Linux多線程應(yīng)用開發(fā)
掌握多線程開發(fā)的高級技術(shù)和調(diào)試
Linux多線程與信號
可重入函數(shù)、線程安全與異步信號安全
C/C++庫函數(shù)和STL的線程安全
線程的堆棧與棧溢出
多線程編程模型
多線程與I/O
調(diào)試手段與技巧
三、培訓(xùn)內(nèi)容:
進(jìn)程與線程內(nèi)核原理與開發(fā)基礎(chǔ)
Linux進(jìn)程調(diào)度原理 Linux進(jìn)程生命周期
Linux進(jìn)程調(diào)度時機
Linux 進(jìn)程調(diào)度算法
Linux進(jìn)程調(diào)度機制
Linux內(nèi)核線程
Linux線程的內(nèi)核實現(xiàn)原理
Linux線程模型:LinuxThreads和NPTL
內(nèi)核如何用進(jìn)程模擬線程
實時線程創(chuàng)建與搶占
硬實時Linux
深化:從操作系統(tǒng)本質(zhì)看進(jìn)程與線程
Linux多進(jìn)程應(yīng)用開發(fā) 進(jìn)程的屬性和狀態(tài)
進(jìn)程的創(chuàng)建、執(zhí)行、消亡
進(jìn)程相關(guān)系統(tǒng)調(diào)用
守護(hù)進(jìn)程
進(jìn)程間通信進(jìn)程間通信基本概念
管道的實現(xiàn)及應(yīng)用
信號的實現(xiàn)與應(yīng)用
消息隊列的實現(xiàn)與應(yīng)用
共享內(nèi)存的實現(xiàn)與應(yīng)用
信號量
Linux多線程應(yīng)用開發(fā) Linux線程模型
線程創(chuàng)建、等待、退出
線程屬性
實時線程
線程間通信
pthread_once
線程級全局變量:Thread-Specific Data
應(yīng)用與開發(fā)實踐
多線程開發(fā)的高級技術(shù)和調(diào)試
Linux多線程與信號 Linux內(nèi)核信號處理流程
Linux信號的分類
進(jìn)程的信號處理
多線程情況下的信號處理
信號處理函數(shù)的要求
errno與信號
應(yīng)用與開發(fā)實踐
可重入函數(shù)、線程安全與異步信號安全 可重入函數(shù)的概念
可重入函數(shù)與線程安全函數(shù)
可重入與異步信號安全
使函數(shù)可重入的經(jīng)驗
異步信號安全的庫函數(shù)
信號處理器與線程通信
應(yīng)用與開發(fā)實踐
C/C++庫函數(shù)和STL的線程安全 POSIX標(biāo)準(zhǔn)的要求
線程安全的庫函數(shù)
線程不安全的庫函數(shù)
STL容器的線程安全
應(yīng)用與開發(fā)實踐
線程的堆棧與棧溢出
Linux線程堆棧的分配原理
查看和設(shè)置線程的棧空間
線程棧溢出
棧溢出保護(hù)區(qū)
應(yīng)用與開發(fā)實踐
多線程編程模型 典型的單線程編程模型
多線程編程模型
流水線模型
工作組模型
客戶端/服務(wù)器模型
線程池
多線程分解的思路
并行編程的一些研究課題
應(yīng)用與開發(fā)實踐
多線程與I/O
阻塞、非阻塞、異步I/O與多線程
select還是多線程
應(yīng)用與開發(fā)實踐
調(diào)試手段與技巧
gdb調(diào)試多線程的技巧
系統(tǒng)級調(diào)試
線程級調(diào)試
core dump與gcore
內(nèi)存泄露
死鎖的判斷和調(diào)試
常見多線程編程錯誤分析
應(yīng)用與開發(fā)實踐