linux的内核版本2.3.20是什么版本(linux 的内核)
linux內核是什么,有啥作用?
Linux內核是一個操作系統(OS)內核,本質上定義為類Unix。它用于不同的操作系統,主要是以不同的Linux發行版的形式。
Linux內核是整個操作系統的最底層,它負責整個硬件的驅動,以及提供各種系統所需的核心功能,包括防火墻機制、是否支持LVM或Quota等文件系統等等,如果內核不認識某個最新的硬件,那么硬件也就無法被驅動,你也就無法使用該硬件。
Linux的內核及其作用?
管理進程:內核負責創建和銷毀進程, 并處理它們與外部世界的聯系(輸入和輸出),不同進程間通訊(通過信號,管道,或者進程間通訊原語)對整個系統功能來說是基本的,也由內核處理。 另外, 調度器, 控制進程如何共享CPU,是進程管理的一部分。 更通常地,內核的進程管理活動實現了多個進程在一個單個或者幾個CPU 之上的抽象。
管理內存:計算機的內存是主要的資源, 處理它所用的策略對系統性能是至關重要的。 內核為所有進程的每一個都在有限的可用資源上建立了一個虛擬地址空間。 內核的不同部分與內存管理子系統通過一套函數調用交互,從簡單的malloc/free對到更多更復雜的功能。
文件系統:Unix 在很大程度上基于文件系統的概念;幾乎Unix中的任何東西都可看作一個文件。 內核在非結構化的硬件之上建立了一個結構化的文件系統,結果是文件的抽象非常多地在整個系統中應用。 另外,Linux 支持多個文件系統類型,就是說,物理介質上不同的數據組織方式。 例如,磁盤可被格式化成標準Linux的ext3文件系統,普遍使用的FAT文件系統,或者其他幾個文件系統。
設備控制:幾乎每個系統操作終都映射到一個物理設備上,除了處理器,內存和非常少的別的實體之外,全部中的任何設備控制操作都由特定于要尋址的設備相關的代碼來進行。 這些代碼稱為設備驅動。 內核中必須嵌入系統中出現的每個外設的驅動,從硬盤驅動到鍵盤和磁帶驅動器。 內核功能的這個方面是本書中的我們主要感興趣的地方。
網絡管理:網絡必須由操作系統來管理,因為大部分網絡操作不是特定于某一個進程: 進入系統的報文是異步事件。 報文在某一個進程接手之前必須被收集,識別,分發,系統負責在程序和網絡接口之間遞送數據報文,它必須根據程序的網絡活動來控制程序的執行。 另外,所有的路由和地址解析問題都在內核中實現。
linux使用內核模塊有什么優缺點?
當然需要。。。
第一點,就是源碼樹中有相應的頭文件和函數的實現,沒有源碼樹,你哪調用去呢?
(pc上編譯的時候內核有導出符號,系統中有頭文件,這樣就可以引用內核給你的接口了,但是只能編譯你pc上版本的內核可加載的模塊)。
第二個,內核模塊中會記錄版本號的部分,需要記錄版本號的原因是不同的內核版本之間,那些接口和調用可能會有比較大的差異,因此必須要保證你的代碼和某個特定的內核對應,這樣編譯出來的模塊就可以(也是只能)在運行這個內核版本的Linux系統中加載,否則一個很簡單的異常就會導致內核崩潰,或者你的代碼根本無法編譯通過(接口名變了)。我上面說的是編譯模塊的情況,當然如果是把模塊直接編譯到內核當中去的話,那就不用說了,沒有內核源碼,你無法編譯內核。
Linux內核基于什么架構?
Linux內核基于ARM64架構。Linux最早是由芬蘭Linus Torvalds為嘗試在英特爾x86架構上提供自由免費的類Unix操作系統而開發的。
該計劃開始于1991年,該計劃的早期有一些Minix黑客提供了協助,而今天全球無數程序員正在為該計劃無償提供幫助。
為什么要學習Linux內核?
1 學習一些操作系統的理論知識,一些概念。比如:進程,內存管理,文件系統等等。
關于這一方面的書籍太多了,自己找一本就行了2 學習x86匯編,雖然linux用的是AT&T匯編,但二者只是格式不同而已。
而且學習x86匯編有助于了解x86系統結構。書籍推薦王爽的《匯編語言》 ,我學的時候用的不是這個,后面看到這本書,才覺得自己做了“苦功了”。
學完大部分匯編指令時,找些匯編程序讀讀,熟悉這些指令的用法。
不需要有寫匯編程序的能力,能讀就行了,當然會寫更好3 趙炯的《Linux內核0.11完全注釋》。
這個linux內核版本低,作者也講得很詳細。不過關于x86體系的那一部分,作者講得很繁瑣,這一部分一定要大體看懂,那后面章節的內容就沒有多大的問題了。
我先把書通看了一遍,用了1個月的時間。
后來,再返回來一個一個研究,用了2個月。
之所以看這本書,是讓自己對內核有個實質的感受,不僅僅只是理論上的東西。
4 毛德操的《linux內核情景分析》。linux內核版本2.4.0,這本書很厚,上下兩冊。
我通讀一遍,用了2個月時間。
后來,再返回來一個一個研究,現在已用了2個月,正在研究中。。。。
就我個人覺得,linux內核最難的是內存管理,這2個月我就只大體搞清內存頁面的周轉,但搞清了這個,就會對內核的整體結構有個大致的了解,因為你已經清楚了用戶進程和內核的其它部分是怎樣使用內存頁面的。
5 學習linux內核最需要的是堅持和思考。
這是一個很長的過程,也許你會發現學了linux內核,并不會給你帶來什么,我現在就是這樣覺得的,感覺自己什么都不會做,真希望有人能我一些建議!不過學習學習也是有好處的,比如看了趙炯的《Linux內核0.11完全注釋》后,你再去看UCOS-II,會感覺那太容易了!也許學習linux內核會對將來的工作有所幫助吧!
總結
以上是生活随笔為你收集整理的linux的内核版本2.3.20是什么版本(linux 的内核)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: ddos僵尸网络(僵尸ddos攻击设备)
- 下一篇: 计算机怎么没有桌面文件夹名称大全,你的电