日本黄色一级经典视频|伊人久久精品视频|亚洲黄色色周成人视频九九九|av免费网址黄色小短片|黄色Av无码亚洲成年人|亚洲1区2区3区无码|真人黄片免费观看|无码一级小说欧美日免费三级|日韩中文字幕91在线看|精品久久久无码中文字幕边打电话

當(dāng)前位置:首頁(yè) > 嵌入式 > 嵌入式教程
[導(dǎo)讀]從這里可以看出當(dāng)運(yùn)行ifconfig 這個(gè)命令,操作系統(tǒng)就會(huì)通過顯示器輸出網(wǎng)卡相關(guān)信息,現(xiàn)在我們?cè)倩剡^頭去理解上圖從鍵盤到終端處理程序的這個(gè)過程,我們從鍵盤輸入命令,然后交給操作系統(tǒng)內(nèi)核執(zhí)行之后在輸出這樣一個(gè)過程,因此我們將這里的這里的鍵盤叫標(biāo)準(zhǔn)輸入,而輸出的結(jié)果通過顯示器顯示出來(lái)叫標(biāo)準(zhǔn)輸出。

先給大家看一個(gè)很熟悉的例子:

[root@testLinux ~]# ifconfig --查看網(wǎng)卡相關(guān)信息。

從這里可以看出當(dāng)運(yùn)行ifconfig 這個(gè)命令,操作系統(tǒng)就會(huì)通過顯示器輸出網(wǎng)卡相關(guān)信息,現(xiàn)在我們?cè)倩剡^頭去理解上圖從鍵盤到終端處理程序的這個(gè)過程,我們從鍵盤輸入命令,然后交給操作系統(tǒng)內(nèi)核執(zhí)行之后在輸出這樣一個(gè)過程,因此我們將這里的這里的鍵盤叫標(biāo)準(zhǔn)輸入,而輸出的結(jié)果通過顯示器顯示出來(lái)叫標(biāo)準(zhǔn)輸出,再來(lái)看下一個(gè)命令的輸出結(jié)果

[root@testLinux ~]# cat /etc/cmss 由于這個(gè)文件夾不存在,因此系統(tǒng)輸出了錯(cuò)誤的輸出,那么我們就稱這種輸出叫標(biāo)準(zhǔn)錯(cuò)誤輸出。

由于linux 系統(tǒng)的特性,所有設(shè)備都用文件表示,因此上圖的鍵盤(標(biāo)號(hào)1)作為標(biāo)準(zhǔn)輸入設(shè)備,它 在linux 里面用/dev/stdin 文件表示,標(biāo)準(zhǔn)輸出設(shè)備 (標(biāo)號(hào)3) 即為顯示器用/dev/stdout 文件表示,而標(biāo)準(zhǔn)錯(cuò)誤輸出設(shè)備(標(biāo)號(hào)4)用/dev/stderr文件表示。

1)標(biāo)準(zhǔn)輸入(STDIN) ,文件位置: /dev/stdin ,文件描述符為0

2) 標(biāo)準(zhǔn)輸出 (STDOUT),文件位置:/dev/stdout , 文件描述符表示為1

3) 標(biāo)準(zhǔn)錯(cuò)誤 (STDERR),文件位置:/dev/stderr 文件描述符表示為2

那么這里何為文件描述符呢?

我們知道操作系統(tǒng)運(yùn)行一個(gè)命令或者軟件,操作系統(tǒng)會(huì)為該命令或者軟件分配一個(gè)進(jìn)程,為了區(qū)分不同的進(jìn)程操作系統(tǒng)使用進(jìn)程號(hào)表示,那怎么知道這些進(jìn)程操作了那些文件呢,因此就使用文件描述符表示操作系統(tǒng)操作的哪些文件,下面以一個(gè)例子說(shuō)明。

例如:在后臺(tái)一直運(yùn)行這個(gè)命令

[root@testLinux network-scripts]# tail -f /etc/sysconfig/network-scripts/ifcfg-ens33

查看該命令對(duì)應(yīng)的進(jìn)程號(hào):通過 ps 命令查看到該命令對(duì)應(yīng)的進(jìn)程號(hào)是 7280

接下里查看該進(jìn)程操作的文件

[root@testLinux network-scripts]# cd /proc/7280/fd

這個(gè)目錄下面對(duì)應(yīng)的文件即為進(jìn)程號(hào)7280操作的文件,用0,1,2,3...這樣的數(shù)字表示,這些數(shù)字也是文件只不過是鏈接文件而已,這里的數(shù)字有一個(gè)專門的名稱叫文件描述符,從這里可以得出一個(gè)操作系統(tǒng)內(nèi)核分配一個(gè)進(jìn)程的路徑是這樣的,在/proc/進(jìn)程號(hào)/fd/ ,fd下面即為該命令或者程序操作的文件。

下面再來(lái)看一個(gè)進(jìn)程號(hào)為7349操作的文件

從圖中可以看出該進(jìn)程操作的磁盤文件是/etc/passwd,同樣這里還是有0,1,2 三個(gè)文件,因此這里可以得出的結(jié)論是無(wú)論進(jìn)程操作的文件是怎樣的,標(biāo)準(zhǔn)輸入,標(biāo)準(zhǔn)輸出,標(biāo)準(zhǔn)錯(cuò)誤輸出這三個(gè)文件都是必須要的,他們分別代表鍵盤,顯示器,這里有個(gè)難以理解的點(diǎn)在于,標(biāo)準(zhǔn)輸出和標(biāo)準(zhǔn)錯(cuò)誤輸出設(shè)備默認(rèn)也是指顯示器,只是為了區(qū)別用了不同的文件表示而已。

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除( 郵箱:macysun@21ic.com )。
換一批
延伸閱讀
關(guān)閉