硬連接配接
硬連接配接是指通過索引結點來進行連接配接。在Linux的檔案系統中,儲存在磁盤分區中的檔案不管是什麼類型都給它配置設定一個編号,稱為索引結點号(inode index)。在Linux中,多個檔案名指向同一個索引節點是存在的。一般這種連接配接就是硬連接配接。
硬連接配接的作用是允許一個檔案擁有多個有效路徑名,這樣使用者就可以建立硬連接配接到重要檔案,以防止“誤删”操作。因為對應該目錄的索引節點有一個以上的連接配接,隻删除一個連接配接并不影響索引節點本身和其他的連接配接,隻有當最後一個連接配接被删除後,檔案的資料塊及目錄的連接配接才會被釋放。也就是說,檔案真正删除的條件是與之相關的所有硬連接配接檔案均被删除。

由于硬連接配接是有着相同 inode 号僅檔案名不同的檔案,是以硬連接配接存在以下幾點特性:
- 檔案有相同的 inode 及 data block
- 隻能對已存在的檔案進行建立
- 不能交叉檔案系統進行硬連接配接的建立
- 不能對目錄進行建立,隻可對檔案建立
- 删除一個硬連接配接檔案并不影響其他有相同 inode 号的檔案
軟連結
軟連結接又叫符号連結,這個檔案包含了另一個檔案的路徑名。可以是任意檔案或目錄。可以連結不同檔案系統的檔案。軟連結檔案隻是其源檔案的一個标記,當删除了源檔案後,連結檔案不能獨立存在,雖然仍保留檔案名,但卻不能檢視軟連結檔案的内容。軟連結不直接使用 inode 号作為檔案指針,而是使用檔案路徑名作為指針(軟連結:檔案名+資料部分—>目标檔案的路徑名)。軟體有自己的 inode ,并在磁盤上有一小片空間存放路徑名。是以,軟連結能夠跨檔案系統,也可以和目錄連結。軟連結可以對一個不存在的檔案名進行連結,但直到這個名字對應的檔案被建立後,才能打開其連結。
軟連結就是一個普通檔案,隻是資料塊内容有點特殊。是以,軟連結具有以下幾點特性:
- 軟連結有自己的檔案屬性及權限等
- 可對不存在的檔案或目錄建立軟連結
- 軟連結可交叉檔案系統
- 軟連結可對檔案或目錄建立
- 建立軟連結時,連結計數 i_nlink 不會增加
- 删除軟連結并不影響被指向的檔案,但若被指向的原檔案被删除,則相關軟連接配接被稱為死連結(即 dangling link,若被指向路徑檔案被重新建立,死連結可恢複為正常的軟連結)
編譯型語言與解釋型語言
編譯型語言:先将源代碼編譯成機器代碼,然後機器執行機器碼。執行速度快、效率高,依賴編譯器,跨平台性差。
解釋型語言:源代碼不是直接翻譯成機器語言,而是先翻譯成中間代碼,再由解釋器對中間代碼進行解釋運作。依靠解釋器、跨平台性好,執行速度慢、效率低。