linux s類型文件是什么

linux中,s類型文件是指“套接字文件(socket)”,它是一種特殊的文件,用于進程之間的通信;可以通過這個文件來初始化一種網絡協議,然后就可以通過一系列的函數來對這個網絡協議進行初始化、傳輸等等操作。

linux s類型文件是什么

本教程操作環境:linux5.9.8系統、Dell G3電腦。

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

文件類型 說明
b 塊設備,是一些提供系統存取數據的接口設備,例如硬盤。
c 字符設備,是一些串行端口的接口設備,例如鍵盤、鼠標、打印機、tty終端。
d 目錄,類似于Windows的文件夾。
l

鏈接文件,類似于Windows的快捷方式。

s 套接字文件(socket),用于進程之間的通信。
文件,分純文本文件(ASCII)和二進制文件(binary)。

socket套接字作為一種特殊的文件,可以通過這個socket來初始化一種網絡協議,然后就可以通過一系列的函數(write/read/accept)來對這個網絡協議進行初始化、傳輸等等操作

socket定義

Socket是應用層與TCP/IP協議族通信的中間軟件抽象層,它是一組接口。在設計模式中,Socket其實就是一個門面模式,它把復雜的TCP/IP協議族隱藏在Socket接口后面,對用戶來說,一組簡單的接口就是全部,讓Socket去組織數據,以符合指定的協議

socket在Linux內核中的結構

socket在內核中其實就是一個結構體。這個結構體包含有ip、port、state、size等成員,這些成員都是用來初始化套接字的詳細信息的,但是我們無法直接使用這些成員。因此Linux提供了相應的接口函數給我調用,我們通過這些函數來初始化socket結構體內的成員

linux s類型文件是什么

結構體中

  • ip、port:初始化IP地址和端口號

  • state:當前網絡服務的狀態(監聽/非監聽)

  • size:最大可連接的數量

因為這些結構體成員我們不可能直接操作,所以Linux提供了相應的接口函數給我們調用,來操作這些成員

  • bind():綁定ip與端口號

  • listen():監聽

  • ….等等還有很多其他函數

相關推薦:《Linux視頻教程

以上就是

? 版權聲明
THE END
喜歡就支持一下吧
點贊11 分享