Linux學習指引

概述

爲什麼要學習Linux操作系統? IT行業日新月異,新技術層出不窮,然而這些新技術所依賴的底層技術,如操作系統、計算機系統原理、數據結構與算法、網絡、編譯原理等依然沒多大變化,只有掌握了這些基礎技術,在面對新技術才能撥開新技術的迷霧一窺究竟。大學中和平時我們都在使用wiondws操作系統但是有必要學習linux操作系統嗎?
其中緣由有如下:

  • 作爲開發人員,互聯網所開發的技術基本依賴於linux操作系統,服務端程大多都是部署在linux系統下,移動互聯網時代Android也是基於linux操作系統的,也就是說在 編程世界中,Linux 就是主流,不會 Linux 你就稱不上是一名合格的程序員。
  • Linux 內核代碼,有着數據結構與設計模式的落地實踐,linux是開源的,通過閱讀源代碼,可以借鑑linux中的方式。同時上次應用程序跑在linux系統,如文件操作、I/O操作,網絡操作都不可避免需要跟linux操作系統打交道
  • 瞭解 Linux 操作系統生態,能讓你事半功倍地學會新技術,新技術的開發大多都會是基於 Linux 來開發,數據庫、中間件、spark、k8s、docker 這些軟件都會默認提供 Linux 下的安裝、使用、運維手冊,都會默認先適配 Linux。

怎麼學

從操作linux、使用linux命令、到熟悉原理及應用linux提供的能力編寫linux組件,需要經歷幾個過程,大致是熟練使用 Linux 命令行、使用 Linux 進行程序設計、瞭解 Linux 內核機制、閱讀 Linux 內核代碼、開發Linux 組件,以及最後落到生產實踐上。

  • 第一階段:熟練使用linux命令行工具,如掌握 sed 、 awk、管道、grep 及系統工具top 、ps。可以通過閱讀《鳥哥的 Linux 私房菜》。如果想再深入一 點,推薦你閱讀《Linux 系統管理技術手冊》
  • 第二階段: 學會自己進行程序設計,通過linux系統調用來操作 Linux,常用的命令行工具也是程序,只不過是別人寫的程序。可以學學《UNIX 環境高級編程》
  • 第三階段:瞭解一下 Linux 內核機制,知道基本的原理和流程。這就相當於自己編寫linux程序,既知道調用linux系統函數,也知道其內核機制。這時候可以學習下《深入理解 LINUX 內核》
  • 第四階段:閱讀 Linux 內核代碼,聚焦核心邏輯和場景,如《LINUX 內核源代碼情景分析》是比較好的數據。
  • 第五階段:定製化 Linux 組件,內核開發工程師面向實際場景進行開發。

作爲程序員,至少要達到第三個階段,熟練使用的linux命令行工具,提高工作開發效率,同時藉助這些工具能夠快速監控程序、發現問題和排查問題,能夠自己寫linux程序調用系統函數完成相關開發,而且知道底層linux內核機制和原理,可以讓我們在開發過程中編寫更高質量的問題,也能夠定位到比較難的問題

總結

這是一個簡單敘述,從現在開始作爲個大齡碼農,越發發現在世紀工作中基礎知識的重要性,linux操作系統也是這些基礎知識中重要的一環,重新開始學習這些基礎知識,希望還來得及,加油吧!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章