目前硬盤的運行速度還是以MB在進行運算,它的速度遠遠低於CPU和內存
硬盤的物理結構
硬盤是以扇區的方式進行管理的.
以簇爲單位進行讀寫
簇不是固定的大小
一般的, 1簇就是1扇區
1扇區是512字節
如果一個文件是2byte, 那麼這個文件存儲後是512byte
因爲最小單位就是1簇
1簇不能存儲2個不同的文件, 否則會導致一個文件不能正確讀取.
磁盤緩存
磁盤緩存是爲了減少CPU透過I/O讀取磁盤機的次數
最開始的時候, 計算機在使用數據時, 先從硬盤加載.
同時, 將數據放到內存中一份
那麼下一次在使用的時候就從內存中取
這就是早期的磁盤緩存技術
虛擬內存
虛擬內存就是在硬盤上劃出一塊空間來當做內存使用, 代替內存存儲數據.
在執行的時候,物理內存和虛擬內存之間存在數據的互換
交換算法:
分頁式互換: 將程序分爲固定大小的好多頁, 使用的時候加載某一頁或某幾頁, 使用PAGEIN(放入物理內存), PAGEOUT(放入虛擬內存)操作來進行交換.
分段式互換: 將程序分成算法段,數據段等等, 物理內存中只放我們需要用到的段, 用完了在和虛擬內存交換
節約內存的編程方式
函數共用
將公共方法形成動態鏈接庫(dll或so文件)
優點: 動態加載, 內存共享.
數據壓縮
壓縮數據就是通過一定的壓縮算法來把數據壓縮存放