1. 嵌入式linux 4.x 內核多大
Linux 是一個開放自由的操作系統內核,4.0和2.6相比,佔用空間區別不大,具有一些鮮明特點如下:
(1) Linux 是一個一體化內核;
註:「一體化內核」是也稱「宏內核」,是相對於「微內核」而言的。幾乎所有
的嵌入式和實時系統都採用微內核,如 VxWorks、uC/OS-II、PSOS 等。
(2) 可移植性強。盡管 Linus 最初只為在 X86 PC 上實現一個「類 UNIX」,後來隨
著加入者的努力,Linux 目前已經成為支持硬體平台最廣泛的操作系統;
註:目前已經在 X86、IA64、ARM、MIPS、AVR32、M68K、S390、Blackfin、M32R
等眾多架構處理器上運行。
(3) 是一個可裁剪操作系統內核。Linux 極具伸縮性,內核可以任意裁剪,可以大至
幾十或者上百兆,可以小至幾百 K,運行的設備從超級計算機、大型伺服器到
小型嵌入式系統、掌上移動設備或者嵌入式模塊,都可以運行;
(4) 模塊化。Linux 內核採用模塊化設計,很多功能模塊都可以編譯為模塊,可以在
內核運行中動態載入/卸載而無需重啟系統;
(5) 網路支持完善。Linux 內核集成了完整的 POSIX 網路協議棧,網路功能完善;
(6) 穩定性強。運行 Linux 的內核的伺服器可以做到幾年不用復位重啟;
(7) 安全性好。Linux 源碼開放,由眾多黑客參與 Linux 的開發,一旦發現漏洞都能及時修復;
(8) 支持的設備廣泛。Linux 源碼中,設備驅動源碼佔了很大比例,幾乎能支持任何
常見設備,無論是很老舊的設備還是最新推出的硬體設備,幾乎都能找到 Linux下的驅動。
2. Linux內核有多大,不同Linux版本內核有什麼差別呢
根據版本的不同,內核大小也不同,新版本為幾百M。
1、發行版的不同,主要是對於版本的選擇,穩定性的測試,還有錯誤修正補丁都會讓每個發行版有自己特殊的內核。
2、官方內核的不同,這個區別很好說,官方的開發是基於 git 版本控制的,去看兩個 git 版本就知道了。一般是硬體支持,還有新的功能演算法,還有驅動增減,錯誤修補什麼的。
Linux的內核版本編號有點像如下的樣子:
2.6.32-642.el6.x86_64
主版本.次版本。發布版本-修改版本。
雖然編號就是如上的方式來編寫,不過依據Linux內核的發展歷程,內核版本的定義有點不太相同。
奇數、偶數版本分類:
在2.6x版本以前,托瓦斯將內核的發展方向分為兩類,並根據這兩類內核的發展分別給予不同的內核編號,那就是:
主、次版本為奇數:開發中版本。
如2.5.xx,這種內核版本主要用於測試與發展新功能,所以通常這種版本僅有內核開發工程師會使用。如果有新增的內核程序代碼,會加到這種版本當中,等到很多工程師測試沒問題後,才加入下一版本的穩定內核中;
主、次版本為偶數:穩定版本。
如2.6.xx,等到內核功能發展成熟後會加到這類版本中,主要用在一般家庭計算機以及企業版本中,重點在於提供一個用戶相對穩定的Linux操作環境平台。
至於發布版本則是在主、次版本架構不變的情況下,新增的功能累積到一定程度後新發布的內核版本。而由於Linux 的內核是使用CPL的授權,因此大家都能夠進行內核程序代碼的修改。
因此,如果有針對一個版本的內核修改過的部分程序代碼,那麼這個被修改過的新內核版本就可以加上所謂的修改版本。
Linux內核版本與Linux發行版本。
Linux內核版本與發行版本的版本並不相同,因為所謂的Linux版本指的應該是內核版本,而目前最新的內核版本應該是4.7.2(2016/08)才對,並不會有7.x的版本出現。
(2)linux內核多大擴展閱讀:
Linux內核的任務:
1、從技術層面講,內核是硬體與軟體之間的一個中間層。作用是將應用層序的請求傳遞給硬體,並充當底層驅動程序,對系統中的各種設備和組件進行定址。
2、從應用程序的層面講,應用程序與硬體沒有聯系,只與內核有聯系,內核是應用程序知道的層次中的最底層。在實際工作中內核抽象了相關細節。
3、內核是一個資源管理程序。負責將可用的共享資源(CPU時間、磁碟空間、網路連接等)分配得到各個系統進程。
4、內核就像一個庫,提供了一組面向系統的命令。系統調用對於應用程序來說,就像調用普通函數一樣。
3. linux系統一般多大
你是說安裝的文件多大?還是安裝好後有多大?你是做伺服器用還是PC上用?
許多發行版的DVD都挺大,一般都4個G左右,但安裝好後能有多大要取決於你安裝什麼樣的環境,如果是最小化安裝,安裝完後可能不到200兆。如果是普通的桌面版現在應該有幾個G吧,有的發行版默認你自己搭積木式的搭建系統,這個就不好說了。像Gentoo和ArchLinux安裝好後,幾乎沒有人是一樣的,有相同的那就真是純屬巧合了。總的來說Linux的自由度太大了,從最極端的一切都自己編譯到最流行的別人封包好的桌面環境都有。
4. Linux的內核有多大,大概多少行程序
linux各版本的區別太難說了,了解他們各自的特點就行了,重點還是要自己去體驗,ubuntu志在打造最易用的linux發行版,有自己的桌面環境unity,基於Debian,繼承了Debian的很多特性fedora,以前叫做fedoracore簡稱FC,是紅帽贊助的社區版,在技術上比較激進,很多fedora中使用的技術都會被用到RHEL當中去,現在的fedora跟RHEL還是有不小的差別的,,redhat紅帽,現在是RHEL了,redhatenterpriseedition,redflag紅旗,中科院的,放棄吧。。。FC5FC6都是過時的了,可見你找到的資料都是比較老的資料。。。freebsdopenbsd屬於bsd系,跟linux在內核代碼上沒有太多聯系,但整體的體系還是類似的,bsd是unix的直系,linux則是精神上繼承自unix。。。Debian是linux啦,,正宗的GNULinux,Solaris是SUN(現被oracle收購)自己的操作系統多用於大型機小型機等領域。
5. 現在linux2.6.x版本的內核有多大
內核下載的文件不大,大概在50M左右吧
包括的部分,這個我可說不上來,一般的cpu,內存,硬碟,分區格式支持等都有的,還有無線網卡等等,這個要你自己編譯的時候進去看了
6. Linux如何查看內核大小
linux本身就是內核,只能查看內核版本,無法查看內核大小。
查看內核版本方法一:
命令: uname -a
作用: 查看系統內核版本號及系統名稱。
查看內核版本方法二:
命令: cat /proc/version
作用: 查看目錄"/proc"下version的信息,也可以得到當前系統的內核版本號及系統名稱。
補充說明:
/proc文件系統,它不是普通的文件系統,而是系統內核的映像,也就是說,該目錄中的文件是存放在系統內存之中的,它以文件系統的方式為訪問系統內核數據的操作提供介面。而我們使用命令「uname -a"的信息就是從該文件獲取的,當然用方法二的命令直接查看它的內容也可以達到同等效果.另外,加上參數"a"是獲得詳細信息,如果不加參數為查看系統名稱。
7. linux內核一般佔用多大內存
[root@scs-2 tmp]# free
total used free shared buffers cached
Mem: 3266180 3250004 16176 0 110652 2668236
-/+ buffers/cache: 471116 2795064
Swap: 2048276 80160 1968116
下面是對這些數值的解釋:
total:總計物理內存的大小。
used:已使用多大。
free:可用有多少。
Shared:多個進程共享的內存總額。
Buffers/cached:磁碟緩存的大小。
第三行(-/+ buffers/cached):
used:已使用多大。
free:可用有多少。
第四行就不多解釋了。
區別:第二行(mem)的used/free與第三行(-/+ buffers/cache) used/free的區別。 這兩個的區別在於使用的角度來看,第一行是從OS的角度來看,因為對於OS,buffers/cached 都是屬於被使用,所以他的可用內存是16176KB,已用內存是3250004KB,其中包括,內核(OS)使用+Application(X, oracle,etc)使用的+buffers+cached.
第三行所指的是從應用程序角度來看,對於應用程序來說,buffers/cached 是等於可用的,因為buffer/cached是為了提高文件讀取的性能,當應用程序需在用到內存的時候,buffer/cached會很快地被回收。
所以從應用程序的角度來說,可用內存=系統free memory+buffers+cached。
如上例:
2795064=16176+110652+2668236
接下來解釋什麼時候內存會被交換,以及按什麼方交換。 當可用內存少於額定值的時候,就會開會進行交換。
如何看額定值:
cat /proc/meminfo
[root@scs-2 tmp]# cat /proc/meminfo
MemTotal: 3266180 kB
MemFree: 17456 kB
Buffers: 111328 kB
Cached: 2664024 kB
SwapCached: 0 kB
Active: 467236 kB
Inactive: 2644928 kB
HighTotal: 0 kB
HighFree: 0 kB
LowTotal: 3266180 kB
LowFree: 17456 kB
SwapTotal: 2048276 kB
SwapFree: 1968116 kB
Dirty: 8 kB
Writeback: 0 kB
Mapped: 345360 kB
Slab: 112344 kB
Committed_AS: 535292 kB
PageTables: 2340 kB
VmallocTotal: 536870911 kB
VmallocUsed: 272696 kB
VmallocChunk: 536598175 kB
HugePages_Total: 0
HugePages_Free: 0
Hugepagesize: 2048 kB
用free -m查看的結果:
[root@scs-2 tmp]# free -m
total used free shared buffers cached
Mem: 3189 3173 16 0 107 2605
-/+ buffers/cache: 460 2729
Swap: 2000 78 1921
查看/proc/kcore文件的大小(內存鏡像):
[root@scs-2 tmp]# ll -h /proc/kcore
-r——– 1 root root 4.1G Jun 12 12:04 /proc/kcore
備註:
佔用內存的測量
測量一個進程佔用了多少內存,linux為我們提供了一個很方便的方法,/proc目錄為我們提供了所有的信息,實際上top等工具也通過這里來獲取相應的信息。
/proc/meminfo 機器的內存使用信息
/proc/pid/maps pid為進程號,顯示當前進程所佔用的虛擬地址。
/proc/pid/statm 進程所佔用的內存
[root@localhost ~]# cat /proc/self/statm
654 57 44 0 0 334 0
輸出解釋
CPU 以及CPU0。。。的每行的每個參數意思(以第一行為例)為:
參數 解釋 /proc//status
Size (pages) 任務虛擬地址空間的大小 VmSize/4
Resident(pages) 應用程序正在使用的物理內存的大小 VmRSS/4
Shared(pages) 共享頁數 0
Trs(pages) 程序所擁有的可執行虛擬內存的大小 VmExe/4
Lrs(pages) 被映像到任務的虛擬內存空間的庫的大小 VmLib/4
Drs(pages) 程序數據段和用戶態的棧的大小 (VmData+ VmStk )4
dt(pages) 04
查看機器可用內存
/proc/28248/>free
total used free shared buffers cached
Mem: 1023788 926400 97388 0 134668 503688
-/+ buffers/cache: 288044 735744
Swap: 1959920 89608 1870312
我們通過free命令查看機器空閑內存時,會發現free的值很小。這主要是因為,在linux中有這么一種思想,內存不用白不用,因此它盡可能的cache和buffer一些數據,以方便下次使用。但實際上這些內存也是可以立刻拿來使用的。
所以 空閑內存=free+buffers+cached=total-used
8. linux 內核 多大
幾兆。不大