久久国产成人av_抖音国产毛片_a片网站免费观看_A片无码播放手机在线观看,色五月在线观看,亚洲精品m在线观看,女人自慰的免费网址,悠悠在线观看精品视频,一级日本片免费的,亚洲精品久,国产精品成人久久久久久久

分享

Linux內(nèi)核分析(四)

 yidiantou 2017-01-12

Linux內(nèi)核分析(四)

兩天沒有更新了,,上次博文我們分析了linux的內(nèi)存管理子系統(tǒng),本來我不想對(duì)接下來的進(jìn)程管理子系統(tǒng),、網(wǎng)絡(luò)子系統(tǒng),、虛擬文件系統(tǒng)在這個(gè)階段進(jìn)行分析的,但是為了讓大家對(duì)內(nèi)核有個(gè)整體的把握,,今天還是簡(jiǎn)單的介紹一下剩余的幾個(gè)子系統(tǒng),,我們對(duì)這幾個(gè)子系統(tǒng)的分析,只要了解其作用和部分內(nèi)容即可,,不必深究,,等我們寫上幾個(gè)驅(qū)動(dòng),到時(shí)候按照驅(qū)動(dòng)再來分析這幾個(gè)子系統(tǒng)我們就清晰多了。

http://www.cnblogs.com/wrjvszq/p/4257164.html一文我們提到過linux由七個(gè)部分構(gòu)成,,最重要的四個(gè)子系統(tǒng)是內(nèi)存管理子系統(tǒng),、進(jìn)程管理子系統(tǒng)、網(wǎng)絡(luò)子系統(tǒng),、虛擬文件系統(tǒng),、上次我們已經(jīng)對(duì)內(nèi)存管理子系統(tǒng)進(jìn)行了分析(談不上分析,只是個(gè)簡(jiǎn)單了解),。

所以今天我們會(huì)分析到以下內(nèi)容:

1.      Linux進(jìn)程管理子系統(tǒng)

2.      Linux網(wǎng)絡(luò)子系統(tǒng)

3.      虛擬文件系統(tǒng)

4.      Linux設(shè)備驅(qū)動(dòng)簡(jiǎn)介

 

l  Linux進(jìn)程管理子系統(tǒng)

在進(jìn)程管理中最重要的就是進(jìn)程的調(diào)度和進(jìn)程的通信下面我們一一分析,。

1.       進(jìn)程調(diào)度

進(jìn)程調(diào)度使得多個(gè)進(jìn)程增長(zhǎng)CPU中“微觀串行,宏觀并行”的進(jìn)行執(zhí)行,。進(jìn)程調(diào)度處于系統(tǒng)的中心位置,,內(nèi)核中其他子系統(tǒng)都依賴于它。

a)      進(jìn)程調(diào)度意義

進(jìn)程調(diào)度使得多個(gè)進(jìn)程增長(zhǎng)CPU中“微觀串行,,宏觀并行”的進(jìn)行執(zhí)行,。進(jìn)程調(diào)度處于系統(tǒng)的中心位置,內(nèi)核中其他子系統(tǒng)都依賴于它,。

b)      進(jìn)程的狀態(tài)切換

Linux的進(jìn)程在幾個(gè)狀態(tài)間進(jìn)行切換,,如下圖展現(xiàn)了其切換關(guān)系。

c)      進(jìn)程調(diào)度策略

Linux中常見的有以下

1)    SCHED_OTHER 分時(shí)調(diào)度策略,。

2)    SCHED_FIFO實(shí)時(shí)調(diào)度策略,,先到先服務(wù)

3)    SCHED_RR實(shí)時(shí)調(diào)度策略,時(shí)間片輪轉(zhuǎn)

 

2.       進(jìn)程通信

Linux支持進(jìn)程間的多種通信機(jī)制,,可以通過這些通信機(jī)制進(jìn)行多個(gè)進(jìn)程,、多資源的互斥訪問、進(jìn)程間的同步和消息傳遞,。

a)      linux進(jìn)程間通信方式

1)        管道:分為有名管道(用于同一系統(tǒng)間的任意進(jìn)程)和無名管道(用于父子進(jìn)程)

2)        信號(hào)量

3)        信號(hào)

4)        消息隊(duì)列

5)        共享內(nèi)存

6)        套接字(socket

l  Linux網(wǎng)絡(luò)子系統(tǒng)

Linux網(wǎng)絡(luò)子系統(tǒng)提供了對(duì)各種網(wǎng)絡(luò)標(biāo)準(zhǔn)的存取和各種硬件的支持,。下圖是其整體結(jié)構(gòu)。其可以分為協(xié)議層和網(wǎng)絡(luò)驅(qū)動(dòng)程序,,其中網(wǎng)絡(luò)協(xié)議主要負(fù)責(zé)實(shí)現(xiàn)每一種可能的網(wǎng)絡(luò)傳輸協(xié)議,,而網(wǎng)絡(luò)驅(qū)動(dòng)程序負(fù)責(zé)與硬件通信。

l  Linux虛擬文件系統(tǒng)

Linux虛擬文件系統(tǒng)(VFS)隱藏了各種硬件的具體細(xì)節(jié),,為所有的設(shè)備提供了統(tǒng)一的接口,,它是對(duì)各種文件系統(tǒng)的一個(gè)抽象,其實(shí)使用超級(jí)塊super block存放文件系統(tǒng)相關(guān)信息,,使用索引節(jié)點(diǎn)inode存放文件的物理信息,,使用目錄項(xiàng)dentry存放文件的邏輯信息,其整體架構(gòu)如下,。

l  Linux設(shè)備驅(qū)動(dòng)簡(jiǎn)介

上面的介紹很簡(jiǎn)單,,僅僅是對(duì)這些子系統(tǒng)的概念什么的進(jìn)行了簡(jiǎn)介,下面我們對(duì)linux設(shè)備驅(qū)動(dòng)進(jìn)行簡(jiǎn)單介紹。

1.       設(shè)備驅(qū)動(dòng)分類

Linux分為下面三種基本設(shè)備,。

a)      字符設(shè)備

是一種按照字節(jié)來訪問的設(shè)備,,字符設(shè)備適用于大多數(shù)的簡(jiǎn)單硬件。常見的LED,、按鍵等

b)      塊設(shè)備

是一種以塊(通常為512字節(jié))為最小訪問單位的設(shè)備,,常見的硬盤、SD卡等,。linux中對(duì)塊沒有大小限制,,可以訪問任意數(shù)目的字節(jié)。

c)      網(wǎng)絡(luò)設(shè)備

用來負(fù)責(zé)發(fā)送和接收?qǐng)?bào)文的設(shè)備,,比如網(wǎng)卡,。

 

今天的簡(jiǎn)單分析就先到這里,我以后會(huì)慢慢的伴隨著驅(qū)動(dòng)的開發(fā)去分析內(nèi)核,,感謝大家的關(guān)注,。

 





    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,,不代表本站觀點(diǎn),。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式,、誘導(dǎo)購買等信息,,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,,請(qǐng)點(diǎn)擊一鍵舉報(bào),。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多