回覆列表
-
1 # 使用者8589730223698
-
2 # 小梁很不錯
io不包括什麼,也沒有這個說法
什麼是IO
1 直觀理解
IO是Input、Output的簡稱,即輸入輸出。滑鼠鍵盤是向計算機輸入資訊,顯示器是輸出裝置,接收計算機的輸出並顯示。
2 從計算機的組織架構理解
計算機的核心(CPU和記憶體),與其它裝置之間資料轉移的過程就是IO。比如資料從磁碟讀入到記憶體,或記憶體的資料寫回到磁碟,都是IO操作。在計算機的世界裡,這就是IO的本質。
3 從程式設計的角度理解
應用程式的IO操作有兩種:IO呼叫和IO執行。IO呼叫是程序發起的,IO執行是作業系統的工作,因此,這裡說的IO是應用程式對作業系統IO功能的觸發。
因此,應用程式裡IO呼叫的目的是將程序的內部資料輸出到外部,或將外部資料輸入到程序內部。這裡的外部指的是非程序空間資料。
舉例,一個程序的IO輸入操作流程如下:
a)程序向作業系統請求外部資料
b)作業系統將資料從外部磁碟複製到記憶體緩衝區
c)作業系統將資料從記憶體緩衝區複製到程序緩衝區
d)程序讀取資料進行操作
I/O輸入/輸出(Input/Output),分為IO裝置和IO介面兩個部分。 在POSIX相容的系統上,例如Linux系統[1],I/O操作可以有多種方式,比如DIO(Direct I/O),AIO(Asynchronous I/O,非同步I/O),Memory-Mapped I/O(記憶體對映I/O)等,不同的I/O方式有不同的實現方式和效能,在不同的應用中可以按情況選擇不同的I/O方式。