天天看點

Linux 學習步驟

學習步驟如下(以類似文章提綱的形式羅列,大家可以參考一下):

­

<b>1、Linux 基礎</b>

安裝Linux作業系統

Linux檔案系統

Linux常用指令

Linux啟動過程詳解

熟悉Linux服務能夠獨立安裝Linux作業系統

能夠熟練使用Linux系統的基本指令

認識Linux系統的常用服務安裝Linux作業系統

Linux基本指令實踐

設定Linux環境變量

定制Linux的服務 Shell 程式設計基礎使用vi編輯檔案

使用Emacs編輯檔案

使用其他編輯器

<b>2、Shell 程式設計基礎</b>

Shell簡介

認識背景程式

Bash程式設計熟悉Linux系統下的編輯環境

熟悉Linux下的各種Shell

熟練進行shell程式設計熟悉vi基本操作

熟悉Emacs的基本操作

比較不同shell的差別

編寫一個測試伺服器是否連通的shell腳本程式

編寫一個檢視程序是否存在的shell腳本程式

編寫一個帶有循環語句的shell腳本程式

<b>3、Linux 下的 C 程式設計基礎</b>

linux C語言環境概述

Gcc使用方法

Gdb調試技術

Autoconf

Automake

Makefile

代碼優化 熟悉Linux系統下的開發環境

熟悉Gcc編譯器

熟悉Makefile規則編寫Hello,World程式

使用 make指令編譯程式

編寫帶有一個循環的程式

調試一個有問題的程式

<b>4、嵌入式系統開發基礎 </b>

嵌入式系統概述

交叉編譯

配置TFTP服務

配置NFS服務

下載下傳Bootloader和核心

嵌入式Linux應用軟體開發流程

熟悉嵌入式系統概念以及開發流程

建立嵌入式系統開發環境制作cross_gcc工具鍊

編譯并下載下傳U-boot

編譯并下載下傳Linux核心

編譯并下載下傳Linux應用程式

嵌入式系統移植

Linux核心代碼

平台相關代碼分析

ARM平台介紹

平台移植的關鍵技術

移植Linux核心到 ARM平台 了解移植的概念

能夠移植Linux核心移植Linux2.6核心到 ARM9開發闆

<b>5、嵌入式 Linux 下序列槽通信 </b>

串行I/O的基本概念

Linux系統的檔案和裝置

與檔案相關的系統調用

配置超級終端和MiniCOM 能夠熟悉進行序列槽通信

熟悉檔案I/O 編寫序列槽通信程式

編寫多序列槽通信程式

<b>6、嵌入式系統中多程序程式設計 </b>

Linux系統程序概述

嵌入式系統的程序特點

程序操作

守護程序

相關的系統調用了解Linux系統中程序的概念

能夠編寫多程序程式編寫多程序程式

編寫一個守護程序程式

sleep系統調用任務管理、同步與通信 Linux任務概述

任務排程

管道

信号

共享記憶體

任務管理 API 了解Linux系統任務管理機制

熟悉程序間通信的幾種方式

熟悉嵌入式Linux中的任務間同步與通信

編寫一個簡單的管道程式實作檔案傳輸

編寫一個使用共享記憶體的程式

<b>7、嵌入式系統中多線程程式設計 </b>

線程的基礎知識

多線程程式設計方法

線程應用中的同步問題了解線程的概念

能夠編寫簡單的多線程程式編寫一個多線程程式

<b>8、嵌入式 Linux 網絡程式設計 </b>

網絡基礎知識

嵌入式Linux中TCP/IP網絡結構

socket 程式設計

常用 API函數

分析Ping指令的實作

基本UDP套接口程式設計

許可證管理

PPP協定

GPRS 了解嵌入式Linux網絡體系結構

能夠進行嵌入式Linux環境下的socket 程式設計

熟悉UDP協定、PPP協定

熟悉GPRS 使用socket 編寫代理伺服器

使用socket 編寫路由器

編寫許可證伺服器

指出TCP和UDP的優缺點

編寫一個web伺服器

編寫一個運作在 ARM平台的網絡播放器

<b>9、GUI 程式開發 </b>

GUI基礎

嵌入式系統GUI類型

編譯QT

進行QT開發熟悉嵌入式系統常用的GUI

能夠進行QT程式設計使用QT編寫“Hello,World”程式

調試一個加入信号/槽的執行個體

通過重載QWidget 類方法處理事件

<b>10、Linux 字元裝置驅動程式 </b>

裝置驅動程式基礎知識

Linux系統的子產品

字元裝置驅動分析

fs_operation結構

加載驅動程式了解裝置驅動程式的概念

了解Linux字元裝置驅動程式結構

能夠編寫字元裝置驅動程式編寫Skull驅動

編寫鍵盤驅動

編寫I/O驅動

分析一個看門狗驅動程式

對比Linux2.6核心與2.4核心中字元裝置驅動的不同

Linux 塊裝置驅動程式塊裝置驅動程式工作原理

典型的塊裝置驅動程式分析

塊裝置的讀寫請求隊列了解Linux塊裝置驅動程式結構

能夠編寫簡單的塊裝置驅動程式比較字元裝置與塊裝置的異同

編寫MMC卡驅動程式

分析一個檔案系統

對比Linux2.6核心與2.4核心中塊裝置驅動的不同

<b>11、檔案系統 </b>

虛拟檔案系統

檔案系統的建立

ramfs記憶體檔案系統

proc檔案系統

devfs 檔案系統

MTD技術簡介

MTD塊裝置初始化

MTD塊裝置的讀寫操作了解Linux系統的檔案系統

了解嵌入式Linux的檔案系統

了解MTD技術

能夠編寫簡單的檔案系統為 ARM9開發闆添加 MTD支援

移植JFFS2檔案系統

通過proc檔案系統修改作業系統參數

分析romfs 檔案系統源代碼

建立一個cramfs 檔案系統

繼續閱讀