虛擬儲存器技術主要用於解決什麼問題?簡述虛擬儲存器的基本工作

2022-02-09 03:55:59 字數 5210 閱讀 5507

1樓:

虛擬儲存器可以分為三類:頁式、段式和段頁式。本節我們主要學習頁式虛擬儲存器。

在頁式虛擬儲存器中通過把主存空間和程式空間都機械等分成固定大小的頁(頁面大小隨機器而定,一般為4kb到4mb),按頁順序編號,用相應的映像表機構來指明該程式的某頁是否已經裝入主存。若已經裝入主存,則應同時指明其在主存中所處的位置;如果未裝入主存,則去輔存中調頁,並建立起程式空間和實存空間的位址映像關係。這樣,程式執行時通過查映像表將程式位址(虛擬位址)變換成實際主存位址(實體地址)再訪問主存。

此儲存系統具有主存的速度和輔存的容量,提高了儲存器系統的效能**比。cpu直接訪問主存,主存與輔存之間的資訊交換由作業系統和硬體來完成,這種把輔存看作是主存的一部分,以擴大主存容量的技術,稱之為虛擬技術。用虛擬技術設計的儲存器,稱為虛擬儲存器。

這些主存與輔存之間實際存在的操作和輔助軟、硬體,對應用程式設計者來講是透明的。但虛擬儲存器對系統程式設計師來講基本上是不透明的,只是某些部分(如虛擬位址到主存位址的變換)由於採用硬體實現才是透明的。

虛擬位址----又稱邏輯位址,是指訪問虛擬空間的位址。由於指令中給出的位址碼是按虛存空間來統一編址的,因此指令的位址碼實際上是虛擬位址。

實體地址----是指訪問主存空間的位址

虛擬儲存器

虛擬儲存器

virtual memory

為了給使用者提供更大的隨機訪問空間而採用的一種儲存技術。它將記憶體與外存結合使用,好像有乙個容量極大的記憶體儲器,工作速度接近於主存,每位成本又與輔存相近,在整機形成多層次儲存系統。

虛擬儲存器源出於英國atlas計算機的一級儲存器概念。這種系統的主存為16千字的磁芯儲存器,但**處理器可用20位邏輯位址對主存定址。到2023年,美國rca公司研究成功虛擬儲存器系統。

ibm公司於2023年在ibm370系統上全面採用了虛擬儲存技術。虛擬儲存器已成為計算機系統中非常重要的部分。

虛擬儲存器是由硬體和作業系統自動實現儲存資訊排程和管理的。它的工作過程包括6個步驟:①**處理器訪問主存的邏輯位址分解成組號a和組內位址b,並對組號a進行位址變換,即將邏輯組號a作為索引,查位址變換表,以確定該組資訊是否存放在主存內。

②如該組號已在主存內,則轉而執行④;如果該組號不在主存內,則檢查主存中是否有空閒區,如果沒有,便將某個暫時不用的組調出送往輔存,以便將這組資訊調入主存。③從輔存讀出所要的組,並送到主存空閒區,然後將那個空閒的物理組號a和邏輯組號a登入在位址變換表中。④從位址變換表讀出與邏輯組號a對應的物理組號a。

⑤從物理組號a和組內位元組位址b得到實體地址。⑥根據實體地址從主存中訪問必要的資訊。

排程方式有分頁式、段式、段頁式3種。頁式排程是將邏輯和實體地址空間都分成固定大小的頁。主存按頁順序編號,而每個獨立編址的程式空間有自己的頁號順序,通過排程輔存中程式的各頁可以離散裝入主存中不同的頁面位置,並可據表一一對應檢索。

頁式排程的優點是頁內零頭小,頁表對程式設計師來說是透明的,位址變換快,調入操作簡單;缺點是各頁不是程式的獨立模組,不便於實現程式和資料的保護。段式排程是按程式的邏輯結構劃分位址空間,段的長度是隨意的,並且允許伸長,它的優點是消除了記憶體零頭,易於實現儲存保護,便於程式動態裝配;缺點是調入操作複雜。將這兩種方法結合起來便構成段頁式排程。

在段頁式排程中把物理空間分成頁,程式按模組分段,每個段再分成與物理空間頁同樣小的頁面。段頁式排程綜合了段式和頁式的優點。其缺點是增加了硬體成本,軟體也較複雜。

大型通用計算機系統多數採用段頁式排程。

虛擬儲存器位址變換基本上有3種形虛擬儲存器工作過程式:全聯想變換、直接變換和組聯想變換。任何邏輯空間頁面能夠變換到物理空間任何頁面位置的方式稱為全聯想變換。

每個邏輯空間頁面只能變換到物理空間乙個特定頁面的方式稱為直接變換。組聯想變換是指各組之間是直接變換,而組內各頁間則是全聯想變換。

替換規則用來確定替換主存中哪一部分,以便騰空部分主存,存放來自輔存要調入的那部分內容。常見的替換演算法有4種。①隨機演算法:

用軟體或硬體隨機數產生器確定替換的頁面。②先進先出:先調入主存的頁面先替換。

③近期最少使用演算法:替換最長時間不用的頁面。④最優演算法:

替換最長時間以後才使用的頁面。這是理想化的演算法,只能作為衡量其他各種演算法優劣的標準。

虛擬儲存器的效率是系統效能評價的重要內容,它與主存容量、頁面大小、命中率,程式區域性性和替換演算法等因素有關。

虛擬儲存管理的基本原理是什麼

2樓:匿名使用者

虛擬儲存器的概念 為解決記憶體小而作業大、作業多的矛盾, 以及執行過程中只是把當前執行需要的那部分程式和資料裝入記憶體。 所以,作業系統把各級儲存器統一管理起來。

就是說, 應該把乙個程式當前正在使用的部分放在記憶體, 而其餘部分放在磁碟上,就啟動執行它。

作業系統根據程式執行時的要求和記憶體的實際使用情況, 隨機地對每個程式進行換入/換出。 這樣, 就給使用者提供乙個比正式的記憶體空間大的多的位址空間, 這就是虛擬儲存器。

所謂虛擬儲存器是使用者能作為可編址記憶體對待的儲存空間, 在這種計算機系統中虛位址被對映成實位址。

簡單地說,虛擬儲存器:是由作業系統提供的乙個假想的特大儲存器。

就是說, 虛擬儲存器並不是實際的記憶體,它的大小比記憶體空間大的多;

使用者感覺所能使用的「記憶體」非常大, 但這是作業系統對物理記憶體的擴充。 它的物質基礎是:

二級儲存器結構、和動態位址轉換(dat)。

機構虛擬儲存器的基本特徵:

虛擬擴充。 虛擬儲存器不是物理上擴充記憶體空間, 而是邏輯上擴充了記憶體容量。 部分裝入。

每個作業不是全部一次的裝入記憶體, 而是分成若干部分。 離散分配。 乙個作業分成多個部分,沒有全部裝入記憶體。

即使裝入記憶體的那些部分也不必佔用連續的記憶體空間, 而是「見縫插針」。 多次對換。

在乙個程序執行期間, 它所需的全部程式和數就要分成多次調入記憶體。

注意:虛擬儲存器的容量雖然提供了特大的位址空間, 使用者在程式設計時一般不應考慮可用空間有多大。 但是, 虛擬儲存器的容量不是無限大的。

它主要受兩方面的限制:

(1)機器指令中表示位址的二進位製數是有限的;

(2)外存的容量也是有限的。

3樓:麻樂隔壁的

儲存虛擬化,把不同的硬體抽象出來,以管理工具來實現統一的管理,不必再管後端的介質到底是什麼。

虛擬儲存器基於什麼原理

虛擬儲存器有什麼作用

4樓:匿名使用者

通常人們所說的cache就是指快取sram。 sram叫靜態記憶體,「靜態」指的是當我們將一筆資料寫入sram後,除非重新寫入新資料或關閉電源,否則寫入的資料保持不變。由於cpu的速度比記憶體和硬碟的速度要快得多,所以在訪問資料時會使cpu等待,影響計算機的速度。

sram的訪問速度比其它記憶體和硬碟都要快,所以它被用作電腦的快取記憶體(cache)。 有了快取記憶體,可以先把資料預寫到其中,需要時直接從它讀出,這就縮短了cpu的等待時間。快取記憶體之所以能提高系統的速度是基於一種統計規律,主機板上的控制系統會自動統計記憶體中哪些資料會被頻繁的使用,就把這些資料存在快取記憶體中,cpu要訪問這些資料時,就會先到cache中去找,從而提高整體的執行速度。

一般說來,256k的快取記憶體能使整機速度平均提高10%左右 所謂虛擬儲存器就是 把內外存統一起來使用,起基本思想是把正在是用的部分保留在記憶體中。把暫時不用的部分防在外村中,使用時調入記憶體,虛擬儲存器的容量與cpu的位址結構有關,如奔騰的位址位是32位,那麼他的定址空間就是2的32次方,4gb,就是說他的最大定址空間是4gb。相似之處:

①把程式中最近常用的部分駐留在高速的儲存器中; ②一旦這部分變得不常用了,把它們送回到低速的儲存器中; ③這種換入換出是由硬體或作業系統完成的,對使用者是透明的; ④力圖使儲存系統的效能接近高速儲存器,**接近低速儲存器。主要區別:在虛擬儲存器中未命中的效能損失要遠大於cache系統中未命中的損失。

5樓:匿名使用者

虛擬記憶體的作用 內存在計算機中的作用很大,電腦中所有執行的程式都需要經過記憶體來執行,如果執行的程式很大或很多,就會導致記憶體消耗殆盡。為了解決這個問題,window 虛擬儲存器s中運用了虛擬記憶體技術,即拿出一部分硬碟空間來充當記憶體使用,當記憶體佔用完時,電腦就會自動呼叫硬碟來充當記憶體,以緩解記憶體的緊張。舉乙個例子來說,如果電腦只有128mb物理記憶體的話,當讀取乙個容量為200mb的檔案時,就必須要用到比較大的虛擬記憶體,檔案被記憶體讀取之後就會先儲存到虛擬記憶體,等待記憶體把檔案全部儲存到虛擬記憶體之後,跟著就會把虛擬記憶體裡儲存的檔案釋放到原來的安裝目錄裡了。

什麼是虛擬記憶體,簡述其工作原理

6樓:

虛擬記憶體是計算機系統記憶體管理的一種技術。它使得應用程式認為它擁有連續的可用的記憶體(乙個連續完整的位址空間),而實際上,它通常是被分隔成多個物理記憶體碎片,還有部分暫時儲存在外部磁碟儲存器上,在需要時進行資料交換。目前,大多數作業系統都使用了虛擬記憶體,如windows家族的「虛擬記憶體」;linux的「交換空間」等。

windows 8/8.1 作業系統如出現開機時卡在windows徽標頁面,無法進入系統,必須強制關機再重啟才能開啟時,可適當調整虛擬記憶體設定解決。

虛擬儲存器是由硬體和作業系統自動實現儲存資訊排程和管理的。它的工作過程包括6個步驟:

①**處理器訪問主存的邏輯位址分解成組號a和組內位址b,並對組號a進行位址變換,即將邏輯組號a作為索引,查位址變換表,以確定該組資訊是否存放在主存內。

②如該組號已在主存內,則轉而執行④;如果該組號不在主存內,則檢查主存中是否有空閒區,如果沒有,便將某個暫時不用的組調出送往輔存,以便將這組資訊調入主存。

③從輔存讀出所要的組,並送到主存空閒區,然後將那個空閒的物理組號a和邏輯組號a登入在位址變換表中。

④從位址變換表讀出與邏輯組號a對應的物理組號a。

⑤從物理組號a和組內位元組位址b得到實體地址。

⑥根據實體地址從主存中訪問必要的資訊。

排程方式有分頁式、段式、段頁式3種。頁式排程是將邏輯和實體地址空間都分成固定大小的頁。主存按頁順序編號,而每個獨立編址的程式空間有自己的頁號順序,通過排程輔存中程式的各頁可以離散裝入主存中不同的頁面位置,並可據表一一對應檢索。

頁式排程的優點是頁內零頭小,頁表對程式設計師來說是透明的,位址變換快,調入操作簡單;缺點是各頁不是程式的獨立模組,不便於實現程式和資料的保護。段式排程是按程式的邏輯結構劃分位址空間,段的長度是隨意的,並且允許伸長,它的優點是消除了記憶體零頭,易於實現儲存保護,便於程式動態裝配;缺點是調入操作複雜。將這兩種方法結合起來便構成段頁式排程。

在段頁式排程中把物理空間分成頁,程式按模組分段,每個段再分成與物理空間頁同樣小的頁面。段頁式排程綜合了段式和頁式的優點。其缺點是增加了硬體成本,軟體也較複雜。

大型通用計算機系統多數採用段頁式排程。

請問linux系統最主要用於什麼

過去,linux主要被用作伺服器的作業系統,因為它的廉價 靈活性及unix背景。傳統上,以linux為基礎的 lamp linux,apache,mysql,perl php python的組合 技術,除了已在開發者群體中廣泛流行,它亦是現時提供 服務 商最常使用的平台。基於其低廉成本與高度可設定性...

防水聯結器防水接頭主要用於哪些行業,哪些行業用的更多

防水接頭顧名思義,是一款用來防水的聯結器裝置。產品廣泛應用於led燈具 驅動電源 感應潔具 家具 城市戶外照明工程 機械 環保 汽車 建築 船舶等行業領域 產業資訊是什麼意思 計算機和通訊裝置行業為主體的it產業,我們通常稱之為資訊產業,又稱為第四產業。中國產業資訊網的介紹 中國產業bai資訊網是由...

整合牆面主要用於什麼裝修,家裡裝修用整合牆面怎麼樣?

a 相對於普通裝修,在人工方面節約成本在2萬左右 由於裝修概念不同,節約成本不同,此資料無法直接定義 b 材料方面,相對於牆紙,牆紙在工藝處理時,毛坯房表面處理工序過多,人工成本投入較大,本產品基本對毛坯房表面不予處理,可直接安裝 牆紙在安裝之後,不易表面清洗,本產品由於牆紙 實際使用過程中,適合家...