20145238-荊玉茗 《信息安全系統設計基礎》第7周學習總結

20145238 《信息安全系統設計基礎》第7周學習總結

教材學習內容總結

存儲器系統

: 存儲器系統是一個具有不同容量、成本和訪問時間的存儲設備的層次結構。

1、RAM隨機訪問存儲器

  • 分類:SRAM(靜態)、DRAM(動態)

  • 特點:存儲單元的內容可按需隨意取出或存入,這種存儲器在斷電時將丟失其存儲內容,即掉電失憶(常說的電腦內存就是RAM的)。

-(1)SRAM
特點:1.不需要刷新電路即能保存它內部存儲的數據。2.集成度較低,需要很大的體積。3.存取快。4.抗干擾。

應用:一般用來作為計算機中的高速緩沖存儲器

優點:速度快,不必配合內存刷新電路,可提高整體的工作效率。
缺點:集成度低,功耗較大,相同的容量體積較大,而且價格較高,少量用于關鍵性系統以提高效率

-(2)DRAM
特點:每個位存儲為對電容的充電;周期性的用讀出然后寫回的方式刷新存儲器每個位。

應用:一般用來作為計算機中的高速緩沖存儲器

2、ROM只讀存儲器

  • 分類:PROM、EPROM、E2PROM、FLASH

  • 特點:一次寫入,反復讀取,即非易失性。

-(1)PROM(可編程只讀存儲器)
只能被編程一次。每個存儲器單元有一種熔絲,只能用高電流熔斷一次。

-(2)EPROM(可擦寫可編程只讀存儲器)
可重復擦除和編程次數達到1000次。

-(3)EEPROM(E2PROM電子可擦除可編程只讀存儲器)
: 不需要獨立編程設備,可直接在印制電路卡上進行。
: 編程次數可達100000次。

-(4)FLASH(閃存)
: 非易失性的內存,基于EEPROM。

3、磁盤

(1)結構、容量
由一些盤片構成,盤片的正反面都能存儲數據,每個盤片分成許多的磁道,每個磁道分成一些扇區。(通常一個扇區為512B。)
表面:每個盤片有兩個表面

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

    磁盤的容量 = 每扇區大小每磁道扇區數磁道數 2 盤片數量

885730-20161030173739812-1898419452.png
(2)磁盤操作
885730-20161030173757828-143405725.jpg

磁盤以扇區大小的塊來讀寫數據。對扇區的訪問時間有三個主要部分:尋道時間、旋轉時間、傳送時間

  • 尋道時間:為了讀取某個目標扇區的內容,傳動臂首先將讀寫頭定位到包含目標扇區的磁道上。移動傳動臂所需的時間稱為尋道時間。
  • 旋轉時間:最大旋轉延遲Tmax rotation=1/RPM * 60secs/1min。平均旋轉時間Tavg rotation的一半。
  • 傳送時間:Tavg transfer=1/RPM * 1/(平均扇區數/磁道) * 60secs/1min
  • 估計總訪問時間=Tavg seek+Tavg rotation+Tavg transfer。因為尋道時間和旋轉延遲大致相等,所以將尋道時間乘以2可簡單估計磁盤訪問時間。

(3)邏輯磁盤塊

  • 目的是為了向操作系統隱蔽磁盤的結構復雜性。磁盤將其呈現為一個有B個扇區的邏輯塊的序列;磁盤中有一個固件設備——磁盤控制器,維護者邏輯酷愛號和實際磁盤扇區之間的映射關系。操作系統是以邏輯塊號為單位進行尋址操作的。

(4)總線

  • (I/O)設備是通過I/O總線(例如intel的PCI)連接到CPU和主存的。雖然它比系統總線和存儲器總線要慢,但是可以容納種類眾多的第三方I/O設備。比如:通用串行總線;圖形卡;主機總線適配器。

(5)I/O端口

  • CPU使用一種稱為存儲器映射I/O的技術來向I/O設備發出命令的。在使用其的系統中,地址空間中,有一塊地址是為與I/O設備通信保留的;叫做I/O端口。

4、存儲技術趨勢

1.不同的存儲技術有不同的價格和性能折中。
2.不同存儲技術的價格和性能屬性以截然不同的速率變化著。
3.DRAM和磁盤的性能滯后于CPU的性能。

局部性:

  • 計算機程序傾向于引用鄰近于其他最近引用過的數據項的數據或其本身;這種傾向性,被稱為局部性原理。包括:時間局部性,空間局部性。有良好局部性的程序比局部性差的程序運行的更快。
  • 體現:在硬件層,局部性原理允許計算機設計者通過引入稱為高速緩存器的小而快的存儲器來保存最近被引用的指令和數據項;在操作系統級,局部性原理允許系統使用主存作為虛擬地址空間最近被使用的磁盤塊。
  • 重復引用一個變量的程序具有良好的時間局部性;對于取指令來說,循環具有良好的時間和空間局部性。循環體越小,循環迭代次數越多,局部性越好。

5、存儲層次結構

1.中心思想:每層存儲設備都是下一層的“緩存”。

2.任何時刻,第k層的緩存包含第k+1層塊的一個子集的拷貝。

885730-20161030173812468-2129533120.jpg

結構

  • 高速緩存是一個小而快速的存儲設備,它作為存儲在更大也更慢的設備中的數據對象的緩沖區域。使用高速緩存的過程稱為緩存。
  • 存儲器層次結構的中心思想:對于每個k,位于k層的更快更小的存儲設備作為位于k+1層的更大更慢的存儲設備的緩存。
  • 第k+1層的存儲器被劃分成連續的數據對象片,稱為塊。數據總是以塊大小為傳送單元,在第k層和第k+1層之間來回拷貝。雖然在層次結構中任何一對相鄰的層次之間塊的大小是固定的,但是其他層次對之間可以有不同的塊大小。

1. 緩存命中:當程序需要第k+1層的某個數據對象d時,首先在當前存儲于第k層的一個塊中查找d,且d剛好緩存在第k層。

2. 緩存不命中:當程序需要第k+1層的某個數據對象d時,首先在當前存儲于第k層的一個塊中查找d,且第k層沒有緩存數據對象d。
覆蓋一個現存的塊的過程稱為替換或驅逐這個塊,被驅逐的這個塊也稱為犧牲塊。決定該替換哪個塊由緩存的替換策略控制。

3. 緩存不命中的種類:如果第k層的緩存為空,則對任何數據對象的訪問都會不命中。

  • 冷緩存:空的緩存,此類不命中稱為強制性不命中(冷不命中)。通常是短暫的事件,不會在反復訪問存儲器使得緩存暖身之后的穩定狀態出現。
  • 只要發生了不命中,第k層的緩存就必須執行某個放置策略,確定把它從第k+1層中取出的塊放在哪里。
  • 當工作集的大小超過緩存的大小時,緩存會經歷容量不命中。

4.緩存管理:存儲器層次結構的本質是每一層存儲設備都是較低一層的緩存,在每一層上,某種形式的邏輯必須管理緩存。即某個東西要將緩存劃分成塊,在不同的層之間傳送塊,判斷是命中還是不命中,并處理它們。

6、高速緩存存儲器

  • 作用:連接CPU和主存
  • 每個存儲器地址有m位,形成M=2^m個不同地址。這m位被劃分成t個標記位、s個組索引位和b個塊偏移位。
  • 這樣一個機器的高速緩存被組織成S=2^s個高速緩存組的數組;每個數組包含E個高速緩存行;每行由一個B=2^b字節的數據塊、一個有效位(指明這個行是否包含有效信息)、t=m-(b+s)個標記位(唯一標識存儲在這個高速緩存行中的塊)組成

直接映射高速緩存:

  • 高速緩存確定一個請求是否命中,然后抽搐被請求字的過程,分為:組選擇,行匹配,字抽取
  • 組選擇:從w的地址中抽取組索引;這些位被解釋成對應于一個組號的無符號整數
  • 行匹配:對于直接映射高速緩存,行匹配是容易而且快的;因為每個組只有一行
  • 字匹配:塊偏移提供的是這個字的第一個字節是從哪個位置開始的

教材學習中的問題和解決過程

課本習題

6.2
磁盤容量 = 512字節/扇區400扇區/磁道10 000磁道/表面2表面/盤片2盤片/磁盤 = 8 192 000 000 字節 = 8.192G

6.3
訪問時間 = Taveseek+Taverotation+Tavetransfer = 8ms+0.51/15000RPM60secs.min1000ms/s+1/15000RPM1/50060secs/min1000ms/s=8ms+2ms+0.008ms=10.008ms

6.4
(1)最好的情況即順序映射:T=Taveseek+Taverotation+2Tmaxrotation=5ms+3ms+26ms=20ms (2)非順序映射,讀每一塊都需要Taveseek+Tavgrotation=8ms。所以讀2000塊總時間為T = 8ms*2000=16000ms=16s

6.11
在填充了之后,對于x和y數組,只有在引用第0個和第4個元素的時候發生不命中。因而命中率為75%

代碼調試中的問題和解決過程

本周主要學習存儲技術及其原理,對于高速緩存的一步一步的過程理解的還是有點不夠深入,還需要自己多動手一步一步模擬cpu執行讀取時發生了什么。

本周代碼托管

代碼托管鏈接

學習進度條

代碼行數(新增/累積)博客量(新增/累積)學習時間(新增/累積)重要成長
目標5000行30篇400小時
第一周200/2002/220/20
第二周300/5002/418/38
第三周500/10003/722/60
第四周300/13002/930/90
第五周500/10003/1222/120
第六周100/13002/1530/150
第七周500/10003/1822/180

參考資料

  • 《深入理解計算機系統V2》學習指導
  • ...

轉載于:https://www.cnblogs.com/20145238jym/p/6013561.html

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/256109.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/256109.shtml
英文地址,請注明出處:http://en.pswp.cn/news/256109.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

關于兩個jar包中存在包名和類名都完全相同的jar包沖突問題

2019獨角獸企業重金招聘Python工程師標準>>> 最近弄webservice&#xff0c;我使用的jdk自帶的wsimport工具來生成客戶端代碼&#xff0c;發現生成的代碼具有編譯錯誤&#xff0c;錯誤描述如下&#xff1a; The method getPort(QName, Class<T>) in the type S…

限制文本框只能輸入數字和小數點

<input type"text" class"NumText" placeholder"只能輸入數字&#xff08;可含有小數點&#xff09;"/><style> .NumText{width:200px;} .NumText::-webkit-input-placeholder{color:#F1923C;} .NumText:-moz-placeholder{…

C++STL總結筆記(二)——仿函數(函數對象)

文章目錄一、概念總結一、概念 仿函數又稱函數對象&#xff0c;即重載了函數調用運算符&#xff08;&#xff09;的類的對象。 優勢&#xff1a; 1.仿函數對象的內部可以有自己的狀態&#xff0c;可以實現一些其他的功能。 2.函數對象可以作為參數進行傳遞。 當仿函數類內重載…

【圖像處理】——灰度變換心得(cv2.normalize規范化值0-255,cv2.convertScaleAbs(new_img)轉為8位圖)

目錄 一、灰度變換函數 對數變換 加碼變換 常見雷點 常見灰度變換函數

SQL Server2008 表旋轉(pivot)技術

參考資料&#xff1a; http://www.cnblogs.com/xiashengwang/p/3503554.html轉載于:https://www.cnblogs.com/lihuali/p/6014776.html

const和define 區別

1&#xff1a; 編譯器處理不同 define宏是在預處理階段展開&#xff0c;const常量是編譯運行階段使用。 2&#xff1a;類型和安全檢查不同 const常量有數據類型&#xff0c;而宏常量沒有數據類型&#xff0c;僅僅是展開。編譯器可以對前者進行類型安全檢查&#xff0c;而對后者…

學習筆記(三)

一.調試模式 define(APP_DEBUG, true); 調試模式的優勢在于&#xff1a; 開啟日志記錄&#xff0c;任何錯誤信息和調試信息都會詳細記錄&#xff0c;便于調試&#xff1b;  關閉模板緩存&#xff0c;模板修改可以即時生效&#xff1b;  記錄SQL日志&#xff0c;方便分析SQL…

【項目實戰】——Python打包正裝換底色代碼為exe文件(可在其他無Python環境下運行)

目錄 1.安裝pyinstaller 2.生成.exe文件 方法1&#xff1a; 方法2&#xff1a; 方法3&#xff1a; &#xff08;1&#xff09;使用命令行窗口進入項目的根目錄 &#xff08;2&#xff09;在改目錄下執行pyi-makespec main.py&#xff08;main.py是你的主入口文件&#x…

C++STL總結筆記(三)—— 常見算法

文章目錄一、基本概念二、程序示例1.遍歷2. 查找3. 排序、拷貝、替換4. numeric相關算法總結一、基本概念 算法是STL中很重要的一部分&#xff0c;其功能包括比較&#xff0c;查找&#xff0c;排序&#xff0c;交換&#xff0c;遍歷&#xff0c;復制等等。 最大的算法頭文件是…

Java zip解壓,并遍歷zip中的配置文件 .cfg或.properties

1.解析cfg或properties配置文件 講配置文件&#xff0c;讀取&#xff0c;并封裝成為map類型數據 /*** 解析cfg文件** param cfgFile* return*/public static Map<String, Object> readCfg(FileInputStream cfgFile) {Properties prop new Properties();Map<String, O…

db2 常用配置

db2set配置&#xff1a; db2set DB2_ENABLE_LDAPNO db2set DB2_ALTERNATE_GROUP_LOOKUPGETGROUPLIST db2set DB2_RESTORE_GRANT_ADMIN_AUTHORITIESON db2set DB2_SKIPINSERTEDON db2set DB2_LOAD_COPY_NO_OVERRIDENONRECOVERABLE db2set DB2_EVALUNCOMMITTEDON db2set DB2_SKIP…

安裝完最小化 RHEL/CentOS 7 后需要做的 30 件事情(三)碼農網

12. 安裝 Apache Tomcat Tomcat 是由 Apache 設計的用來運行 Java HTTP web 服務器的 servlet 容器。按照下面的方法安裝 tomcat&#xff0c;但需要指出的是安裝 tomcat 之前必須先安裝 Java。 # yum install tomcat 安裝 Apache Tomcat 安裝完 tomcat 之后&#xff0c;啟動 to…

【圖像處理】——圖像特效處理(馬賽克、圖像融合、毛玻璃等)

參考:https://blog.csdn.net/qq_43328040/article/details/109081414 import cv2 import numpy as np import random#馬賽克:將一定大小窗口的RGB設置成一個顏色 def horseBox(img):row,col,chal = img.shapeboxRow = int(0.3*row)boxcol = int(0.3*col)for m in range(50,b…

JDK5.0新特性之:泛型

文/陳剛 2005-11-09 一、前言 泛型這個詞在現在的JAVA挺時髦&#xff0c;光從字面上你是無法知道它代表些什么東東的&#xff0c;所以我們還是不要從字面去理解&#xff0c;而是從一些實例去了解它吧。 二、泛型之前的日子 &#xff2a;&#xff24;&#xff2b;&#xff11;.…

QT5.14.2基于PCL1.11.1顯示點云(基于Windows VS2019開發環境)

文章目錄一、安裝1.1 PCL安裝1.2 QT安裝1.3 VTK編譯二、程序配置1. 基于mscv創建QT的程序2. 配置QT工程文件和依賴項3. 編寫點云顯示的小程序總結一、安裝 1.1 PCL安裝 PCL1.11.1庫的安裝網上教程很多&#xff0c;推薦一個很好的教程&#xff1a; Win10 系統下 VisualStudio2…

Spring學習筆記—最小化Spring XML配置

自動裝配(autowiring)有助于減少甚至消除配置<property>元素和<constructor-arg>元素&#xff0c;讓Spring自動識別如何裝配Bean的依賴關系。 自動檢測(autodiscovery)比自動裝配更進了一步&#xff0c;讓Spring能夠自動識別哪些類需要被配置成Spring Bean&#xf…

【數據結構】——快速排序

目錄 一、代碼 二、復雜度&#xff1a;O(nlog(n)) 三、快速排序的劣勢 視頻參考鏈接&#xff1a;https://www.bilibili.com/video/BV1mp4y1D7UP?p17 一、代碼 思想&#xff1a;假設是對一個list進行排序 1、選取第一個元素作為p元素&#xff1b; 2、將p元素歸位&#xff0…

讀取數據庫信息構建視圖字段的備注信息,方便程序代碼生成

在很多情況下&#xff0c;我們開發都需要有一個快速的代碼生成工具用來提高開發效率&#xff0c;代碼生成工具很多信息都是讀取數據庫的表、視圖等元數據進行對象表信息的完善&#xff0c;有了這些信息&#xff0c;我們就可以在普通的實體類代碼里面添加屬性字段的中文注釋&…

Ubuntu DNS bind9 配置

下面的配置就是實現解析test.zp.com到不同的IP地址 安裝dns server軟件包$ apt-get install bind9 配置dns配置文件的路徑在/etc/bind路徑下面添加一個zone$ /etc/bind# vim /etc/bind/named.conf.local 添加下面&#xff0c;語法可以參照/etc/bind/zones.rfc1918中的語法添加&…

微博分享錯誤

昨天再做這塊的時候&#xff0c;不知怎么的點擊之后什么反應都沒有&#xff0c;程序也沒有崩&#xff0c;日志倒是輸出了這個錯誤 解決辦法&#xff1a;打開你寫分享的代碼跟API文檔對比一下創建文本、圖片或者網頁的時候是不是少寫了那個屬性&#xff0c;我這里是在創建網頁的…