嵌入式Linux 期末復習指南(上)

鑒于互聯網上針對本科目相關復習視頻及資料過少,

撰寫本篇期末復習指南用作期末復習知識點掃盲,以應對本科期末考試及格之用。

由于任課老師并透露考試范圍或任何有關試卷的相關信息,本篇指南基于教材、上機實驗報告及作者經驗編寫,僅供參考。

鑒于試卷考察形式以簡答及代碼編寫題為主(死記硬背),指南精煉作者認為有用的知識點,非重點則不予總結。

?一、Linux操作系統簡介

? ? ? ? Linux操作系統源于自由軟件運動。

????????Linux操作系統的特點有哪些?

????????答:

????????①開源與自由 ②多用戶多任務 ③良好的用戶界面 ④豐富的網絡功能 ⑤安全穩定

???????⑥良好的可移植性 ⑦設備獨立性 ⑧支持多文件系統

二、Linux操作系統管理常用命令?

命令縮寫:提高編碼效率及代碼簡潔度。

coding又不是寫文章,知道代碼指令什么意思就完了? ;)

1、touch 新建文件

touch [選項] [文件]

2、useradd 創建新用戶

useradd [用戶名]

3、passwd 修改用戶密碼

passwd [用戶名]

4、su 切換用戶

su [用戶名]
常用:su root -> 輸入password:12345 [Enter] -> 切換管理員

5、shutdown 關機

6、cp 復制文件 (copy -> cp

cp [源目錄或文件] [目標目錄或文件]

7、mv 移動文件 (move -> mv

mv [源目錄或文件] [目標目錄或文件]

8、rm 刪除文件 (remove -> rm

rm [將要刪除的目錄或文件]

9、mkdir 新建文件夾 (make directory -> mkdir

mkdir [目錄]

10、cd 切換當前工作目錄

cd [目錄]

11、pwd 獲取當前工作目錄 (print working directory -> pwd

12、ls 列出目錄所有文件(list directory contents -> ls

13、tar 壓縮

14、unzip 解壓縮

15、chmod 修改用戶對文件的權限

#權限rwx二進制
7讀 + 寫 + 執行rwx111
6讀 + 寫rw-110
5讀 + 執行r-x101
4只讀r--100
3寫 + 執行-wx011
2只寫-w-010
1只執行--x001
0---000

16、df 查看磁盤使用情況

17、du 查看目錄大小

18、ifconfig 查看網絡配置

19、netstat 查看網絡狀態

20、grep 查找字符串

21、rpm 軟件安裝

22、mount 安裝/掛載設備

23、umount 卸載設備

24、find 查找文件

25、top 查看CPU占用/使用情況

26、ps 查看進程占用/使用情況

27、kill 殺死進程

28、man 查詢Linux指令使用方式

什么是輸入/輸出重定向?舉例說明。

答:用于改變命令的輸入/輸出來源或目標。

??????

# 將文件file1的內容作為命令的輸入

command?< file1

????????

# 將命令的輸出寫入到file2中(覆蓋原有內容)

command?> file2

?

# 將命令的輸出追加到file2中(保留原有內容)

command?>> file2

什么是管道?舉例說明。

答:將一個命令的輸出作為另一個命令的輸入。

使用 "command1 | command2"

合并兩個文件?

答:$ cat file1 file2?>> combined_file?

Linux操作系統進程間通訊方式?

答:①管道 ②消息隊列 ③共享內存 ④信號量 ⑤信號 ⑥Socket

三、Shell編程

掌握Shell簡單邏輯代碼的編寫。

通過實例搞懂基本代碼編寫,考試不會超出這些例子范圍(如果考了)。

?

1、Shell編程,利用兩層循環打印乘法表(?for循環?

#!/bin/bash# 外層循環控制行數(1到9)
for i in {1..9}; do# 內層循環控制每行的列數(1到當前行數i)for ((j=1; j<=i; j++)); do# 計算乘積并格式化輸出printf "%d*%d=%-2d " $j $i $((j*i))done# 每行結束后換行echo
done

2、Shell編程,接收用戶輸入,判斷是否為純數字(?Input / 正則表達式匹配字符串?

#!/bin/bash# 提示用戶輸入
read -p "請輸入一個數字: " input# 判斷是否為數字
if [[ "$input" =~ ^[0-9]+$ ]]; thenecho "您輸入的是數字: $input"
elseecho "錯誤: '$input' 不是有效的數字"
fi

3、Shell編程,根據用戶輸入的成績判斷及格情況(?if判斷 / break和continue的使用?

#!/bin/bashecho "學生成績評定系統(輸入Q退出)"while true; doread -p "請輸入學生成績(0-100): " score# 檢查是否輸入Q退出if [[ "$score" =~ ^[Qq]$ ]]; thenecho "退出成績評定系統"breakfi# 檢查輸入是否為數字if ! [[ "$score" =~ ^[0-9]+$ ]]; thenecho "錯誤:請輸入有效的數字成績!"continuefi# 檢查成績范圍是否合法if (( score < 0 || score > 100 )); thenecho "錯誤:成績必須在0-100之間!"continuefi# 判斷及格情況if (( score >= 60 )); thenecho "成績 $score: 及格"elseecho "成績 $score: 不及格"fi
done

break和continue的區別:

break?- 立即終止整個循環?

continue?- 跳過當前迭代,進入下一次循環?

?四、Linux常用開發工具

VI文本編輯器、GCC編譯器和GDB調試工具。

看書了解即可。

五、文件系統與操作

1、Linux文件系統目錄

(1)根目錄(/)

(2)/bin:存放Linux命令及二進制可執行文件

(3)/boot:存放內核文件和引導裝載程序文件

(4)/dev:設備文件目錄(磁盤、光驅、網卡等設備)

(5)/etc:存放系統配置文件

(6)/home:系統默認用戶宿主目錄

(7)/lib、/usr/lib、/usr/local/lib:存放系統使用的函數庫的目錄

(8)/lost+fount:系統崩潰或者意外關機產生的文件

(9)/mnt:用于臨時掛載文件系統

(10)/opt:額外安裝軟件存放目錄

(11)/proc:內存數據

(12)/root:系統管理員目錄

(13)/sbin:存放系統管理員使用的可執行命令

(14)/srv:存放服務需要訪問的數據

(15)/tmp:存放臨時文件

(16)/usr:應用程序存放目錄。其中/bin存放應用程序,/share存放共享數據,/lib存放函數庫文件,/local存放用戶安裝軟件目錄,/share/doc存放系統說明文件

(17)/var:存放系統運行過程中易變化的文件。

2、文件權限

? ? ? ? 每一文件或目錄的訪問權限分三組,每組用三位表示:

????????①文件屬主 ②與屬主同組用戶 ③其他用戶?

? ? ? ? -rwxr--r-- 拆分來看 第一位的“-”表示文件類型 之后的每三位對應每一類用戶的三類權限情況

? ? ? ? r:read——讀 w:write——寫 x:excute——執行

? ? ? ?使用chmod命令更改文件或目錄權限,詳見前文。

解釋inode節點在文件系統中的作用

答:存儲了文件的??元數據??(metadata)和??物理存儲位置。無需遍歷目錄樹即可快速定位。

?

與文件名的關系:

文件名 ≠ 文件本身??:
文件名存儲在??目錄項(dentry)??中,目錄本質是“文件名到inode號”的映射表。

什么是符號鏈接?什么是硬鏈接?區別?

答:

??特性????符號鏈接????硬鏈接??
??本質??存儲目標路徑的獨立文件與目標文件共享inode的文件別名
??跨文件系統??支持不支持
??鏈接目錄??支持不支持
??目標文件刪除后??鏈接失效(懸空)仍可訪問數據
??inode號??與目標文件不同與目標文件相同
??文件大小??等于路徑字符串的長度與目標文件相同
??權限??始終為lrwxrwxrwx(無實際意義)與目標文件一致
符號鏈接理解為:快捷方式,刪除目標文件后,鏈接失效。
硬鏈接理解為:文件索引,刪除目標文件后,索引存在,文件正常訪問。
linux操作系統有幾種類型文件?它們分別是什么?相同和不同點?
答:七種
??類型標識????描述????ls -l顯示????示例??
-普通文件(Regular File)-rw-r--r--文本、二進制、壓縮包等
d目錄文件(Directory)drwxr-xr-x/home,?/etc
l符號鏈接(Symbolic Link)lrwxrwxrwx軟鏈接(如/usr/bin/python
c字符設備文件(Character Device)crw--w----終端(/dev/tty)、鍵盤
b塊設備文件(Block Device)brw-rw----磁盤(/dev/sda)、USB設備
p管道文件(Named Pipe)prw-------進程間通信(FIFO)
s套接字文件(Socket)srwxrwxrwx網絡通信(/var/run/docker.sock)
相同點:
  1. 均通過inode管理,具有權限、所有者等元數據。
  2. 使用統一的文件操作接口(如open()read())。
  3. 文件名均存儲在目錄中,與inode關聯。
不同點:
??特性??普通文件目錄符號鏈接設備文件管道套接字
??存儲數據??僅路徑臨時
??可讀寫內容??重定向
??跨文件系統??
??工具創建??touchmkdirln -smknodmkfifo應用自動

下文跳轉:嵌入式Linux期末復習指南(下)

?

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/pingmian/83350.shtml
繁體地址,請注明出處:http://hk.pswp.cn/pingmian/83350.shtml
英文地址,請注明出處:http://en.pswp.cn/pingmian/83350.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

VScode ios 模擬器安裝cocoapods

使用 Homebrew 安裝&#xff08;推薦&#xff09; 如果你有 Homebrew&#xff0c;直接用它安裝更穩定&#xff1a; brew install cocoapods

Python趣學篇:用Pygame打造絢爛流星雨動畫

名人說&#xff1a;路漫漫其修遠兮&#xff0c;吾將上下而求索。—— 屈原《離騷》 創作者&#xff1a;Code_流蘇(CSDN)&#xff08;一個喜歡古詩詞和編程的Coder&#x1f60a;&#xff09; 專欄介紹&#xff1a;《Python星球日記》 目錄 一、項目簡介與效果展示二、技術棧與核…

可視化大屏通用模板Axure原型設計案例

本文將介紹一款基于Axure設計的可視化大屏通用模板&#xff0c;適用于城市、網絡安全、園區、交通、社區、工業、醫療、能源等多個領域。 模板概述 這款Axure可視化大屏通用模板集成了多種數據展示模塊和組件&#xff0c;旨在為用戶提供一個靈活、可定制的數據展示平臺。無論…

20250530-C#知識:萬物之父Object

C#知識&#xff1a;萬物之父Object Object類&#xff08;即object&#xff09;是所有類的基類&#xff0c;這里面的方法還是需要好好了解一下。 1、Object類 是頂級父類&#xff0c;其他類默認都是Object類的子類&#xff08;自定義類也會默認繼承Object類&#xff09;可以用O…

蘋果應用開發詳細教程(2025最新版)

蘋果應用開發詳細教程(2025最新版) 第一階段:開發環境搭建 硬件準備 Mac電腦(macOS Monterey 12或更高版本)iPhone/iPad(真機調試建議iOS 16+)軟件安裝 # 通過App Store安裝Xcode xcode-select --installXcode 15+(包含Swift 5.9編譯器)安裝CocoaPods(依賴管理工具)…

flutter項目遷移空安全

重中之重 備份好項目文件&#xff0c;甚至連已經加載好的flutter庫也可以備份。環境包升級 2.1 不要直接換成flutter:3.0以上的版本&#xff0c;這樣做既有基本的庫兼容問題&#xff0c;又有空安全下的語法問題(整個項目中需要增加 late、?、!的語法錯誤&#xff0c;一片報錯的…

架構師面試題整理

以下是從提供的HTML代碼中提取的所有class"title-txt"的文本內容&#xff0c;已排除重復項并按順序整理&#xff1a; 緩存專題 實戰解決大規模緩存擊穿導致線上數據庫壓力暴增面試常問的緩存穿透是怎么回事基于DCL機制解決突發性熱點緩存并發重建問題實戰Redis分布…

pytest 中 fixture 與類繼承交互導致的問題

文章目錄 問題分析將屬性綁定到 **類** 上使用 scopefunction 解決方法為什么有兩個不同的對象核心原因&#xff1a;fixture 的執行上下文scopefunction 的情況scopeclass 的情況 為什么 pytest 要這樣做&#xff1f;這是 pytest 的設計局限 總結 本文探討 Pytest 中 fixture 作…

uniapp+ts模擬popup彈出框(下拉框)

效果圖&#xff08;未展開的樣子&#xff09;&#xff1a; 效果圖&#xff08;展開的樣子&#xff09;&#xff1a; 子組件代碼&#xff1a; <!--* Date: 2024-04-26 14:30:00* LastEditTime: 2025-05-29 09:01:06* Description: 技術服務 --> <template><view …

中小型企業大數據平臺全棧搭建:Hive+HDFS+YARN+Hue+ZooKeeper+MySQL+Sqoop+Azkaban 保姆級配置指南

目錄 背景?一、環境規劃與依賴準備?1. 服務器規劃(3節點集群)2. 系統與依賴?3. Hadoop生態組件版本與下載路徑4. 架構圖二、Hadoop(HDFS+YARN)安裝與配置?1. 下載與解壓(所有節點)2. HDFS高可用配置3. YARN資源配置?4. 啟動Hadoop集群三、MySQL安裝與Hive元數據配置…

谷粒商城-分布式微服務項目-高級篇[三]

十五、商城業務-支付 15.1 支付寶支付 15.1.1 進入“螞蟻金服開放平臺” 支付寶開放 平臺地址&#xff1a; 支付寶開放平臺 15.1.2 下載支付寶官方 demo&#xff0c;進行配置和測試 開發者文檔&#xff1a;支付寶開放平臺文檔中心 電腦網站支付文檔&#xff1a;小程序文…

DeepSeek 賦能低空經濟:無人機智能調度的破局之道

目錄 一、引言二、DeepSeek 技術探秘2.1 DeepSeek 技術核心要點2.2 與傳統技術對比優勢 三、低空經濟無人機調度挑戰剖析3.1 飛行控制困境3.2 數據處理難題3.3 系統集成阻礙 四、DeepSeek 應用方案與成果4.1 智能調度與路徑規劃4.2 自主飛行與協同控制4.3 通信與數據鏈優化4.4 …

【Kubernetes】ubuntu20.04通過kubeadm + Docker安裝k8s

Kubernetes v1.24集群安裝配置步驟總結 一、環境準備 &#xff08;一&#xff09;系統要求 運行兼容deb/rpm的Linux操作系統&#xff08;如Ubuntu或CentOS&#xff09;的計算機&#xff0c;1臺或多臺。每臺機器內存2GB以上&#xff0c;內存不足會限制應用運行。控制平面節點…

計算機視覺NeRF

NeRF與3DGS學習 NeRF計算機視覺的問題NeRF定義神經輻射場場景表示基于輻射場的體渲染分層采樣優化神經輻射場 基礎知識初始化SFM基礎矩陣 & 本質矩陣 & 單應矩陣從已經估得的本質矩陣E&#xff0c;恢復出相機的運動R,tSVD 分解 NeRF NeRF資源 計算機視覺的問題 計算…

工業手持PDA終端,有哪些作用?

工業手持PDA終端&#xff08;便攜式數據采集終端&#xff09;&#xff0c;是專為工業場景設計的智能化工具&#xff0c;擁有強大的數據采集和處理能力。通過內置的條碼掃描功能&#xff0c;PDA能夠快速準確地獲取信息&#xff0c;避免了人工錄入可能出現的錯誤&#xff0c;大大…

Spark-TTS: AI語音合成的“變聲大師“

嘿&#xff0c;各位AI愛好者&#xff01;還記得那些機器人般毫無感情的合成語音嗎&#xff1f;或者那些只能完全模仿但無法創造的語音克隆&#xff1f;今天我要介紹的Spark-TTS模型&#xff0c;可能會讓這些問題成為歷史。想象一下&#xff0c;你可以讓AI不僅說出任何文字&…

C++鏈式調用與Builder模式

在C++中實現鏈式調用(如 a.b().c().d())的關鍵是讓每個成員函數返回對象的引用(通常是 *this),從而允許連續調用其他成員函數。這種模式常見于方法鏈(Method Chaining)或流式接口(Fluent Interface)。下面是實現鏈式調用的具體方法和示例: 實現原理 返回對象引用:每…

SQL的查詢優化

1. 查詢優化器 1.1. SQL語句執行需要經歷的環節 解析階段&#xff1a;語法分析和語義檢查&#xff0c;確保語句正確&#xff1b;優化階段&#xff1a;通過優化器生成查詢計劃&#xff1b;執行階段&#xff1a;由執行器根據查詢計劃實際執行操作。 1.2. 查詢優化器 查詢優化器…

結構型設計模式之橋接模式

文章目錄 1. 橋接模式概述2. 模式結構3. 橋接模式的優缺點優點缺點 4. 橋接模式的應用場景5. C#代碼示例5.1 簡單示例 - 形狀與顏色5.2 更復雜的示例 - 跨平臺消息發送系統 6. 橋接模式與其他模式的比較7. 真實世界中的橋接模式應用7.1 數據庫驅動7.2 UI框架中的渲染機制 8. 橋…

SolidWorks建模(U盤)- 多實體建模拆圖案例

這個U盤模型并不是一個多裝配體&#xff0c;它是一個多實體零件&#xff0c;它是在零件模式下創建的這些多實體的零部件。按右鍵解除爆炸就可以裝配到一起&#xff0c;再按右鍵爆炸&#xff0c;就能按照之前移動的位置進行炸開 爆炸視圖直接展示 模型案例和素材或取&#xff08…