linux c是什么文件

linux c是字符設(shè)備文件;字符設(shè)備是個(gè)能夠像字節(jié)流一樣被訪問(wèn)的設(shè)備,由字符設(shè)備驅(qū)動(dòng)程序來(lái)實(shí)現(xiàn)這種特性;字符設(shè)備驅(qū)動(dòng)程序通常至少要實(shí)現(xiàn)open、close、read和write的系統(tǒng)調(diào)用。

linux c是什么文件

本教程操作環(huán)境:linux5.9.8系統(tǒng)、Dell G3電腦。

linux c是什么文件?

字符設(shè)備。

字符(char)設(shè)備是個(gè)能夠像字節(jié)流(類似文件)一樣被訪問(wèn)的設(shè)備,由字符設(shè)備驅(qū)動(dòng)程序來(lái)實(shí)現(xiàn)這種特性。字符設(shè)備驅(qū)動(dòng)程序通常至少要實(shí)現(xiàn)open、close、read和write的系統(tǒng)調(diào)用。

字符終端(/dev/console)和串口(/dev/ttyS0以及類似設(shè)備)就是兩個(gè)字符設(shè)備,它們能很好的說(shuō)明“流”這種抽象概念。

字符設(shè)備可以通過(guò)文件節(jié)點(diǎn)來(lái)訪問(wèn),比如/dev/tty1和/dev/lp0等。這些設(shè)備文件和普通文件之間的唯一差別在于對(duì)普通文件的訪問(wèn)可以前后移動(dòng)訪問(wèn)位置,而大多數(shù)字符設(shè)備是一個(gè)只能順序訪問(wèn)的數(shù)據(jù)通道。然而,也存在具有數(shù)據(jù)區(qū)特性的字符設(shè)備,訪問(wèn)它們時(shí)可前后移動(dòng)訪問(wèn)位置。例如framebuffer就是這樣的一個(gè)設(shè)備,app可以用mmap或lseek訪問(wèn)抓取的整個(gè)圖像。

在/dev下執(zhí)行l(wèi)s -l ,可以看到很多創(chuàng)建好的設(shè)備節(jié)點(diǎn):

linux c是什么文件

字符設(shè)備文件(類型為c),設(shè)備文件是沒(méi)有文件大小的,取而代之的是兩個(gè)號(hào)碼:主設(shè)備號(hào)5 +次設(shè)備號(hào)1 。

Linux文件類型(b、c、d、l、s、-)

Linux文件類型說(shuō)明

文件類型 說(shuō)明
b 塊設(shè)備,是一些提供系統(tǒng)存取數(shù)據(jù)的接口設(shè)備,例如硬盤。
c 字符設(shè)備,是一些串行端口的接口設(shè)備,例如鍵盤、鼠標(biāo)、打印機(jī)、tty終端。
d 目錄,類似于Windows的文件夾。
l 鏈接文件,類似于Windows的快捷方式。
s 套接字文件(socket),用于進(jìn)程之間的通信。
文件,分純文本文件(ASCII)和二進(jìn)制文件(binary)。
命令 說(shuō)明
file filename 查看文件類型

推薦學(xué)習(xí):《Linux文件類型說(shuō)明

? 版權(quán)聲明
THE END
喜歡就支持一下吧
點(diǎn)贊13 分享