什么用來編寫網(wǎng)頁鄭州seo優(yōu)化
Linux 上手難,學(xué)習(xí)曲線陡峭,所以它的學(xué)習(xí)過程更像一個(gè)爬坡模式。這些坡看起來都很陡,但是一旦爬上一階,就會(huì)一馬平川。
1、拋棄舊的思維習(xí)慣,熟練使用 Linux 命令行
在 Linux 中,無論我們做什么事情,都會(huì)有相應(yīng)的命令工具。雖然這些命令一般會(huì)在 bin 或者 sbin 目錄下面,但是這些命令的數(shù)量太多了。如果你事先不知道該用哪個(gè)命令,很難通過枚舉的方式找到。因此,在這樣沒有統(tǒng)一入口的情況下,就需要你對(duì)最基本的命令有所掌握。
一旦找到某個(gè)命令行工具,替代輸入框的是各種各樣的啟動(dòng)參數(shù)。這些參數(shù)怎么填,一般可以通過 -h 查看 help,挨個(gè)兒看過去,就能找到相應(yīng)的配置項(xiàng);還可以通過 man 命令,查看文檔。
2、通過系統(tǒng)調(diào)用或者 glibc,學(xué)會(huì)自己進(jìn)行程序設(shè)計(jì)
用代碼操作 Linux,可以直接使用 Linux 系統(tǒng)調(diào)用,也可以使用 glibc 的庫。
Linux 的系統(tǒng)調(diào)用非常多,而且每個(gè)函數(shù)都非常復(fù)雜,傳入的參數(shù)、返回值、調(diào)用的方式等等都有很多講究。這里面需要掌握很多 Linux 操作系統(tǒng)的原理,否則你會(huì)無法理解為什么應(yīng)該這樣調(diào)用。
你會(huì)發(fā)現(xiàn),你平時(shí)用的一個(gè)簡(jiǎn)單的命令行,卻需要 N 個(gè)系統(tǒng)調(diào)用組合才能完成。其中每個(gè)系統(tǒng)調(diào)用都要進(jìn)行深入地學(xué)習(xí)、讀文檔、做實(shí)驗(yàn)。
3、了解 Linux 內(nèi)核機(jī)制,反復(fù)研習(xí)重點(diǎn)突破
進(jìn)一步了解內(nèi)核的原理,有助于你更好地使用命令行和進(jìn)行程序設(shè)計(jì),能讓你的運(yùn)維和開發(fā)水平上升一個(gè)層次,但是不建議你直接看代碼,因?yàn)?Linux 代碼量太大,很容易迷失,找不到頭緒。最好的辦法是,先了解一下 Linux 內(nèi)核機(jī)制,知道基本的原理和流程就可以了。
一旦學(xué)起來的時(shí)候,你會(huì)發(fā)現(xiàn),Linux 內(nèi)核機(jī)制也非常復(fù)雜,而且其中相互關(guān)聯(lián)。比如說,進(jìn)程運(yùn)行要分配內(nèi)存,內(nèi)存映射涉及文件的關(guān)聯(lián),文件的讀寫需要經(jīng)過塊設(shè)備,從文件中加載代碼才能運(yùn)行起來進(jìn)程。這些知識(shí)點(diǎn)要反復(fù)對(duì)照,才能理清。
4、閱讀 Linux 內(nèi)核代碼,聚焦核心邏輯和場(chǎng)景
開源軟件代碼紛繁復(fù)雜,一開始看肯定暈,找不著北。這里有一個(gè)訣竅,就是一開始閱讀代碼不要糾結(jié)一城一池的得失,不要每一行都一定要搞清楚它是干嘛的,而要聚焦于核心邏輯和使用場(chǎng)景。
5、實(shí)驗(yàn)定制化 Linux 組件,已經(jīng)沒人能阻擋你成為內(nèi)核開發(fā)工程師了
因?yàn)?Linux 有源代碼,很多地方可以參考現(xiàn)有的實(shí)現(xiàn),定制化自己的模塊。例如,你可以自己實(shí)現(xiàn)一個(gè)設(shè)備驅(qū)動(dòng)程序,實(shí)現(xiàn)一個(gè)自己的系統(tǒng)調(diào)用,或者實(shí)現(xiàn)一個(gè)自己的文件系統(tǒng)等等。
6、面向真實(shí)場(chǎng)景的開發(fā),實(shí)踐沒有終點(diǎn)
如果你是運(yùn)維,僅僅熟悉上面基本的操作是不夠的,生產(chǎn)環(huán)境會(huì)有大量的不可控因素,尤其是集群規(guī)模大的更是如此,大量的運(yùn)維經(jīng)驗(yàn)是實(shí)戰(zhàn)來的,不能光靠讀書。如果你是開發(fā),對(duì)內(nèi)核進(jìn)行少量修改容易,但是一旦面臨真實(shí)的場(chǎng)景,需要考慮各種因素,并發(fā)與并行,鎖與保護(hù),擴(kuò)展性和兼容性,都需要真實(shí)項(xiàng)目才能練出來。
此文章為10月Day15學(xué)習(xí)筆記,內(nèi)容來源于極客時(shí)間《趣談Linux操作系統(tǒng)》,推薦該課程。