什么是緩存緩存的特點
什么是緩存緩存的特點
緩存就是數據交換的緩沖區(qū),當某一硬件要讀取數據時,會首先從緩存中查找需要的數據,如果找到了則直接執(zhí)行,找不到的話則從內存中找。那么你對緩存了解多少呢?以下是由學習啦小編整理關于什么是緩存的內容,希望大家喜歡!
緩存的特點
緩存是指可以進行高速數據交換的存儲器,它先于內存與CPU交換數據,因此速率很快。L1 Cache(一級緩存)是CPU第一層高速緩存。內置的L1高速緩存的容量和結構對CPU的性能影響較大,不過高速緩沖存儲器均由靜態(tài)RAM組成,結構較復雜,在CPU管芯面積不能太大的情況下,L1級高速緩存的容量不可能做得太大。一般L1緩存的容量通常在32—256KB。L2 Cache(二級緩存)是CPU的第二層高速緩存,分內部和外部兩種芯片。內部的芯片二級緩存運行速率與主頻相同,而外部的二級緩存則只有主頻的一半。L2高速緩存容量也會影響CPU的性能,原則是越大越好,普通臺式機CPU的L2緩存一般為128KB到2MB或者更高,筆記本、服務器和工作站上用CPU的L2高速緩存最高可達1MB-3MB。
緩存只是內存中少部分數據的復制品,所以CPU到緩存中尋找數據時,也會出現(xiàn)找不到的情況(因為這些數據沒有從內存復制到緩存中去),這時CPU還是會到內存中去找數據,這樣系統(tǒng)的速率就慢下來了,不過CPU會把這些數據復制到緩存中去,以便下一次不要再到內存中去取。隨著時間的變化,被訪問得最頻繁的數據不是一成不變的,也就是說,剛才還不頻繁的數據,此時已經需要被頻繁的訪問,剛才還是最頻繁的數據,又不頻繁了,所以說緩存中的數據要經常按照一定的算法來更換,這樣才能保證緩存中的數據是被訪問最頻繁的。
緩存的工作原理
緩存的工作原理是當CPU要讀取一個數據時,首先從CPU緩存中查找,找到就立即讀取并送給CPU處理;沒有找到,就從速率相對較慢的內存中讀取并送給CPU處理,同時把這個數據所在的數據塊調入緩存中,可以使得以后對整塊數據的讀取都從緩存中進行,不必再調用內存。正是這樣的讀取機制使CPU讀取緩存的命中率非常高(大多數CPU可達90%左右),也就是說CPU下一次要讀取的數據90%都在CPU緩存中,只有大約10%需要從內存讀取。這大大節(jié)省了CPU直接讀取內存的時間,也使CPU讀取數據時基本無需等待。總的來說,CPU讀取數據的順序是先緩存后內存。
RAM(Random-Access Memory)和ROM(Read-Only Memory)相對的,RAM是掉電以后,其中的信息就消失那一種,ROM在掉電以后信息也不會消失那一種。RAM又分兩種,一種是靜態(tài)RAM,SRAM(Static RAM);一種是動態(tài)RAM,DRAM(Dynamic RAM)。前者的存儲速率要比后者快得多,使用的內存一般都是動態(tài)RAM。為了增加系統(tǒng)的速率,把緩存擴大就行了,擴的越大,緩存的數據越多,系統(tǒng)就越快了,緩存通常都是靜態(tài)RAM,速率是非常的快, 但是靜態(tài)RAM集成度低(存儲相同的數據,靜態(tài)RAM的體積是動態(tài)RAM的6倍), 價格高(同容量的靜態(tài)RAM是動態(tài)RAM的四倍), 由此可見,擴大靜態(tài)RAM作為緩存是一個非常愚蠢的行為, 但是為了提高系統(tǒng)的性能和速率,必須要擴大緩存, 這樣就有了一個折中的方法,不擴大原來的靜態(tài)RAM緩存,而是增加一些高速動態(tài)RAM做為緩存, 這些高速動態(tài)RAM速率要比常規(guī)動態(tài)RAM快,但比原來的靜態(tài)RAM緩存慢, 把原來的靜態(tài)RAM緩存叫一級緩存,而把后來增加的動態(tài)RAM叫二級緩存。
緩存的功能作用
硬盤的緩存主要起三種作用:
預讀取
當硬盤受到CPU指令控制開始讀取數據時,硬盤上的控制芯片會控制磁頭把正在讀取的簇的下一個或者幾個簇中的數據讀到緩存中(由于硬盤上數據存儲時是比較連續(xù)的,所以讀取命中率較高),當需要讀取下一個或者幾個簇中的數據的時候,硬盤則不需要再次讀取數據,直接把緩存中的數據傳輸到內存中就可以了,由于緩存的速率遠遠高于磁頭讀寫的速率,所以能夠達到明顯改善性能的目的。
寫入
當硬盤接到寫入數據的指令之后,并不會馬上將數據寫入到盤片上,而是先暫時存儲在緩存里,然后發(fā)送一個“數據已寫入”的信號給系統(tǒng),這時系統(tǒng)就會認為數據已經寫入,并繼續(xù)執(zhí)行下面的工作,而硬盤則在空閑(不進行讀取或寫入的時候)時再將緩存中的數據寫入到盤片上。雖然對于寫入數據的性能有一定提升,但也不可避免地帶來了安全隱患——數據還在緩存里的時候突然掉電,那么這些數據就會丟失。對于這個問題,硬盤廠商們自然也有解決辦法:掉電時,磁頭會借助慣性將緩存中的數據寫入零磁道以外的暫存區(qū)域,等到下次啟動時再將這些數據寫入目的地。
臨時存儲
有時候,某些數據是會經常需要訪問的,像硬盤內部的緩存(暫存器的一種)會將讀取比較頻繁的一些數據存儲在緩存中,再次讀取時就可以直接從緩存中直接傳輸。緩存就像是一臺計算機的內存一樣,在硬盤讀寫數據時,負責數據的存儲、寄放等功能。這樣一來,不僅可以大大減少數據讀寫的時間以提高硬盤的使用效率。同時利用緩存還可以讓硬盤減少頻繁的讀寫,讓硬盤更加安靜,更加省電。更大的硬盤緩存,你將讀取游戲時更快,拷貝文件時候更快,在系統(tǒng)啟動中更為領先。
緩存容量的大小不同品牌、不同型號的產品各不相同,早期的硬盤緩存基本都很小,只有幾百KB,已無法滿足用戶的需求。16MB和32MB緩存是現(xiàn)今主流硬盤所采用,而在服務器或特殊應用領域中還有緩存容量更大的產品,甚至達到了64MB、128MB等。大容量的緩存雖然可以在硬盤進行讀寫工作狀態(tài)下,讓更多的數據存儲在緩存中,以提高硬盤的訪問速率,但并不意味著緩存越大就越出眾。緩存的應用存在一個算法的問題,即便緩存容量很大,而沒有一個高效率的算法,那將導致應用中緩存數據的命中率偏低,無法有效發(fā)揮出大容量緩存的優(yōu)勢。算法是和緩存容量相輔相成,大容量的緩存需要更為有效率的算法,否則性能會大大折扣,從技術角度上說,高容量緩存的算法是直接影響到硬盤性能發(fā)揮的重要因素。更大容量緩存是未來硬盤發(fā)展的必然趨勢。
看過“緩存的特點”的人還看了:
1.如何清理IE緩存
2.如何快速釋放內存
3.如何清理網站緩存