中級資料庫工程師筆記(九) 儲存管理

2021-10-10 00:20:45 字數 1610 閱讀 1887

儲存管理主要是指對記憶體的管理,負責記憶體分配和**,記憶體的保護和擴充。

(1)單一連續分配

(2)固定分割槽分配

(3)動態分割槽分配:按照一定的分配演算法,從空閒分割槽表或空閒分割槽鏈中選出一分割槽分配給該作業。

(4)可重定位分割槽分配(將空閒分割槽向小位址拼接)

(1)頁面與頁表

將乙個程序的邏輯位址空間氛圍若干個大小相等的片稱為頁面或頁,並為各頁加以編號,從0開始。同時把記憶體空間分成與頁面相同大小的若干個儲存塊,稱為塊或頁框。

在為程序分配記憶體時,以塊為單位將程序的若干個頁分別裝入到多個可以不相鄰的物理塊中。程序的最後一頁經常裝不滿一塊而形成「頁內碎片」。

(2)位址變換機構

若給定乙個邏輯位址空間中的位址a,頁面大小為l,則

頁號 p = int [ a / l ]

頁內位址 d = [ a ] mod l

(3)基本分頁式儲存管理的實現

程序的每一頁離散地儲存在記憶體的任一儲存塊中,為方便查詢,系統為每一程序建立一張頁面映像表,簡稱頁表。

頁表實現了從頁號到物理塊號的位址對映。

位址變換機構實現從邏輯位址到實體地址的轉換。

(4)具有快表的位址變換機構

在位址變換機構中,增設乙個具有並行查詢能力的特殊高速緩衝暫存器,稱為「聯想儲存器」或「快表」,解決cpu在每訪問乙個資料時 ,需要兩次訪問記憶體問題。

(1)段表

為使程式正常執行,須在系統中為每個程序建立一張段對映表,簡稱「段表」。每個段在表中占有乙個表項。

(2)位址變換機構

在系統中設定段表暫存器,用於存放段表起始位址和段表長度,以實現從程序的邏輯位址到實體地址的變換。

當段表存放在記憶體中,沒訪問乙個資料看,都需要訪問兩次記憶體,降低了計算機的速率。

解決辦法:設定聯想暫存器,用於儲存最近常用的段表項。

(2)不同點:

分段和分頁儲存管理方式各有優缺點,把兩者結合成一種新的儲存管理方式就是段頁式儲存管理方式。

(1)基本原理

先將使用者程式分成若干段,再把每個段分成若干頁,並為每個段賦予乙個段名。

在段頁式系統中,為了獲得一條指令或資料,需要訪問三次記憶體:

缺點;訪存次數增加兩倍

解決方法:增設高速緩衝暫存器

(1)最佳置換演算法

最佳置換演算法是一種理想化的演算法,具有最好的效能,但難於實現。

其所選擇的被淘汰頁面,將是以後永不再用的,或許是在最長(未來)時間內不再被訪問的頁面。

優點:保證獲得最低的缺頁率

缺點:無法預知乙個程序在記憶體的若干個頁面,哪個在未來最長時間內不再被訪問

(2)先進先出置換演算法

演算法總是淘汰最先進入記憶體的頁面,即選擇在記憶體中駐留時間最久的頁面予以淘汰。

缺點:演算法與程序的實際執行規律不相適應,因為程序中的某些頁面經常被訪問,但先進先出置換演算法不能保證這些頁面不被淘汰。

(3)最近最久未使用(lru)置換演算法

lru置換演算法是選擇最近最久未使用的頁面予以淘汰。

該演算法賦予每個頁面乙個訪問字段,用來記錄乙個頁面自上次被訪問以來所經歷的時間 t ,當需淘汰乙個頁面時,選擇現有頁面中 t 值最大的,即最近最久未使用的頁面予以淘汰。

中級資料庫工程師筆記(一) 計算機系統

計算機硬體組成 控制器 運算器 儲存器 輸入裝置和輸出裝置。1 運算器 alu 對資料進行算數運算和邏輯運算 2 控制器 分析和執行指令的部件 指令暫存器 儲存當前正在執行的這條指令 指令解碼器 分析指令的操作碼需要幹什麼 1 進製表示 二進位制b,八進位制o,十進位制d,十六進製制h 2 十進位制...

資料庫工程師

資料庫工程師 1.掌握資料庫技術的基本概念 原理 方法和技術 2.能夠使用sql語言實現資料庫操作 3.具備資料庫系統安裝 配置及資料庫管理與維護的基本技能 4.掌握資料庫管理與維護的基本方法 5.掌握資料庫效能優化的基本方法 6.了解資料庫應用系統的生命週期及其設計 開發過程 7.熟悉常用的資料庫...

軟考中級 資料庫系統工程師複習知識點解釋(二)

3.關係代數表示式 首先,關聯式資料庫的關係代數指什麼?書本概念 由關係代數運算經有限次復合而成的式子稱為關係代數表示式。這種表示式的運算結果仍然是乙個關係。可以用關係代數表示式表示對資料庫的查詢和更新操作。通俗一點來說,就是通過關係代數的運算方式,來計算出目標關係。比如1 1這種算術關係式,只不過...