樹莓派 Linux 操作系統移植

方元、沈克勤

  • 樹莓派 Linux 操作系統移植-preview-1
  • 樹莓派 Linux 操作系統移植-preview-2
  • 樹莓派 Linux 操作系統移植-preview-3
樹莓派 Linux 操作系統移植-preview-1

買這商品的人也買了...

商品描述

本書介紹Linux 內核的編譯和移植、根文件系統的製作、基礎系統、桌面系統, 以及這些軟件在系統中的 作用、軟件之間的依賴關系、各種軟件的移植方法。由於很多樹莓派應用是由Python 語言開發的, 本書也 專門介紹樹莓派上硬件接口的Python 控制模塊和其他一些基礎應用。全書共分6 章,第1 章介紹Linux 內核的 移植及根文件系統的製作;在第1 章的基礎上, 第2 章移植了一些基礎軟件, 增強了樹莓派的聯網功能;第3 章 介紹Linux 的基礎圖形庫、文本佈局軟件、X Window 系統, 直至構成一個完整的XFCE4 桌面環境;第4 章介 紹一些應用軟件的移植, 包括遠程桌面、音視頻編碼與解碼及媒體播放、文檔閱讀, 以及網絡監控軟件;第 5 章 介紹典型的Linux 開發工具的移植, 移植了編譯器的樹莓派系統初步具備板載開發能力;鑒於樹莓派被廣泛用於 電子設計製作, 第6 章專門討論樹莓派GPIO 接口的功能, 介紹一款典型的GPIO Python 模塊的使用, 並介紹 各種應用模塊的工作原理和程序控制方法。 本書能對樹莓派愛好者深入學習提供一定的幫助, 對於其他嵌入式開發人員, 書中介紹的大多數內容也有 同樣的參考意義。此外, 本書也可作為高等學校電子信息專業在學習嵌入式Linux 操作系統時的教學參考書。

目錄大綱

目錄

 

第1章 內核與根文件系統 .......................................................................................1 

1.1樹莓派簡介.................................................................................................. 1 

1.1.1 核心處理器 ....................................................................................... 3 

1.1.2 樹莓派操作系統 ................................................................................ 4 

1.1.3 樹莓派接口 ....................................................................................... 4 

1.2開發工具 ..................................................................................................... 4 

1.2.1 編譯工具 .......................................................................................... 5 

1.2.2 調試接口 .......................................................................................... 6 

1.3樹莓派的外存儲器........................................................................................ 8 

1.3.1  SD卡分區 ........................................................................................ 8  Bootloader........................................................................................ 9

1.3.2 

1.4 Linux內核 .................................................................................................10 

1.4.1 獲取內核源碼...................................................................................11 

1.4.2 配置和編譯內核 ...............................................................................11 

1.5根文件系統.................................................................................................15 

1.5.1 編譯 BusyBox..................................................................................15 

1.5.2 初始化 RAMDisk .............................................................................18 

1.5.3 構造 Ext4分區 ................................................................................27 

1.5.4 配置文件 .........................................................................................31 

1.5.5 網絡文件系統...................................................................................40 

1.6本章小結 ....................................................................................................40

第 2章基礎系統................................................................................................... 42 

2.1軟件編譯 ....................................................................................................42 

2.1.1 軟件的依賴關系 ...............................................................................42 

 

2.

1.2 基礎系統軟件...................................................................................43 

 

2.

1.3 軟件編譯方法...................................................................................44 

 

 

2.2包管理器 

....................................................................................................49 

 

2.2.1 數據壓縮 

.........................................................................................49 

 

2.2.2 編譯 

dpkg........................................................................................56 

 

2.

2.3 安裝包格式 ......................................................................................57 

 

 

 

2.3安裝軟件包

.................................................................................................60 

 

2.4其他軟件編譯 

.............................................................................................61 

 

2.4.1 

Vim編輯器 .....................................................................................61 

 

2.4.2 時區數據 

.........................................................................................66 

 

2.

4.3 文件系統工具...................................................................................67  bash................................................................................................67

 

 

2.4.5  systemd...........................................................................................68 

 

2.5網絡工具 

....................................................................................................71 

 

2.

5.1 編譯網絡工具...................................................................................71 

 

2.5.2 遠程連接 

.........................................................................................78 

 

2.

5.3 無線網絡連接...................................................................................78 

 

2.5.4 安裝 

dropbear..................................................................................81 

 

 

 

2.6本章小結 

....................................................................................................84

 

 

2.4.4 

第 3章桌面系統................................................................................................... 86 

3.1 

X Window系統..........................................................................................86 

 

3.2基礎圖形庫

.................................................................................................91 

 

3.2.1  libpng..............................................................................................92 

3.2.2  libjpeg.............................................................................................95  JasPer .............................................................................................96

3.2.3 TIFF...............................................................................................97

3.2.4 

3.2.5  librsvg...........................................................................................104 

 

3.

3 文字顯示及渲染 ........................................................................................105  Glib ..............................................................................................107

 

3.3.1 

3.3.2  FreeType .......................................................................................111  HarfBuzz .......................................................................................116

3.3.3 FriBidi...........................................................................................117

3.3.4 

3.3.5  Fontconfig......................................................................................118 

3.3.6  Pango............................................................................................119 

 

3.4 圖形工具庫 

GTK......................................................................................120  GDK-PixBuf..................................................................................122

 

3.4.1 ATK..............................................................................................122

3.4.2 Cairo.............................................................................................123

3.4.3 mesa .............................................................................................126

3.4.5  GTK及其應用程序 ........................................................................128 

 

3.5 

XFCE4桌面環境 ......................................................................................131 

 

3.

5.1 窗口管理器 xfwm4 .........................................................................132 

 

3.

5.2 會話管理器 xfce4-session.................................................................133 

 

3.

5.3 桌面設置管理器 xfce4-settings.........................................................133 

 

3.

5.4 桌面管理器 xfdesktop.....................................................................134 

 

3.

5.5 文件管理器 Thunar ........................................................................135 

 

3.

5.6 終端模擬器 ....................................................................................136 

 

 

 

3.6 

X服務 .....................................................................................................136 

 

3.6.1 編譯 

xorg-server.............................................................................138 

 

3.6.2 

X系統其他支持 .............................................................................139 

 

3.6.3 啟動 

XFCE4 ..................................................................................139 

 

 

 

3.7本章小結 

..................................................................................................141

 

 

 

3.4.4 

第 4章 Linux應用軟件 ...................................................................................... 142 

4.1遠程桌面 

..................................................................................................142 

 

4.1.1 移植 

VNC......................................................................................142 

 

4.1.2 中文化

...........................................................................................144 

 

 

 

4.2媒體播放器

...............................................................................................147 

 

4.

2.1 音、視頻編碼與解碼.......................................................................147 

 

4.

2.2 音頻子系統 ....................................................................................149 

 

4.2.3 播放器 

mpv ...................................................................................154 

 

 

 

4.3文檔閱讀工具 

...........................................................................................155 

 

4.3.1  Poppler .........................................................................................155  libsecret.........................................................................................156

4.3.2 libXML2........................................................................................157

4.3.3 

4.3.4 gspell ............................................................................................158 

 

4.4網絡視頻監控 

...........................................................................................158 

 

4.5本章小結 

..................................................................................................161

 

 

 

第 5章板載開發環境 .......................................................................................... 162 

5.1編譯器 

.....................................................................................................162 

 

5.2版本控制系統 

GIT....................................................................................165 

 

5.3 

Python簡介.............................................................................................166 

 

5.3.1 

Python發展史 ...............................................................................166 

 

5.3.2 

Python編程理念............................................................................167 

 

5.3.3 

Python的應用 ...............................................................................167 

 

 

 

5.4 

Python的移植 .........................................................................................167 

 

5.4.1數據庫軟件 SQLite.........................................................................169 

5.4.2 Tcl/Tk ..........................................................................................170 

5.4.3編譯 

Python ..................................................................................171 

 

5.4.4安裝 

pip ........................................................................................172 

 

 

 

5.5 

Python基本使用 ......................................................................................173 

 

5.5.1 

Python編程工具............................................................................173 

 

5.5.2運行 

Python程序 ..........................................................................174 

 

5.5.3交互方式 

.......................................................................................175 

 

 

 

5.6本章小結 

..................................................................................................176

 

 

第 6章樹莓派接口控制....................................................................................... 177 

6.

1 樹莓派設備擴展 ........................................................................................177  GPIO............................................................................................177

 

6.1.1 PWM............................................................................................179

6.1.2 

6.1.3擴展接口資源配置 ..........................................................................180 

 

6.2樹莓派 

GPIO模塊....................................................................................181 

 

6.2.1安裝模塊 

.......................................................................................181 

 

6.2.2使用 

GPIO模塊 ............................................................................182 

 

 

 

6.3 

GPIO控制輸出設備 .................................................................................184 

 

6.4 

GPIO輸入功能 ........................................................................................185 

 

6.

4.1基本輸入功能.................................................................................185 

 

6.4.2 

GPIO高級輸入功能 .......................................................................186 

 

 

 

6.5 

PWM模塊...............................................................................................188 

 

6.

6傳感器和控制器 ........................................................................................190 

 

6.6.1蜂鳴器

...........................................................................................190 

 

6.6.2傳感器

...........................................................................................191 

 

6.

6.3紅外遙控器 ....................................................................................191 

 

6.

6.4直流電動機 ....................................................................................196 

 

6.

6.5伺服電動機 ....................................................................................197 

 

6.

6.6步進電動機 ....................................................................................198 

 

6.

6.7超聲波測距 ....................................................................................203 

 

6.6.8控制 

SPI設備 ................................................................................204 

 

6.6.9 

I2C應用........................................................................................207 

 

 

 

6.7本章小結 

..................................................................................................212

 

 

 

參考文獻 ............................................................................................................... 214

擴展資源 ............................................................................................................... 216

索引 ...................................................................................................................... 217