女人自慰AV免费观看内涵网,日韩国产剧情在线观看网址,神马电影网特片网,最新一级电影欧美,在线观看亚洲欧美日韩,黄色视频在线播放免费观看,ABO涨奶期羡澄,第一导航fulione,美女主播操b

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線(xiàn)課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

如何高效的閱讀Linux源碼

Wildesbeast ? 來(lái)源:今日頭條 ? 作者:TopSemic ? 2020-02-22 14:43 ? 次閱讀

1.引言

如何閱讀代碼還要單獨(dú)寫(xiě)一篇文章?難道不是隨便用一個(gè)IDE就可以了嗎?回到上一篇文章里介紹的那個(gè)問(wèn)題,需要修改uboot里board_mmc_init函數(shù)里的writel(0x66666666,REG_MFP_GPD_L) ,對(duì)于初學(xué)者如何在uboot代碼里找到這句話(huà)呢?當(dāng)時(shí)問(wèn)我這個(gè)問(wèn)題的網(wǎng)友就有這個(gè)困惑。

因?yàn)閁boot和Kernel里有非常多數(shù)量的文件,另外為了支持多種芯片,在整個(gè)目錄里存在大量的同名文件、同名函數(shù)。所以如果用一般的IDE把整個(gè)工程目錄加載進(jìn)去,然后閱讀代碼,會(huì)相當(dāng)?shù)牟环奖悖愫茈y理清楚各個(gè)函數(shù)之間的調(diào)用關(guān)系。我曾經(jīng)嘗試過(guò)在Windows下用SourceInsight去看內(nèi)核源碼,實(shí)在看不下去,而且由于文件太多經(jīng)常卡住。在網(wǎng)上也看到有人通過(guò)一些腳本去精簡(jiǎn)文件數(shù)量再配合SourceInsight的,我也嘗試過(guò),感覺(jué)也不是很好用。見(jiàn)到過(guò)幾個(gè)高手是直接通過(guò)VIM閱讀,效率很高,我經(jīng)過(guò)幾天的摸索,稍微入了一點(diǎn)門(mén),在這里給初學(xué)者做個(gè)分享,希望對(duì)大家有所幫助。

2.工具安裝與使用

因?yàn)槲乙婚_(kāi)始學(xué)的單片機(jī),用Keil軟件比較多,咱們就在Ubuntu里構(gòu)建一個(gè)類(lèi)似于Keil軟件常見(jiàn)功能的環(huán)境。為了讓大家看起來(lái)更直觀,我找了一個(gè)單片機(jī)的工程同時(shí)放到Ubuntu里和Window下,兩邊同時(shí)對(duì)比分析。我們需要在Ubuntu系統(tǒng)里安裝配置以下幾個(gè)工具。

2.1 ctags

2.1.1 ctags安裝配置

以下一段話(huà)摘自于維基百科:Ctags is a programming tool that generates an index (or tag) file of names found in source and header files of various programming languages. Depending on the language, functions, variables, class members, macros and so on may be indexed. These tags allow definitions to be quickly and easily located by a text editor, a code search engine, or other utility.安裝方式如下:sudo apt-get install ctags驗(yàn)證是否安裝成功的方式可以輸入ctags --version

使用ctags --list-languages可以查看ctags支持的編程語(yǔ)言

使用ctags --list-maps可以查看ctags支持的編程語(yǔ)言對(duì)應(yīng)的文件擴(kuò)展名

使用ctags --list-kinds可以查看ctags識(shí)別的語(yǔ)法元素,使用ctags --list-kinds=c可單查看C語(yǔ)言識(shí)別的語(yǔ)法元素

安裝完成之后,想要使用ctags,必須在你想要查看的代碼目錄中有tags文件。2.1.2 ctags使用在執(zhí)行下述操作前,已經(jīng)在Ubuntu里~/mcuproject目錄下放了一個(gè)MCU的工程。第1步: ctags -R *生成tags文件。

第2步:需要找到main函數(shù)定義在哪里,先輸入vim打開(kāi)vim窗口,然后在vim命令行窗口輸入ts main它的作用是:Search for a particular tag

再根據(jù)提示輸入1 回車(chē)就跳轉(zhuǎn)到main函數(shù)所在的位置了,

有一點(diǎn)需要大家注意的是:一定要在tags所在的目錄打開(kāi)vim,輸入ts才能搜到你要找到的tag,在其它目錄是不行的,比如我進(jìn)入到上一級(jí)目錄,就會(huì)提示如下信息了。

對(duì)比下Windows里Keil環(huán)境下,我通常用如下方式去查找:

搜索結(jié)果如下:

看到這里你是不是有個(gè)疑問(wèn),為什么Ubuntu下搜索main只有一個(gè)地方,但是在Keil下搜索出來(lái)了6處。原因是使用ctags搜索的結(jié)果是main的定義,而Keil里是只要main這個(gè)字符串出現(xiàn)的地方都會(huì)被搜索出來(lái)。除了剛才使用的ts命令,還有其他相關(guān)命令:

:ts or :tselect List all of the definitions of the last tag

:tn or :tnext Go to the next definition for the last tag

:tp or :tprev Go to the previous definition for the last tag

:tf or :tfirst Go to the first definition for the last tag

:tl or :tlast Go to the last definition for the last tag

第3步:ctags兩個(gè)常用的快捷鍵

Ctrl-] Jump to the tag underneath the cursor

Ctrl-t Jump back up in the tag stack

通過(guò)ctrl+] ,取出當(dāng)前光標(biāo)下的word作為tag的名字并進(jìn)行跳轉(zhuǎn)。你需要查看main函數(shù)里的BOARD_InitPins()函數(shù)定義,直接在vim里,將光標(biāo)移動(dòng)到那里,然后ctrl+]就跳轉(zhuǎn)過(guò)去了

實(shí)現(xiàn)的效果和Keil里點(diǎn)擊Go to Definition 效果一致

看完了這個(gè)函數(shù),想回到原來(lái)的地方怎么辦呢,ctrl+t即可,對(duì)應(yīng)Keil中下方紅框向左的箭頭功能。

但是只有ctags還不行,因?yàn)檫€有下面3個(gè)閱讀代碼過(guò)程中的問(wèn)題沒(méi)有解決1)沒(méi)有類(lèi)似Keil中下方的工程文件列表,不方便隨意選中某個(gè)文件瀏覽

2)沒(méi)有類(lèi)似Keil中下方的function功能,方便快速找到一個(gè)文件中的函數(shù)定義

3)如果瀏覽到下面這個(gè)文件的BOARD_InitPins函數(shù),我想搜索誰(shuí)調(diào)用它的,就沒(méi)招了。

上述第一個(gè)問(wèn)題,我們通過(guò)2.2節(jié)的Nerdtree工具實(shí)現(xiàn),第二個(gè)問(wèn)題通過(guò)2.3節(jié)的Taglist工具實(shí)現(xiàn),第三個(gè)問(wèn)題通過(guò)2.4節(jié)的cscope工具實(shí)現(xiàn)。

2.2安裝配置Nerdtree

2.2.1 Nerdtree安裝

The NERD tree : A tree explorer plugin for navigating the filesystem

The NERD tree allows you to explore your filesystem and to open files and directories. It presents the filesystem to you in the form of a tree which you

manipulate with the keyboard and/or mouse. It also allows you to perform

simple filesystem operations.

安裝方式是先在https://www.vim.org/scripts/script.php?script_id=1658 網(wǎng)站下載壓縮包,將解壓縮的文件拷貝到~/.vim/中即可,下面是我~/.vim/中的文件:

如果沒(méi)有.vim 目錄的話(huà),自己創(chuàng)建下即可。

2.2.2 Nerdtree使用

在使用前,現(xiàn)在~/.vimrc中添加以下兩句話(huà):

map :NERDTreeToggle

nnoremap :NERDTreeFind

具體什么用途,下文馬上解釋。Nerdtree使用方式是在vim打開(kāi)的文件中,切換到底線(xiàn)命令模式,輸入NERDTree,回車(chē)就可以了。

顯示效果如下,多出來(lái)左側(cè)部分就是Nerdtree

如果需要關(guān)閉Nerdtree,需要切換到底線(xiàn)命令模式,輸入NERDTreeClose,這樣操作顯然很麻煩,這時(shí)上面map :NERDTreeToggle 這句話(huà)就起作用了,我們只需要按F2鍵就可以來(lái)回切換打開(kāi)與關(guān)閉該窗口了。在Nerdtree打開(kāi)的情況下,有兩個(gè)窗口,默認(rèn)打開(kāi)后光標(biāo)是在最左側(cè)的窗口,怎么切換到右側(cè)窗口瀏覽代碼呢?通過(guò)Ctrl+w+w在兩個(gè)窗口切換,我們先切換到右邊的窗口,然后進(jìn)入到CLOCK_EnableClock定義的文件里(還記得上一節(jié)的Ctrl-]快捷鍵吧),進(jìn)入后顯示如下

這時(shí)按一下F3快捷鍵,注意左側(cè)窗口的變化,自動(dòng)就定位到該函數(shù)所在的文件了,可以很清晰的看到所在文件的目錄結(jié)構(gòu)。這就是上面添加的第二句話(huà)的作用。

另外如果工程里文件很多,你想通過(guò)搜索快速找到某個(gè)文件,可以使用vim自帶的find命令也能完成所需功能。find 會(huì)從 path 中搜索文件。所以在使用find之前一定要配置一下path變量(不是PATH環(huán)境變量)具體方法是:在右側(cè)窗口中,進(jìn)入命令行窗口:set path=./**然后

find gpio_led_output.c或

find g[TAB]

即可搜索文件

2.3 安裝配置Taglist

2.3.1 Taglist安裝

Taglist也是vim的一個(gè)插件,能將當(dāng)前vim打開(kāi)的文件中函數(shù)名、變量名等在一個(gè)窗口中列出來(lái),并支持通過(guò)列出的函數(shù)名實(shí)現(xiàn)跳轉(zhuǎn)。將Taglist下載下來(lái)的壓縮包解壓縮,將解壓縮出來(lái)的doc里面的taglist.txt復(fù)制到~/.vim/doc/下面,plugin里面的taglist.vim文件拷貝到~/.vim/plugin目錄下。這樣Taglist這個(gè)插件安裝完成了。下載地址在:https://www.vim.org/scripts/script.php?script_id=2732.3.2 Taglist使用在使用前,現(xiàn)在~/.vimrc中添加以下兩句話(huà):

map :TlistToggle

let Tlist_Use_Right_Window = 1

其中第1句話(huà)是建了一個(gè)F4的快捷鍵,用來(lái)方便打開(kāi)和和關(guān)閉該插件第2句話(huà)是將該插件窗口放到最后側(cè)。另外根據(jù)需要你還可以選擇是否添加以下特性:

let Tlist_Show_One_File = 1 "不同時(shí)顯示多個(gè)文件的tag,只顯示當(dāng)前文件的
let Tlist_Exit_OnlyWindow = 1 "如果taglist窗口是最后一個(gè)窗口,則退出vim

按下F4打開(kāi)Taglis后,整體窗口顯示如下:

三部分窗口比例不是很和諧,中間代碼窗口太窄,怎么調(diào)整窗口大小呢?在~/.vimrc中添加以下兩句話(huà):

map :vertical resize +1

map :vertical resize -1

:vertical resize 是用來(lái)調(diào)整當(dāng)前窗口寬度的。

我們?cè)谧钭髠?cè)窗口中先按F5幾次,減小當(dāng)前窗口寬度,

然后到最右側(cè)窗口中也按F5幾次,減小當(dāng)前窗口寬度,

就變成這樣了:

另外你也可以在中間窗口通過(guò)Ctrl + - 減小字體來(lái)顯示的更多內(nèi)容

Ctrl + + 為增大字體

2.4 cscope

2.4.1 cscope安裝配置

先看下ctags和cscope的區(qū)別:ctags can be used to take you to the definition of a variable (e.g., a function, variable, or macro). cscope can be used to take you to the call site of a definition (e.g., all function calls, all variable uses, all macro uses).簡(jiǎn)而言之,它是 ctags 的加強(qiáng)版,ctags 只能讓我們跳轉(zhuǎn)到某個(gè) tag 的定義之處,但是無(wú)法讓我們知道這個(gè) tag 還在哪里出現(xiàn)過(guò),或者被哪個(gè)函數(shù)調(diào)用過(guò),這時(shí)候就需要 cscope 來(lái)完成該功能了。安裝方式如下:sudo apt-get install cscope驗(yàn)證是否安裝成功的方式可以輸入cscope --version

表示安裝成功

2.4.2 cscope使用

第1步:使用 cscope 生成數(shù)據(jù)庫(kù)文件

cscope -Rbkq

其中參數(shù)的含義:

-R 遞歸,對(duì)子目錄也建立數(shù)據(jù)庫(kù)

-b 只生成數(shù)據(jù)庫(kù),不進(jìn)入 scope 界面

-k 生成數(shù)據(jù)庫(kù)時(shí),不搜索 /usr/include 目錄

-q 生成 cscope.in.out 和 cscope.po.out 文件,加快查找速度

第2步:在vim命令行窗口輸入:cs add ./cscope.out第3步:通用格式為 :cs find -option labeloption 可以有很多種模式,在 Vim 中使用 :help cscope-find 來(lái)查看 option:

0 or s: Find this C symbol

1 or g: Find this definition

2 or d: Find functions called by this function

3 or c: Find functions calling this function

4 or t: Find this text string

6 or e: Find this egrep pattern

7 or f: Find this file

8 or i: Find files #including this file

比如:

cs find g BOARD_InitPins 會(huì)直接跳轉(zhuǎn)到這個(gè)函數(shù)的定義處

cs find c BOARD_InitPins 會(huì)直接跳轉(zhuǎn)到調(diào)用這個(gè)函數(shù)的地方

cs find t BOARD_InitPins 會(huì)列出以下5個(gè)出現(xiàn)該函數(shù)的地方

通過(guò)選擇不同的數(shù)字,可以查看具體不同出現(xiàn)的位置。這個(gè)搜索結(jié)果和Keil里搜索的結(jié)果一樣:

但是這樣使用有一個(gè)問(wèn)題:就是我查看一個(gè)結(jié)果后,如果我還想繼續(xù)查看其它的結(jié)果,還得重新搜索再選擇一次。該問(wèn)題的解決方法是:用cscopequickfix,在.vimrc中添加:set cscopequickfix=c-,d-,e-,g-,i-,s-,t-

在命令行copen打開(kāi)quickfix窗口,用cclose關(guān)閉,cprev、cnext移動(dòng)再次cs find t BOARD_InitPins 就會(huì)再右下角的窗口里顯示,這樣查看完一個(gè)文件后如果繼續(xù)查看另外的文件,就可以通過(guò)最右下角的窗口切換選擇。

這種方式打開(kāi)的窗口是在右下角,看著不是很舒服,怎么弄成Keil那樣放到最下方呢,在中間命令行窗口處輸入以下內(nèi)容,就可以在下方顯示了:botright copen

3.Uboot實(shí)戰(zhàn)應(yīng)用

先回到我們之前遇到的那個(gè)問(wèn)題,我是如何在Uboot工程里找到需要修改的那個(gè)代碼地方的,我們先把上一章改動(dòng)后的0x0666666改回原來(lái)的0x66666666。第1步:進(jìn)入到Uboot所在目錄make cscope

第2步:make ctags

注意上面兩步驟沒(méi)用第二章介紹的方法生成tags和cscope.out文件,原因是因?yàn)槿绻菢硬僮鞯脑?huà),就把uboot整個(gè)文件夾里的所有文件都加進(jìn)去了,而使用make的方式只生成了實(shí)際用到的。第3步:vim:cs add ./cscope.out第4步:F2 、F4 把Nerdtree和Taglist窗口打開(kāi),通過(guò)F5減小下兩側(cè)窗口寬度,Ctrl+-縮小字體:botright copen 打開(kāi)quickfix窗口第5步::cs find t 0x66666666我們找到16處,通過(guò)簡(jiǎn)單分析就可以定位到第一個(gè)結(jié)果就是我們需要的。

你如果是在整個(gè)目錄去查詢(xún),就遠(yuǎn)遠(yuǎn)不止這16處了。通過(guò)最右側(cè)的Taglist窗口可以看到它是在board_mmc_init這個(gè)函數(shù)調(diào)用的。緊接著我們看下是誰(shuí)調(diào)用的這個(gè)函數(shù)board_mmc_init::cs find c board_mmc_init

我們把光標(biāo)移動(dòng)到board_mmc_init 處 Ctrl-t 一下,你會(huì)發(fā)現(xiàn)進(jìn)入到不是剛才那個(gè)函數(shù)定義的地方了,變成了下面這里,這是咋回事??

我們?cè)佥斎耄簍s board_mmc_init 查看下該函數(shù)的定義,發(fā)現(xiàn)竟然有三處

不過(guò)前兩個(gè)是weak弱定義,所以直接Ctrl-t 跳轉(zhuǎn)的就是上述的第一個(gè)結(jié)果輸入:tn 就會(huì)跳轉(zhuǎn)到下一個(gè)定義,直到找到正確的定義

另外輸入ts 就可以看到最后一次tag結(jié)果。

使用上面的方法就可以一步步的繼續(xù)分析Uboot代碼,這里不是本篇的重點(diǎn),不詳細(xì)介紹了。

4.結(jié)束語(yǔ)

本篇為大家介紹了Linux下使用vim配合4個(gè)插件實(shí)現(xiàn)Linux代碼的高效閱讀,因?yàn)槲乙彩莿倢W(xué)習(xí),所以肯定有很多更好的使用方法還沒(méi)有掌握,歡迎大家多交流,共同進(jìn)步,可以在網(wǎng)頁(yè)下方留言討論

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • Linux
    +關(guān)注

    關(guān)注

    87

    文章

    11462

    瀏覽量

    212804
  • IDE
    IDE
    +關(guān)注

    關(guān)注

    0

    文章

    347

    瀏覽量

    47490
  • Uboot
    +關(guān)注

    關(guān)注

    4

    文章

    127

    瀏覽量

    28886
收藏 人收藏

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    Linux內(nèi)核開(kāi)發(fā)工具介紹

    進(jìn)行嵌入式Linux產(chǎn)品開(kāi)發(fā),往往需要對(duì)內(nèi)核進(jìn)行裁剪和定制,以滿(mǎn)足嵌入式產(chǎn)品的功能和性能需求。本文介紹幾種閱讀Linux內(nèi)核源碼的工具和方法。
    發(fā)表于 12-29 15:20 ?4846次閱讀
    <b class='flag-5'>Linux</b>內(nèi)核開(kāi)發(fā)工具介紹

    一文詳解Linux內(nèi)核源碼組織結(jié)構(gòu)

    概要:本文內(nèi)容包含Linux源碼樹(shù)結(jié)構(gòu)分析、Linux Makefile分析、Kconfig文件分析、Linux內(nèi)核配置選項(xiàng)分析。這些知識(shí)是為了理解內(nèi)核文件的組織形式,為具體移植內(nèi)核做
    的頭像 發(fā)表于 05-10 19:28 ?6076次閱讀

    Linux內(nèi)核源碼之我見(jiàn)——內(nèi)核源碼的分析方法

    一、內(nèi)核源碼之我見(jiàn)Linux內(nèi)核代碼的龐大令不少人“望而生畏”,也正因?yàn)槿绱耍沟萌藗儗?duì)Linux的了解僅處于泛泛的層次。如果想透析Linux,深入操作系統(tǒng)的本質(zhì),
    發(fā)表于 05-11 07:00

    下載編譯源碼的要點(diǎn)和搭建源碼閱讀環(huán)境的方法

    下載編譯源碼的要點(diǎn)和搭建源碼閱讀環(huán)境的方法。下載編譯源碼,一方面是為了搭建源碼閱讀環(huán)境,另一方面
    發(fā)表于 01-10 06:49

    Linux內(nèi)核源代碼(free)

    一些基本概念 操作系統(tǒng)的基本概念 I386系統(tǒng)的基本概念 Linux簡(jiǎn)介 源碼閱讀和project環(huán)境 Linux 2.6.26 源碼
    發(fā)表于 01-08 17:41 ?26次下載

    幾個(gè)RT-Linux 源碼

    幾個(gè)RT-Linux 源碼
    發(fā)表于 01-08 14:27 ?11次下載

    Linux內(nèi)核閱讀心得體會(huì)

    Linux內(nèi)核閱讀心得體會(huì)
    發(fā)表于 10-24 08:55 ?8次下載
    <b class='flag-5'>Linux</b>內(nèi)核<b class='flag-5'>閱讀</b>心得體會(huì)

    需要掌握的Linux內(nèi)核源碼分析方法

    Linux內(nèi)核代碼的龐大令不少人“望而生畏”,也正因?yàn)槿绱耍沟萌藗儗?duì)Linux的了解僅處于泛泛的層次。如果想透析Linux,深入操作系統(tǒng)的本質(zhì),閱讀內(nèi)核
    發(fā)表于 04-28 16:54 ?985次閱讀
    需要掌握的<b class='flag-5'>Linux</b>內(nèi)核<b class='flag-5'>源碼</b>分析方法

    分享一個(gè)超級(jí)實(shí)用的源碼閱讀小技巧

    工欲善其事必先利其器; 我發(fā)現(xiàn)函數(shù)調(diào)用圖可以讓我們更加直觀地了解到源碼函數(shù)直接的調(diào)用和層次關(guān)系,提高閱讀源碼的效率 。 1 前言 看源碼的時(shí)候,心血來(lái)潮想弄一下函數(shù)之前的調(diào)用關(guān)系,想起
    的頭像 發(fā)表于 05-29 11:50 ?2247次閱讀
    分享一個(gè)超級(jí)實(shí)用的<b class='flag-5'>源碼</b><b class='flag-5'>閱讀</b>小技巧

    如何選擇合適的工具來(lái)閱讀源代碼

    在做嵌入式 Linux 軟件開(kāi)發(fā)的時(shí)候,經(jīng)常會(huì)閱讀大型工程源碼,比如 uboot 源代碼,Linux Kernel 源碼等。
    的頭像 發(fā)表于 03-30 14:01 ?1320次閱讀

    ROC RK3566 PC Linux SDK源碼

    電子發(fā)燒友網(wǎng)站提供《ROC RK3566 PC Linux SDK源碼包.txt》資料免費(fèi)下載
    發(fā)表于 09-21 15:03 ?21次下載
    ROC RK3566 PC <b class='flag-5'>Linux</b> SDK<b class='flag-5'>源碼</b>包

    AIO 3568J Linux SDK源碼

    電子發(fā)燒友網(wǎng)站提供《AIO 3568J Linux SDK源碼包.txt》資料免費(fèi)下載
    發(fā)表于 09-21 11:02 ?10次下載
    AIO 3568J <b class='flag-5'>Linux</b> SDK<b class='flag-5'>源碼</b>包

    閱讀開(kāi)源項(xiàng)目源碼的實(shí)用技巧(下)

    這句話(huà)其實(shí)是高效 debug 的關(guān)鍵。初看源碼時(shí)「猜」是很重要且很有效的手段,結(jié)合 IDE 的搜索功能,能夠幫我們快速定位關(guān)鍵代碼。
    的頭像 發(fā)表于 04-12 11:37 ?925次閱讀
    <b class='flag-5'>閱讀</b>開(kāi)源項(xiàng)目<b class='flag-5'>源碼</b>的實(shí)用技巧(下)

    如何去閱讀源碼,我總結(jié)了18條心法

    在一個(gè)優(yōu)秀的開(kāi)源項(xiàng)目中,設(shè)計(jì)模式處處存在,所以在你開(kāi)始閱讀源碼之前最好先了解一下常見(jiàn)的一些設(shè)計(jì)模式。當(dāng)你了解了一些設(shè)計(jì)模式以后,在源碼中遇到了相關(guān)的設(shè)計(jì)模式,你就可以快速明白代碼結(jié)構(gòu)的設(shè)計(jì),從而以整體的視角去
    的頭像 發(fā)表于 07-17 16:00 ?1017次閱讀
    如何去<b class='flag-5'>閱讀</b><b class='flag-5'>源碼</b>,我總結(jié)了18條心法

    獲取Linux內(nèi)核源碼的方法

    關(guān)鍵功能,今天小編就給各位小伙伴介紹一下如何獲取Linux內(nèi)核源碼。獲取Linux內(nèi)核源碼的渠道Linux有一個(gè)龐大的開(kāi)源社區(qū),每個(gè)人都可以
    的頭像 發(fā)表于 12-13 09:49 ?936次閱讀
    獲取<b class='flag-5'>Linux</b>內(nèi)核<b class='flag-5'>源碼</b>的方法