忘記從**聽到這樣一句話,unix一切皆檔案。下面是我的理解,這句話真的unix最精髓的一句話!
我在研究管道的時候,用到popen和pclose,這裡popen返回值是file *fp,大多是理解成管道,可以跟子程序的標準輸入輸出重定向,如果這裡把它看成是乙個檔案,那麼無非就是對這個檔案的寫或讀,無非這個檔案限制成唯讀或只寫,兩者不能同時存在,所以我認為管道其實就是乙個檔案。那麼如果吃透了popen,那麼是否可以用乙個檔案代替輸入來控制子程序,或者因此而產生類似的動作。這裡的管道只是冰山一角。
而檔案又都是二進位制檔案。可以對硬體進行管理,操作。
那麼我們常說的檔案格式又是什麼呢? 檔案格式只是一種變化和反變換方式的定義。
這裡僅僅作為乙個思想的開拓,在linux中有些難以理解的地方可以以此句話作為乙個切入點。
譯 在 UNIX 中,一切皆檔案
譯文出自 掘金翻譯計畫 譯者 pmwangyang 為了有計畫的發展架構設計 介面 文化和開發路線,unix 系統明確了一系列統一的概念和創想。這幾點裡面最重要的一點莫過於一句咒語 一切皆檔案 被廣泛認為是 unix 的定義之一。暴露,所以你可以用同一套命令來讀寫 操作磁碟 鍵盤 檔案或網路裝置。這...
lsof 一切皆檔案
一 lsof list open files 是乙個檢視當前系統檔案的工具。在linux環境下,任何事物都以檔案的形式存在,通過檔案不僅僅可以訪問常規資料,還可以訪問網路連線和硬體。如傳輸控制協議 tcp 和使用者資料報協議 udp 套接字等,系統在後台都為該應用程式分配了乙個檔案描述符,該檔案描述...
Linux 一切皆檔案
一切皆是檔案 是 unix linux 的基本哲學之一 不僅普通的檔案,目錄 字元裝置 塊裝置 套接字等在 unix linux 中都是以檔案被對待 它們雖然型別不同,但是對其提供的卻是同一套操作介面。檔案本質就是一種抽象,一般是指對資料的一種抽象。同時,檔案 也表示資料的儲存組織形式。資料庫就是另...