20135213——信息安全系統設計基礎第七週學習總結

 

學習計時:共xxx小時html

讀書:算法

代碼:編程

做業:數組

博客:參考資料:教材   參考博客: 閆佳歆http://www.cnblogs.com/20135202yjx/p/4907828.html緩存

 

1、學習目標安全

1. 瞭解常見的存儲技術(RAM、ROM、磁盤、固態硬盤等)
2. 理解局部性原理
3. 理解緩存思想
4. 理解局部性原理和緩存思想在存儲層次結構中的應用
5. 高速緩存的原理和應用

2、學習資源markdown

 

1. 教材:第六章《存儲器層次結構》網絡

2. 課程資料:https://www.shiyanlou.com/courses/413   實驗6、七,課程邀請碼:W7FQKW4Y異步

3. 教材中代碼運行、思考一下,讀代碼的學習方法見性能

 

3、學習方法

1.  進度很重要:必須跟上每週的進度,閱讀,練習,問答,項目。我會認真對待每一位同窗,請你不要由於困難半途而廢。

2. 問答很重要:遇到知識難點請多多提問,這是你的權利更是您對本身負責的義務。問答到博客園討論小組:http://group.cnblogs.com/103791/
3. 實踐很重要:解決書中習題,實踐書中實例,完成每週項目,纔算真的消化了這本好書。經過實驗樓環境或本身安裝的虛擬機在實踐中進行學習
4. 實驗報告很重要:詳細記錄你完成項目任務的思路,得到老師點評和幫助本身複習。學習完成後在博客園中(http://www.cnblogs.com/)把學習過程經過博客發表,博客標題「信息安全系統設計基礎第七週學習總結」

 

4、學習任務

1. 閱讀教材,完成課後練習(書中有參考答案)

   重點:6.2 6.3 6.4  6.8 6.9 6.10 6.11 6.12 6.13

2. 考覈:練習題把數據變換一下

3. 實驗:須要動手的到實驗樓中練習一下

 

 

、後續學習預告(可選):

複習前面Linux 命令,Linux 編程基礎,教材前七章內容

、學習過程

1. 存儲技術

 

瞭解三種常見存儲技術:RAM/ROM/磁盤

 隨機訪問存儲器:分爲靜態RAM和動態RAM。 靜態比動態更快。

(1)靜態RAM(SRAM):將每一個位存儲在一個雙穩態的存儲器單元裏。

(2)動態RAM(SRAM):將每一個位存儲爲對一個電容的充電。電容很小,大約有30毫微微法拉。每一個單元由一個電容和一個訪問晶體管組成。 DRAM對干擾很是敏感。當電容的電壓被擾亂後(暴露在光線下),將永遠不會恢復。

 

2.存儲器模塊

DRAM芯片包裝在存儲器模塊中,是插在主板的擴展槽上的。

  • 168個引腳的雙列直插存儲器模塊-以64位爲塊傳送或傳出數據。
  • 72個引腳的單列直插存儲器模塊-以32位爲塊傳送數據。

 

3.加強的DRAM

 

  • 快頁模式-FPM DRAM:容許對同一行連續的訪問能夠直接從行緩衝區獲得服務。(本來的DRAM對同一行的四條指令時,每條指令取完後都會丟棄,而後從新讀取。)
  • 擴展數據輸出-EDO DRAM:容許單獨的CAS信號在時間上靠的更緊密一點。
  • 同步-SDRAM:用與驅動存儲控制器相同的外部時鐘信號的上升沿來代替許多這樣的控制信號-比異步的更快。
  • 雙倍數據速率同步-DDR SDRAM:經過使用兩個時鐘沿做爲控制信號,從而使DRAM的速度翻倍。分類:DDR(2位),DDR2(4位),DDR3(8位)
  • RDRAM
  • 視頻-VRAM:用在圖形系統的幀緩存區中,思想相似FPM DRAM,區別:

    1.VRAM的輸出是經過依次對內部緩衝區的整個內容進行移位獲得的
    2.VRAM容許對存儲器並行的讀和寫。

    非易失性存儲器——ROM

    RAM斷電丟失數據,是易失的

 

          ROM是非易失的,統稱爲只讀存儲器

 

4.閃存FLASH

基於EEPROM,爲大量的電子設備提供快速而持久的非易失性存儲。

關於閃存的實際應用:ssd固態硬盤

固態硬盤(Solid State Drives),簡稱固盤,固態硬盤(Solid State Drive)用固態電子存儲芯片陣列而製成的硬盤,由控制單元和存儲單元(FLASH芯片、DRAM芯片)組成。固態硬盤在接口的規範和定義、功能及使用方法上與普通硬盤的徹底相同,在產品外形和尺寸上也徹底與普通硬盤一致。被普遍應用於軍事、車載、工控、視頻監控、網絡監控、網絡終端、電力、醫療、航空、導航設備等領域。
 

對比傳統硬盤編輯

固態硬盤的接口規範和定義、功能及使用方法上與普通硬盤幾近相同,外形和尺寸也基本與普通的 2.5英寸硬盤一致。
固態硬盤具備傳統機械硬盤不具有的快速讀寫、質量輕、能耗低以及體積小等特色,同時其劣勢也較爲明顯。儘管IDC認爲SSD已經進入存儲市場的主流行列,但其價格仍較爲昂貴,容量較低,一旦硬件損壞,數據較難恢復等;而且亦有人認爲固態硬盤的耐用性(壽命)相對較短。
影響固態硬盤性能的幾個因素主要是:主控芯片、NAND閃存介質和固件。在上述條件相同的狀況下,採用何種接口也可能會影響SSD的性能。
主流的接口是SATA(包括3Gb/s和6Gb/s兩種)接口,亦有PCIe 3.0接口的SSD問世。
因爲SSD與普通磁盤的設計及數據讀寫原理的不一樣,使得其內部的構造亦有很大的不一樣。通常而言,固態硬盤(SSD)的構造較爲簡單,而且也可拆開;因此咱們一般看到的有關SSD性能評測的文章之中大多附有SSD的內部拆卸圖。
而反觀普通的機械磁盤,其數據讀寫是靠盤片的高速旋轉所產生的氣流來托起磁頭,使得磁頭無限接近盤片,而又不接觸,並由步進電機來推進磁頭進行換道數據讀取。因此其內部構造相對較爲複雜,也較爲精密,通常狀況下不容許拆卸。一旦人爲拆卸,極有可能形成損害,磁盤沒法正常工做。這也是爲什麼在對磁盤進行評測時,咱們基本看不到關於磁盤拆卸圖的緣由。
 

5.磁盤存儲

(1)磁盤構造

  • 盤片
  • 表面:每一個盤片有兩個表面
  • 主軸:盤片中央,可旋轉
  • 旋轉速率:一般5400~15000/min
  • 磁道:同心圓們
  • 扇區:每一個磁道被劃分爲一組扇區
  • 數據位:每一個扇區包含相等數量的~,一般爲512字節
  • 間隙:存儲用來標識扇區的格式化位
  • 磁盤驅動器-磁盤-旋轉磁盤
  • 柱面:全部盤片表面上到主軸中心的距離相等的磁道的集合。

(2)磁盤容量——一個磁盤上能夠記錄的最大位數

影響因素:
  • 記錄密度-位/英寸
  • 磁道密度-道/英寸
  • 面密度-位/平方英寸

提升面密度便可提升容量。

現代大容量磁盤——多區記錄

將柱面的集合分割成不相交的子集合(記錄區),每一個區包含一組連續的柱面;

一個區中的每一個柱面的每條磁道都有相同數量的扇區,這個扇區的數量由該區中最裏面的磁道所能包含的扇區數肯定

注意:軟盤還是老式方法,每條磁道的扇區數是常數

(3)計算公式:

 

 

 6.固體磁盤

固態硬盤是一種基於閃存的存儲技術【區別於旋轉磁盤:固態磁盤沒有移動的部分。

1.組成

一個SSD包由一個或多個閃存芯片和閃存翻譯層組成:

閃存芯片——對應旋轉磁盤中機械驅動器
閃存翻譯層(硬件/固件設備)——對應磁盤控制器

2.讀/寫

(1)順序讀寫

速度至關,順序讀比順序寫稍微快一點

(2)隨機讀寫

寫比讀慢一個數量級

緣由:底層閃存基本屬性決定。

一個閃存由B個塊的序列組成,每一個塊由P頁組成。一般頁的大小是512~4kb,塊是由32~128頁組成的,塊的大小爲16kb~512kb。

數據是以爲單位讀寫的。

優勢

  • 由半導體構成,沒有移動的零件——
  • 隨機訪問時間比旋轉磁盤要快
  • 能耗更低
  • 更結實

缺點

  • 更容易磨損
  • 更貴

存儲技術優點

  • 不一樣的存儲技術有不一樣的價格和性能折中
  • 不一樣存儲技術的價格和性能屬性以大相徑庭的速率變化着
  • 增長密度從而下降成本比下降訪問時間更容易
  • DRAM和磁盤的性能滯後於cpu的性能

 

7.局部性

(1)對程序數據引用的局部性

步長爲k的引用模式

定義:一個連續變量中,每隔k個元素進行訪問,就被稱爲步長爲k的引用模式。

步長爲1的引用模式:就是順序訪問一個向量的每一個元素,有時也被稱爲順序引用模式,它是程序中 空間局部性常見和重要的來源

通常來講,隨着步長增長,空間局部性降低。

多維數組(以二維數組爲例)
int sumarraycols(int a[M][N]) {  int i,j,sum = 0;   for(i=0;i<N;i++)  for(j=0;j<M;j++)  sum += a[i][j];  return sum; }

int sumarraycols(int a[M][N]) {  int i,j,sum = 0;   for(j=0;j<M;j++)  for(i=0;i<N;i++)  sum += a[i][j];  return sum; }

上面的代碼是按照行優先順序執行的,下面的代碼是按照列優先順序執行的,而c數組在存儲器中是按照行順序存放的,因此第一個空間局部性良好,第二個空間局部性不好。

由於循環體會被執行屢次,因此它也有很好的時間局部性。

(2)取指令的局部性

程序指令是存放在存儲器中的,CPU必須取出(讀出)這些指令。

可是代碼區別於程序數據的一個重要屬性是:在運行時它是不能被修改的。

(3)局部性小結

量化評價一個程序中局部性的簡單原則:

  • 重複引用同一個變量的程序有良好的時間局部性
  • 對於具備步長爲k的引用模式的程序,步長越小,空間局部性越好
  • 對於取指令來講,循環有好的時間和空間局部性。循環體越小,循環迭代次數越多,局部性越好。

 

8.存儲器層次結構//存儲器山

即:每層存儲設備都是下一層的「緩存」

 

9.緩存

高速緩存:是一個小而快速的存儲設備,它做爲存儲在更大、更慢的設備中的數據對象的緩衝區域。

緩存:使用高速緩存的過程稱爲緩存。

數據老是以塊大小爲傳送單元在第k層與第k+1層之間來回拷貝。任一對相鄰的層次之間塊大小是固定的,可是其餘的層次對之間能夠有不一樣的塊大小。

通常來講:層越低,塊越大。

 

10.高速緩存存儲器

L1高速緩存:

位於CPU寄存器文件和主存之間,訪問速度2-4個時鐘週期

L2高速緩存:

位於L1高速緩存和主存之間,訪問速度10個時鐘週期

L3高速緩存:

位於L2高速緩存和主存之間,訪問速度30或40個時鐘週期

 

 

11.組相聯高速緩存

E路組相聯高速緩存:1<E<C/B

(1)組選擇

和直接的同樣。

(2)行匹配和字選擇

形式是(key, value),用key做爲標記和有效位去匹配,匹配上了以後返回value。

重要思想:組中的任意一行均可以包含任何映射到這個組的存儲器塊,因此告訴緩存必須搜索組中的每一行。

判斷匹配的標準依舊是兩個充分必要條件:

1.有效
2.標記匹配

(3)行替換

有空行替換空行,沒有空行,應用替換策略:

  • 隨機替換
  • 最不常使用策略LFU:替換在過去某個時間窗口內引用次數最少的那一行。
  • 最近最少使用策略LRU:替換最後一次訪問時間最久遠的那一行。

 

12.全相聯高速緩存(E=C/B)

(1)組選擇

只有一個組,默認組0,沒有索引位,地址只被劃分紅了一個標記和一個塊偏移。

(2)行匹配和字選擇

同組相聯。

只適合作小的高速緩存。

 

13.寫

①寫命中時,更新低一層中的拷貝的方法:

(1)直寫,當即將w的高速緩存塊協會到緊接着的低一層中

缺點:每次寫都會引發總線流量。

(2)寫回,只有當替換算法要驅逐更新過的塊時,才寫到緊接着的低一層中
  • 優勢:符合局部性原理,顯著的減小總線流量
  • 缺點:增長了複雜性,必須爲每一個高速緩存行維護一個額外的修改位

②寫不命中的處理方法

(1)寫分配---一般寫回對應

加載相應的低一層中的塊到高速緩存中,而後更新這個高速緩存塊。

(2)非寫分配---一般直寫對應

避開高速緩存,直接把這個字寫在低一層中。

7、遇到的問題及解決

1.對ssd固態硬盤的替換有興趣,打算給筆記本換一下。

 解決:筆記本怎麼更換ssd固態硬盤_百度經驗

http://jingyan.baidu.com/article/48b37f8d08128f1a6564886b.html

 

 

 

8、其餘

(提示:此處由學生填寫,靈感,領悟等)

相關文章
相關標籤/搜索