请询价
適合對(duì)象:對(duì)Linux培訓(xùn),計(jì)算機(jī)技術(shù)培訓(xùn)等有興趣學(xué)習(xí)的學(xué)員
開設(shè)課程校區(qū):濟(jì)南校區(qū)
第一天
學(xué)習(xí)目標(biāo)全面認(rèn)識(shí)和了解Linux內(nèi)核的框架,掌握學(xué)習(xí)Linux內(nèi)核、分析閱讀Linux內(nèi)核源碼的方法。
第1章.Linux內(nèi)核的基本面
1.1 Linux內(nèi)核成長史
1.2 多變的Linux內(nèi)核版本號(hào)
1.3 獲取Linux內(nèi)核的源代碼
1.4 Linux內(nèi)核與那些發(fā)行版
1.5 Linux內(nèi)核是如何工作的
·“Linux虛擬機(jī)”——系統(tǒng)調(diào)用
·臺(tái)前——文件系統(tǒng)
·幕后——進(jìn)程調(diào)度
·幕后——內(nèi)存管理
·模塊化的Kernel
第2章.Linux內(nèi)核的按需配置與編譯
2.1 按需配置Linux內(nèi)核
·配置方式的多種選擇
·認(rèn)識(shí)常見的配置選項(xiàng)
·重視.config文件
2.2 為Linux內(nèi)核打補(bǔ)丁
2.3 編譯Linux內(nèi)核
·認(rèn)識(shí)一些與編譯有關(guān)的目錄與文件
·構(gòu)建編譯環(huán)境
·備份是重要的
·編譯步驟
·一些實(shí)用的小技巧
2.4 Linux內(nèi)核的文檔及編譯
2.5 【實(shí)驗(yàn)】配置、編譯Linux內(nèi)核
第3章.瀏覽Linux內(nèi)核源碼
3.1 所需的技術(shù)基礎(chǔ)
3.2 Linux內(nèi)核的體系結(jié)構(gòu)
3.3 Linux內(nèi)核源碼樹
3.4 使用vim+cscope+ctags
3.5 Linux內(nèi)核代碼的特點(diǎn)
·gcc擴(kuò)展的使用
·內(nèi)嵌匯編
3.6 Linux內(nèi)核中的鏈表
3.7 代碼樣例
3.8 【實(shí)驗(yàn)】配置vim瀏覽內(nèi)核源碼
第4章.如何分析Linux內(nèi)核源碼
4.1 Linux內(nèi)核學(xué)習(xí)的心理問題
4.2 kernel地圖:Kconfig與Makefile
·看懂Kconfig與Makefile
·利用Kconfig與Makefile定位目標(biāo)代碼
4.3 分析Linux內(nèi)核源碼如何入手
·分析README
·分析Kconfig與Makefile
·態(tài)度決定一切:從初始化函數(shù)開始
4.4 【實(shí)驗(yàn)】定位并分析某個(gè)子系統(tǒng)或模塊在內(nèi)核中的實(shí)現(xiàn)
第二天
學(xué)習(xí)目標(biāo)掌握分析鉆研某個(gè)子系統(tǒng)在內(nèi)核中實(shí)現(xiàn)機(jī)制的方法,了解內(nèi)核中的進(jìn)程管理、內(nèi)存管理、文件系統(tǒng)。
第5章.開始之前——Before we begin
5.1 系統(tǒng)初始化
5.2 Linux內(nèi)核中的時(shí)間
5.3 系統(tǒng)調(diào)用
5.4 中斷與中斷處理
5.5 Linux內(nèi)核中的同步
第6章.開始之前——子系統(tǒng)的初始化
6.1 Linux內(nèi)核選項(xiàng)解析
·Linux內(nèi)核選項(xiàng)
·注冊(cè)Linux內(nèi)核選項(xiàng)
·兩次解析
6.2 那些入口函數(shù)
·ini******init節(jié)
·do_initcalls()函數(shù)
6.3 以PCI子系統(tǒng)為例
6.4 【實(shí)驗(yàn)】分析某個(gè)子系統(tǒng)的初始化過程
第7章.進(jìn)程管理與調(diào)度
7.1 Linux中的進(jìn)程
7.2 進(jìn)程的來源:fork和clone
7.3 所有美好的事物都會(huì)結(jié)束:進(jìn)程退出
7.4 內(nèi)核線程
7.5 進(jìn)程調(diào)度
·O(1)調(diào)度
·CFS調(diào)度
7.6 不確定的Multi-thread
第8章.內(nèi)存管理
8.1 物理地址、邏輯地址與虛擬地址
8.2 分頁
8.3 內(nèi)存在內(nèi)核中的分配
8.4 進(jìn)程的內(nèi)存組織
8.5 內(nèi)存映射mmap
8.6 頁面緩存
第9章.虛擬文件系統(tǒng)VFS
9.1 VFS的體系結(jié)構(gòu)
9.2 理解VFS的那些數(shù)據(jù)結(jié)構(gòu)
9.3 VFS的緩存機(jī)制
9.4 文件系統(tǒng)的注冊(cè)與安裝
9.5 文件系統(tǒng)的日志管理
第三天
學(xué)習(xí)目標(biāo)了解如何參與Linux內(nèi)核的開發(fā)和測試,以及一些常用的調(diào)試手段和工具。
第10章.Intent Receiver
10.1 工具鏈及其生成
10.2 Linux內(nèi)核中的Makefile
10.3 嚴(yán)格遵守Linux內(nèi)核的編碼風(fēng)格
10.4 添加代碼到Linux內(nèi)核
10.5 為什么Linux內(nèi)核沒有穩(wěn)定的API?
10.6 如何提交補(bǔ)丁
10.7 學(xué)會(huì)使用Git
10.8 【實(shí)驗(yàn)】安裝Git并用它來來獲取新的Linux內(nèi)核源碼
第11章.一些上鏡的Linux內(nèi)核調(diào)試手段與工具
11.1 Linux內(nèi)核對(duì)調(diào)試的支持
11.2 二分法與printk
11.3 獲取Linux內(nèi)核信息
11.4 調(diào)試福音之oops
11.5 神奇的SysRq
11.6 調(diào)試?yán)髦瓽DB
11.7 調(diào)試?yán)髦甋ystemtap
11.8 Linux內(nèi)核崩潰轉(zhuǎn)儲(chǔ)
11.9 利用模擬器
11*10 【實(shí)驗(yàn)】分析一個(gè)oops
11*11 【實(shí)驗(yàn)】配置GDB調(diào)試環(huán)境并調(diào)試Linux內(nèi)核
第12章.子系統(tǒng)的初始化
12.1 Linux內(nèi)核測試的4個(gè)階段
12.2 性能分析與調(diào)優(yōu)工具
·CPU性能分析與調(diào)優(yōu)
·Memory性能分析與調(diào)優(yōu)
·IO性能分析與調(diào)優(yōu)
·Network性能分析與調(diào)優(yōu)
12.3 oprofile
12.4 啟動(dòng)速度調(diào)優(yōu)
12.5 【實(shí)驗(yàn)】Linux內(nèi)核性能測試并提交Linux內(nèi)核測試報(bào)告
第四天
學(xué)習(xí)目標(biāo)掌握驅(qū)動(dòng)的開發(fā)方法,掌握Android運(yùn)行所需要的Linux內(nèi)核開發(fā)和技巧。
第13章.驅(qū)動(dòng)開發(fā)的方法
13.1 模塊化的Linux內(nèi)核
13.2 一模塊“Hello World!”
13.3 重中之重:設(shè)備模型
·總線、設(shè)備和驅(qū)動(dòng)
·在USB子系統(tǒng)上的投影
13.4 驅(qū)動(dòng)開發(fā)三件寶:spec、datasheet與Linux內(nèi)核源碼
13.5 sysfs
13.6 【實(shí)驗(yàn)】結(jié)合設(shè)備模型分析一個(gè)Linux內(nèi)核中現(xiàn)有的驅(qū)動(dòng)
13.7 【實(shí)驗(yàn)】編寫一個(gè)簡單的模塊
第14章.Android環(huán)境的相關(guān)介紹
1、配置編譯高版本的Linux內(nèi)核
2、移植Li******14內(nèi)核支持FS4412開發(fā)板
● 添加網(wǎng)卡驅(qū)動(dòng)
● 添加eMMC驅(qū)動(dòng)
● 添加SD卡驅(qū)動(dòng)
● 添加LCD驅(qū)動(dòng)
● 添加USB驅(qū)動(dòng)
3、分析解決移植過程中出現(xiàn)的錯(cuò)誤
第15章.移植Android所需要的Linux內(nèi)核
15.1 Android運(yùn)行所需要對(duì)Linux內(nèi)核作的修改
15.2 Android對(duì)現(xiàn)有驅(qū)動(dòng)所必須做的修改
·鍵盤、鼠標(biāo)驅(qū)動(dòng)和鍵值映射
·顯示驅(qū)動(dòng)
·audio驅(qū)動(dòng)
15.3 編譯和拓展Android的啟動(dòng)分區(qū)bo****mg
15.4 Android的啟動(dòng)過程分析和調(diào)試技術(shù)
15.5 【實(shí)驗(yàn)】生成一個(gè)可供Android啟動(dòng)的Linux內(nèi)核
15.6 【實(shí)驗(yàn)】制作和生成一個(gè)可運(yùn)行的bo****mg
第16章.實(shí)現(xiàn)Android的硬件抽象層
16.1 Android的硬件抽象層的原理和構(gòu)成
16.2 實(shí)現(xiàn)ril,完成Android的移動(dòng)網(wǎng)絡(luò)功能支持
16.3 libhardware_legacy接口
16.4 libhardware接口
16.5 藍(lán)牙支持
16.6 【實(shí)驗(yàn)】將一個(gè)wifi驅(qū)動(dòng)加入Android硬件抽象層
華清遠(yuǎn)見教育集團(tuán),總部位于北京中關(guān)村,創(chuàng)辦于2004年,是一家集產(chǎn)學(xué)研于一體的高端IT職業(yè)教育品牌。19年來,華清遠(yuǎn)見始終堅(jiān)持“技術(shù)創(chuàng)新引領(lǐng)教育發(fā)展”的企業(yè)發(fā)展理念,堅(jiān)持“做良心教育,做專業(yè)教育,做受人尊敬的職業(yè)教育”的核心育人理念。目前,集團(tuán)業(yè)務(wù)包括面授課程、在線課程、智能教儀產(chǎn)品研發(fā)3大方向。其中,面授課程涵蓋高薪就業(yè)、師資培訓(xùn)和企業(yè)內(nèi)訓(xùn)3大課程方向。從線下到線上,從教學(xué)到研發(fā),華清遠(yuǎn)見業(yè)務(wù)全面覆蓋不同客戶群體的需求。并先后在北京、上海、深圳、成都、南京、武漢、西安、廣州、沈陽、重慶、濟(jì)南、長沙成立12個(gè)直營中心。成立19年,改變了27余萬學(xué)子的命運(yùn),幫助他們實(shí)現(xiàn)了夢想,這是華清遠(yuǎn)見企業(yè)價(jià)值的實(shí)現(xiàn),更是我們 每一個(gè)華清人社會(huì)價(jià)值的實(shí)現(xiàn)。
濟(jì)南linux工程師培訓(xùn)課程
济南华清远见濟(jì)南linux學(xué)習(xí)班
济南华清远见濟(jì)南linux培訓(xùn)課程
济南华清远见濟(jì)南想學(xué)linux
济南华清远见濟(jì)南嵌入式提高培訓(xùn)
济南华清远见濟(jì)南python培訓(xùn)開發(fā)
济南华清远见濟(jì)南web前端開發(fā)工程師培訓(xùn)機(jī)構(gòu)
济南华清远见濟(jì)南java訓(xùn)選學(xué)校
济南华清远见濟(jì)南物聯(lián)網(wǎng)工程師課程
济南华清远见濟(jì)南嵌入式開發(fā)者培訓(xùn)
济南华清远见