Linux内核开发-入门篇
歡迎關注公眾號【自動駕駛事務所】,分享更多以C/C++為計算機語言,以自動駕駛為方向的文章
歡迎關注公眾號【自動駕駛事務所】,分享更多以C/C++為計算機語言,以自動駕駛為方向的文章
如何入門 Linux 內核
首先,讓我們看看如何獲取、構建并運行 Linux 內核。你可以通過兩種方式來運行你自己定制的內核:
在虛擬機里運行 Linux 內核; 在真實的硬件上運行 Linux 內核。我會對這兩種方式都展開描述。在我們開始對 Linux 內核做些什么之前,我們首先需要先獲取它。根據你目的的不同,有兩種方式可以做到這一點。如果你只是想更新一下你電腦上的 Linux 內核版本,那么你可以使用特定于你 Linux 發行版的命令。
快捷鍵
- 加粗 Ctrl + B
- 斜體 Ctrl + I
- 引用 Ctrl + Q
- 插入鏈接 Ctrl + L
- 插入代碼 Ctrl + K
- 插入圖片 Ctrl + G
- 提升標題 Ctrl + H
- 有序列表 Ctrl + O
- 無序列表 Ctrl + U
- 橫線 Ctrl + R
- 撤銷 Ctrl + Z
- 重做 Ctrl + Y
Markdown及擴展
Markdown 是一種輕量級標記語言,它允許人們使用易讀易寫的純文本格式編寫文檔,然后轉換成格式豐富的HTML頁面。 —— [ 維基百科 ]
使用簡單的符號標識不同的標題,將某些文字標記為粗體或者斜體,創建一個鏈接等,詳細語法參考幫助?。
本編輯器支持 Markdown Extra , 擴展了很多好用的功能。具體請參考Github.
表格
Markdown Extra 表格語法:
| Computer | $1600 |
| Phone | $12 |
| Pipe | $1 |
可以使用冒號來定義對齊方式:
| Computer | 1600 元 | 5 |
| Phone | 12 元 | 12 |
| Pipe | 1 元 | 234 |
###定義列表
Markdown Extra 定義列表語法:
項目1
項目2
: 定義 A
: 定義 B
定義 C
定義 D
定義D內容
代碼塊
代碼塊語法遵循標準markdown代碼,例如:
@requires_authorization def somefunc(param1='', param2=0):'''A docstring'''if param1 > param2: # interestingprint 'Greater'return (param2 - param1 + 1) or None class SomeClass:pass >>> message = '''interpreter ... prompt'''###腳注
生成一個腳注1.
目錄
用 [TOC]來生成目錄:
文章目錄
- 我會對這兩種方式都展開描述。在我們開始對 Linux 內核做些什么之前,我們首先需要先獲取它。根據你目的的不同,有兩種方式可以做到這一點。如果你只是想更新一下你電腦上的 Linux 內核版本,那么你可以使用特定于你 Linux 發行版的命令。
- 快捷鍵
- Markdown及擴展
- 表格
- 代碼塊
- 目錄
- 數學公式
- UML 圖:
- 離線寫博客
數學公式
使用MathJax渲染LaTex 數學公式,詳見math.stackexchange.com.
- 行內公式,數學公式為:Γ(n)=(n?1)!?n∈N\Gamma(n) = (n-1)!\quad\forall n\in\mathbb NΓ(n)=(n?1)!?n∈N。
- 塊級公式:
x=?b±b2?4ac2ax = \dfrac{-b \pm \sqrt{b^2 - 4ac}}{2a} x=2a?b±b2?4ac??
更多LaTex語法請參考 這兒.
UML 圖:
可以渲染序列圖:
#mermaid-svg-441fTx7k6Dv3X2AY {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-441fTx7k6Dv3X2AY .error-icon{fill:#552222;}#mermaid-svg-441fTx7k6Dv3X2AY .error-text{fill:#552222;stroke:#552222;}#mermaid-svg-441fTx7k6Dv3X2AY .edge-thickness-normal{stroke-width:2px;}#mermaid-svg-441fTx7k6Dv3X2AY .edge-thickness-thick{stroke-width:3.5px;}#mermaid-svg-441fTx7k6Dv3X2AY .edge-pattern-solid{stroke-dasharray:0;}#mermaid-svg-441fTx7k6Dv3X2AY .edge-pattern-dashed{stroke-dasharray:3;}#mermaid-svg-441fTx7k6Dv3X2AY .edge-pattern-dotted{stroke-dasharray:2;}#mermaid-svg-441fTx7k6Dv3X2AY .marker{fill:#333333;stroke:#333333;}#mermaid-svg-441fTx7k6Dv3X2AY .marker.cross{stroke:#333333;}#mermaid-svg-441fTx7k6Dv3X2AY svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#mermaid-svg-441fTx7k6Dv3X2AY .actor{stroke:hsl(259.6261682243, 59.7765363128%, 87.9019607843%);fill:#ECECFF;}#mermaid-svg-441fTx7k6Dv3X2AY text.actor>tspan{fill:black;stroke:none;}#mermaid-svg-441fTx7k6Dv3X2AY .actor-line{stroke:grey;}#mermaid-svg-441fTx7k6Dv3X2AY .messageLine0{stroke-width:1.5;stroke-dasharray:none;stroke:#333;}#mermaid-svg-441fTx7k6Dv3X2AY .messageLine1{stroke-width:1.5;stroke-dasharray:2,2;stroke:#333;}#mermaid-svg-441fTx7k6Dv3X2AY #arrowhead path{fill:#333;stroke:#333;}#mermaid-svg-441fTx7k6Dv3X2AY .sequenceNumber{fill:white;}#mermaid-svg-441fTx7k6Dv3X2AY #sequencenumber{fill:#333;}#mermaid-svg-441fTx7k6Dv3X2AY #crosshead path{fill:#333;stroke:#333;}#mermaid-svg-441fTx7k6Dv3X2AY .messageText{fill:#333;stroke:#333;}#mermaid-svg-441fTx7k6Dv3X2AY .labelBox{stroke:hsl(259.6261682243, 59.7765363128%, 87.9019607843%);fill:#ECECFF;}#mermaid-svg-441fTx7k6Dv3X2AY .labelText,#mermaid-svg-441fTx7k6Dv3X2AY .labelText>tspan{fill:black;stroke:none;}#mermaid-svg-441fTx7k6Dv3X2AY .loopText,#mermaid-svg-441fTx7k6Dv3X2AY .loopText>tspan{fill:black;stroke:none;}#mermaid-svg-441fTx7k6Dv3X2AY .loopLine{stroke-width:2px;stroke-dasharray:2,2;stroke:hsl(259.6261682243, 59.7765363128%, 87.9019607843%);fill:hsl(259.6261682243, 59.7765363128%, 87.9019607843%);}#mermaid-svg-441fTx7k6Dv3X2AY .note{stroke:#aaaa33;fill:#fff5ad;}#mermaid-svg-441fTx7k6Dv3X2AY .noteText,#mermaid-svg-441fTx7k6Dv3X2AY .noteText>tspan{fill:black;stroke:none;}#mermaid-svg-441fTx7k6Dv3X2AY .activation0{fill:#f4f4f4;stroke:#666;}#mermaid-svg-441fTx7k6Dv3X2AY .activation1{fill:#f4f4f4;stroke:#666;}#mermaid-svg-441fTx7k6Dv3X2AY .activation2{fill:#f4f4f4;stroke:#666;}#mermaid-svg-441fTx7k6Dv3X2AY .actorPopupMenu{position:absolute;}#mermaid-svg-441fTx7k6Dv3X2AY .actorPopupMenuPanel{position:absolute;fill:#ECECFF;box-shadow:0px 8px 16px 0px rgba(0,0,0,0.2);filter:drop-shadow(3px 5px 2px rgb(0 0 0 / 0.4));}#mermaid-svg-441fTx7k6Dv3X2AY .actor-man line{stroke:hsl(259.6261682243, 59.7765363128%, 87.9019607843%);fill:#ECECFF;}#mermaid-svg-441fTx7k6Dv3X2AY .actor-man circle,#mermaid-svg-441fTx7k6Dv3X2AY line{stroke:hsl(259.6261682243, 59.7765363128%, 87.9019607843%);fill:#ECECFF;stroke-width:2px;}#mermaid-svg-441fTx7k6Dv3X2AY :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;}張三李四嘿,小四兒, 寫博客了沒?李四愣了一下,說:忙得吐血,哪有時間寫。張三李四或者流程圖:
Created with Rapha?l 2.3.0開始我的操作確認?結束yesno- 關于 序列圖 語法,參考 這兒,
- 關于 流程圖 語法,參考 這兒.
離線寫博客
即使用戶在沒有網絡的情況下,也可以通過本編輯器離線寫博客(直接在曾經使用過的瀏覽器中輸入write.blog.csdn.net/mdeditor即可。Markdown編輯器使用瀏覽器離線存儲將內容保存在本地。
用戶寫博客的過程中,內容實時保存在瀏覽器緩存中,在用戶關閉瀏覽器或者其它異常情況下,內容不會丟失。用戶再次打開瀏覽器時,會顯示上次用戶正在編輯的沒有發表的內容。
博客發表后,本地緩存將被刪除。
用戶可以選擇 把正在寫的博客保存到服務器草稿箱,即使換瀏覽器或者清除緩存,內容也不會丟失。
**注意:**雖然瀏覽器存儲大部分時候都比較可靠,但為了您的數據安全,在聯網后,請務必及時發表或者保存到服務器草稿箱。
##瀏覽器兼容
這里是 腳注 的 內容. ??
總結
以上是生活随笔為你收集整理的Linux内核开发-入门篇的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Ubuntu 18.04换国内源
- 下一篇: 结构体内存拷贝的两种方法