快取和記憶體,磁碟的關係

2021-07-07 11:04:31 字數 3584 閱讀 3956

快取嚴格來說就是一種臨時儲存,和記憶體原理上沒有什麼區別。

因為在大資料交換中,儲存器不能及時和運算器、控制器交換資料的話,就會出現問題,所以人們發明了快取。

說白了假設運算器和控制器是工廠,儲存器(比如硬碟、光碟機等)是大倉庫的話,記憶體就是乙個大型中轉中心(當然它也是倉庫,但是是乙個大型的中轉倉庫),快取就是相當於乙個個的臨時小倉庫。

在電腦裡面,廣義的說,快取分為兩類:

一類是進行大量運算用的大型儲存器,可以臨時儲存大量資料,部分的分擔了硬碟的任務,是大型儲存器(包括光碟機、硬碟等)和cpu以及主機板控制器之間的乙個大型資料周轉倉庫。只要不斷電,大量的資料就可以隨時訪問,速度遠遠快於硬碟等裝置——這就是記憶體。

二類就是儲存器以及cpu自帶的「小倉庫」,硬碟有快取,光碟機有快取,cpu出於高速運算得需要,也有快取。cpu的快取,一般是一級、二級快取(我們叫它l1和l2cache),有的cpu甚至有了**快取。

顯示卡的視訊記憶體實際上和記憶體非常類似,我們把它歸為第一類快取。

硬碟實際上和軟碟機、光碟機一樣,屬於大型外部儲存裝置。他們和快取的最大區別就在於能夠儲存大量的資料,並且斷電之後資料不消失。

作業系統的任務主要是合理地調配系統的各種資源,為各種程式的執行提供環境,它可以看作是硬體和應用軟體之間的乙個媒介。其中對記憶體的管理是系統的最主要的職責,怎麼樣使有限的記憶體用在刀刃上,怎麼要保證系統本身所需的記憶體(以防止宕機,在win2000和winxp裡這一點已經做的非常好了 快取是cpu的一部分,它存在於cpu中

cpu訪問資料的速度非常的快,一秒鐘能夠訪問、處理十億條指令和資料(術語:cpu主頻1g),而記憶體就慢很多,快的記憶體能夠達到幾十兆就不錯了,可見兩者的速度差異是多麼的大

快取是為了解決cpu速度和記憶體速度的速度差異問題

記憶體中被cpu訪問最頻繁的資料和指令被複製入cpu中的快取,這樣cpu就可以不經常到象「蝸牛」一樣慢的記憶體中去取資料了,cpu只要到快取中去取就行了,而快取的速度要比記憶體快很多什麼是快取區容量?在combo中快取區容量指的是什麼?是不是數字越大,**便越高,並且效能越高,刻壞的機率越小

這裡要特別指出的是:

1.因為快取只是記憶體中少部分資料的複製品,所以cpu到快取中尋找資料時,也會出現找不到的情況(因為這些資料沒有從記憶體複製到快取中去),這時cpu還是會到記憶體中去找資料,這樣系統的速度就慢下來了,不過cpu會把這些資料複製到快取中去,以便下一次不要再到記憶體中去取。

2.因為隨著時間的變化,被訪問得最頻繁的資料不是一成不變的,也就是說,剛才還不

頻繁的資料,此時已經需要被頻繁的訪問,剛才還是最頻繁的資料,現在又不頻繁了,

所以說快取中的資料要經常按照一定的演算法來更換,這樣才能保證快取中的資料是被訪

問最頻繁的

3.關於一級快取和二級快取

為了分清這兩個概念,我們先了解一下ram

ram和rom相對的,ram是掉電以後,其中才資訊就消失那一種,rom在掉電以後資訊也不會消失那一種

ram又分兩種,

一種是靜態ram,sram;一種是動態ram,dram。前者的儲存速度要比後者快得多,我們 現在使用的記憶體一般都是動態ram。

有的菜鳥就說了,為了增加系統的速度,把快取擴大不就行了嗎,擴大的越大,快取的

資料越多,系統不就越快了嗎

快取通常都是靜態ram,速度是非常的快,

但是靜態ram整合度低(儲存相同的資料,靜態ram的體積是動態ram的6倍),

**高(同容量的靜態ram是動態ram的四倍),

由此可見,擴大靜態ram作為快取是乙個非常愚蠢的行為,

但是為了提高系統的效能和速度,我們必須要擴大快取,

這樣就有了乙個折中的方法,不擴大原來的靜態ram快取,而是增加一些高速動態ram做 為快取,

這些高速動態ram速度要比常規動態ram快,但比原來的靜態ram快取慢,

我們把原來的靜態ram快取叫一級快取,而把後來增加的動態ram叫二級快取。

一級快取和二級快取中的內容都是記憶體中訪問頻率高的資料的複製品(對映),它們的

存在都是為了減少高速cpu對慢速記憶體的訪問。

通常cpu找資料或指令的順序是:先到一級快取中找,找不到再到二級快取中找,如果還找不到就只有到記憶體中找了

2.賽揚處理器與奔騰處理器的區別再**?

賽揚處理器與奔騰處理器在運算核心上完全相同,不同的地方是二級快取的大小不同。現有的台式電腦處理器p4的二級快取大小是512kb,而p4賽揚的二級快取大小是128kb。在筆記本上用的奔騰-m處理器的二級快取大小是1mb,新出的賽揚m處理器的二級快取大小是512kb,跟p4的一樣。奔騰-m和賽揚m處理器除了二級快取大小不同外,其餘地方一樣。什麼是二級快取?它是幹什麼用的? 二級快取又叫l2 cache,它是處理器內部的一些緩衝儲存器,其作用跟記憶體一樣。 它是怎麼出現的呢? 要上溯到上個世紀80年代,由於處理器的執行速度越來越快,慢慢地,處理器需要從記憶體中讀取資料的速度需求就越來越高了。然而記憶體的速度提公升速度卻很緩慢,而能高速讀寫資料的記憶體**又非常高昂,不能大量採用。從效能**比的角度出發,英特爾等處理器設計生產公司想到乙個辦法,就是用少量的高速記憶體和大量的低速記憶體結合使用,共同為處理器提供資料。這樣就兼顧了效能和使用成本的最優。而那些高速的記憶體因為是處於cpu和記憶體之間的位置,又是臨時存放資料的地方,所以就叫做緩衝儲存器了,簡稱「快取」。它的作用就像倉庫中臨時堆放貨物的地方一樣,貨物從運輸車輛上放下時臨時堆放在快取區中,然後再搬到內部儲存區中長時間存放。貨物在這段區域中存放的時間很短,就是乙個臨時貨場。最初快取只有一級,後來處理器速度又提公升了,一級快取不夠用了,於是就新增了二級快取。二級快取是比一級快取速度更慢,容量更大的記憶體,主要就是做一級快取和記憶體之間資料臨時交換的地方用。現在,為了適應速度更快的處理器p4ee,已經出現了**快取了,它的容量更大,速度相對二級快取也要慢一些,但是比記憶體可快多了。 快取的出現使得cpu處理器的執行效率得到了大幅度的提公升,這個區域中存放的都是cpu頻繁要使用的資料,所以快取越大處理器效率就越高,同時由於快取的物理結構比記憶體複雜很多,所以其成本也很高。

什麼叫虛擬記憶體,它與快取有什麼異同呢 虛擬記憶體是windows作業系統用來管理記憶體的一種方法

虛擬記憶體說穿了就是把記憶體中的資訊分出去一部分存在硬碟上

這樣從表面上看就擴大了記憶體容量(難怪記憶體中存了這麼多東西,原來有一部分被轉到了硬碟上)

我們知道記憶體中存有很多資料和指令,但是這些資料和指令被訪問的頻率是不同的,有些要被經常訪問,有些卻被cpu冷落windows 是個落井下石的壞東西,它大聲的說:既然你們被cpu冷落了,乾脆把你們打入冷宮吧。於是這些被訪問頻率低或者不被訪問的資料從記憶體中被趕到了硬碟上。但windows並非鐵石心腸,它還說:如果cpu需要訪問你們時,我就把你們送入記憶體,如果你們更加熱門的時候,就可能被cpu帶入快取,如果你們被重新冷落時,我就會無情的把你們再打入冷宮。

而那個冷宮就是硬碟上的虛擬記憶體。如果你剛才還不知道什麼是虛擬記憶體是什麼東西時,那麼現在呢?

虛擬記憶體和快取有什麼區別呢

它們的原理都是區域性時間內被訪問的記憶體位址具有區域性性。

現在我們來看看它們的區別。

1.快取是一種硬體,是cpu的一部分;而虛擬記憶體並不是一種硬體,而是存在於硬碟上的乙個檔案,是根據windows的要求生成的(二者中的資訊都是隨時變化的)

2.快取的目的是加快系統的速度,而虛擬記憶體技術是為了使更多的程式能夠在有限的記憶體中執行。

快取和CPU和記憶體和磁碟的關係

在選購cpu總聽人說快取,一級快取,二級快取,快取但是這個快取到底是什麼,有什麼作用,他與記憶體到底有什麼關係,我們今天就來 一下,我主要目的是學習,寫文章也是讓學習更深入,說的不好大家見諒 快取是購買cpu非常重要的乙個引數,它的大小直接關係cpu的讀取速度,快取是介於記憶體與cpu之間的儲存器,...

CPU 快取 記憶體和本地磁碟的關係

cpucpu是 處理器的簡稱,它可以從記憶體和快取中讀取指令,放入指令暫存器,並能夠發出控制指令來完成一條指令的執行。但是cpu並不能直接從硬碟中讀取程式或資料。記憶體記憶體作為與cpu直接進行溝通的部件,所有的程式都是在記憶體中執行的。其作用是暫時存放cpu的運算資料,以及與硬碟交換的資料。也是相...

iOS記憶體快取和磁碟快取的區別

快取分為記憶體快取和磁碟快取兩種,其中記憶體是指當前程式的執行空間,快取速度快容量小,是臨時儲存檔案用的,供cpu直接讀取,比如說開啟乙個程式,他是在記憶體中儲存,關閉程式後記憶體就又回到原來的空閒空間 磁碟是程式的儲存空間,快取容量大速度慢可持久化與記憶體不同的是磁碟是永久儲存東西的,只要裡面存放...