中文亚洲精品无码_熟女乱子伦免费_人人超碰人人爱国产_亚洲熟妇女综合网

當(dāng)前位置: 首頁 > news >正文

高端網(wǎng)站鑒賞哈爾濱百度搜索排名優(yōu)化

高端網(wǎng)站鑒賞,哈爾濱百度搜索排名優(yōu)化,網(wǎng)站靜態(tài)頁面訪問很快php頁面訪問非常慢,正在跳轉(zhuǎn)頁面目錄 計算機(jī)的基本組成CPU內(nèi)存虛擬內(nèi)存內(nèi)存分段內(nèi)存分頁 CPU與內(nèi)存的交互過程高速緩存cache 所有圖片均來自:小林coding 計算機(jī)的基本組成 計算機(jī)由軟件和硬件組成 硬件由CPU(中央處理器)存儲器(內(nèi)存外存)外部設(shè)備組成。 軟件由應(yīng)用軟件和系…

目錄

  • 計算機(jī)的基本組成
  • CPU
  • 內(nèi)存
    • 虛擬內(nèi)存
      • 內(nèi)存分段
      • 內(nèi)存分頁
  • CPU與內(nèi)存的交互過程
  • 高速緩存cache

所有圖片均來自:小林coding

計算機(jī)的基本組成

計算機(jī)由軟件和硬件組成
硬件由CPU(中央處理器)存儲器(內(nèi)存+外存)外部設(shè)備組成。
軟件由應(yīng)用軟件和系統(tǒng)軟件組成(操作系統(tǒng),編譯器).

CPU

CPU也叫中央處理器
分為運(yùn)算器 ,控制器 ,寄存器組三部分
其中運(yùn)算器和控制器又分別有好多小的單元組成


運(yùn)算器,主要處理所有的算術(shù)運(yùn)算和邏輯運(yùn)算
算數(shù)邏輯單元ALU
累加寄存器AC
數(shù)據(jù)緩沖寄存器DR
狀態(tài)條件寄存器PSW

控制器,控制整個CPU的工作,決定計算機(jī)運(yùn)行過程的自動化
程序計數(shù)器PC
指令寄存器IR
指令編碼器ID
地址寄存器AR

寄存器組
寄存器組可以分為兩類,一類是專用寄存器,另外一類是通用寄存器。運(yùn)算器和控制器里面的寄存器都是專用寄存器組,而通用寄存器的用途廣泛可以由程序員規(guī)定其用途

內(nèi)存

內(nèi)存是用來直接跟CPU進(jìn)行交互的

虛擬內(nèi)存

為什么要引入虛擬內(nèi)存?
:如果所有的程序都是直接操作物理內(nèi)存,那么當(dāng)多個程序同時運(yùn)行時,就可能會對同一個物理地址進(jìn)行操作,這樣就可能會出現(xiàn)錯誤,所以為了避免這種情況,引入了虛擬內(nèi)存的概念,程序直接訪問的是虛擬內(nèi)存,虛擬內(nèi)存經(jīng)過CPU中的內(nèi)存管理單元(MMU) 可以轉(zhuǎn)化成對應(yīng)且不同的物理地址,這樣就規(guī)避掉了多個程序運(yùn)行訪問同一個物理地址的情況.

CPU將虛擬地址交給MMU,經(jīng)由MMU轉(zhuǎn)化成物理地址.
虛擬地址和物理地址主要有兩種轉(zhuǎn)化關(guān)系,分別是內(nèi)存分段和內(nèi)存分頁.

內(nèi)存分段

在這里插入圖片描述
內(nèi)存分段的情況下,虛擬內(nèi)存分成兩部分,分別是段選擇因子段內(nèi)偏移量
段選擇因子里邊最重要的是段號,段號是段表的索引,如下圖:
在這里插入圖片描述
段表由基地址,段界限,特權(quán)等級組成

段的基地址+段內(nèi)偏移量 = 物理地址

內(nèi)存分段的缺點(diǎn):
1.會產(chǎn)生大量的外部內(nèi)存碎片,雖然空閑的內(nèi)存很多,但都是不連續(xù)的,這樣就會導(dǎo)致即使空閑內(nèi)存大小 > 所需要占用的內(nèi)存大小,但是因?yàn)閮?nèi)存不連續(xù)就無法使用.

2.內(nèi)存交換效率低,當(dāng)交換一大段連續(xù)的內(nèi)存時(將內(nèi)存數(shù)據(jù)寫入外存),會非常占用時間.

內(nèi)存分頁

內(nèi)存分頁主要解決了內(nèi)存分段情況下產(chǎn)生的外部內(nèi)存碎片以及內(nèi)存交換效率低兩個問題.

內(nèi)存分頁情況下,虛擬內(nèi)存和物理內(nèi)存之前是通過頁表來映射的,而頁表也是存放在內(nèi)存管理單元(MMU)里的. 如果想要訪問的虛擬內(nèi)存在頁表中查不到,那么便會返回一個缺頁異常,進(jìn)入系統(tǒng)內(nèi)核空間分配物理內(nèi)存、更新進(jìn)程頁表,最后再返回用戶空間,恢復(fù)進(jìn)程的運(yùn)行。

如何解決產(chǎn)生的外部內(nèi)存碎片:
頁和頁之間是緊密排列的,只會產(chǎn)生內(nèi)部內(nèi)存碎片(即使程序大小不足一頁,也至少需要分配一頁內(nèi)存),而不會產(chǎn)生外部內(nèi)存碎片

如何解決內(nèi)存交換速度慢:
當(dāng)內(nèi)存不夠時或者說是缺頁中斷時(所需要的頁面不在物理內(nèi)存中),會觸發(fā)內(nèi)存交換,把不常用的內(nèi)存頁面釋放掉(換出,寫入磁盤)然后把需要的內(nèi)存頁面從磁盤寫入內(nèi)存(換入),所以內(nèi)存分頁下的內(nèi)存交換只需要交換一個或少數(shù)幾個頁就行了,內(nèi)存交換的效率就比較高.
在這里插入圖片描述

這里涉及到5中內(nèi)存頁面置換算法,分別是:

1.最佳頁面置換算法
2.先進(jìn)先出頁面置換算法
3.最近最久未使用頁面置換算法
4.時鐘頁面置換算法
5.最不常用頁面置換算法

這里就不多講解了,但是這部分也是比較重點(diǎn)的內(nèi)容,


虛擬內(nèi)存是怎么通過頁表跟物理內(nèi)存映射的?
在這里插入圖片描述
虛擬內(nèi)存分為頁號頁內(nèi)偏移量兩部分

頁號是頁表的索引,通過查找頁表可以獲得物理頁號,物理頁號+頁內(nèi)偏移量就可以得到物理地址了!
在這里插入圖片描述

多級頁表:

為什么要出現(xiàn)多級頁表(摘自小林)

在 32 位的環(huán)境下,虛擬地址空間共有 4GB,假設(shè)一個頁的大小是 4KB(2^12),那么就需要大約 100 萬 (2^20) 個頁,每個「頁表項(xiàng)」需要 4 個字節(jié)大小來存儲,那么整個 4GB 空間的映射就需要有 4MB 的內(nèi)存來存儲頁表。

這 4MB 大小的頁表,看起來也不是很大。但是要知道每個進(jìn)程都是有自己的虛擬地址空間的,也就說都有自己的頁表。

那么,100 個進(jìn)程的話,就需要 400MB 的內(nèi)存來存儲頁表,這是非常大的內(nèi)存了,更別說 64 位的環(huán)境了。

所以說引入了多級頁表,如圖:
在這里插入圖片描述
如圖,一級頁表有1024個頁表項(xiàng),每一個頁表項(xiàng)對應(yīng)著一個二級頁表,每一個二級頁表又有1024個頁表項(xiàng),一級頁表和二級做乘法10241024(2的10次方2的10次方)所以剛好可以覆蓋掉4G的虛擬內(nèi)存

疑問點(diǎn):
如果一個頁表項(xiàng)占用4個字節(jié),那么一級頁表此時占(1024*4)=4K
二級頁表占用 (1024 * 1024 * 4)=4M
4K + 4M > 4M
所以說如果所有的頁表項(xiàng)都被使用的話,二級頁表比一級頁表還要耗內(nèi)存
但是計算機(jī)存在局部性原理,如果一級頁表沒有被用到的話,就不會創(chuàng)建對應(yīng)的二級頁表,這也是二級頁表省內(nèi)存的原因.

TLB
把最常訪問的幾個頁表項(xiàng)存放入CPU中的Cache高速緩存里,這個Cache就叫TLB
在這里插入圖片描述
下文會詳細(xì)說一下CPU中的Cache.

CPU與內(nèi)存的交互過程

在這里插入圖片描述
CPU無論是跟內(nèi)存交換數(shù)據(jù),還是跟外設(shè)交換數(shù)據(jù),都是依賴總線
分別是,控制總線,數(shù)據(jù)總線,地址總線

地址總線,用于指定 CPU 將要操作的內(nèi)存地址;
數(shù)據(jù)總線,用于讀寫內(nèi)存的數(shù)據(jù);
控制總線,用于發(fā)送和接收信號,比如中斷、設(shè)備復(fù)位等信號,CPU 收到信號后自然進(jìn)行響應(yīng),這時也需要控制總線;
在這里插入圖片描述

執(zhí)行程序的過程就是執(zhí)行一條一條指令的過程

  1. 首先CPU會訪問自己的【程序計數(shù)器(PC)】,程序計數(shù)器里存放的是指令的地址,然后它會通過【控制器】操作【地址總線】來訪問內(nèi)存地址,通知內(nèi)存要訪問的地址,并等待內(nèi)存把數(shù)據(jù)準(zhǔn)備好,然后接受內(nèi)存的數(shù)據(jù),然后將指令數(shù)據(jù)存放入【指令寄存器(IR)里】

  2. 程序計數(shù)器(PC)自增,自增的程度取決于CPU的位寬,如果是32位CPU,代表一次能處理4個字節(jié)的數(shù)據(jù),所以PC自增4

  3. 檢查【指令寄存器(IR)】中指令的類型,如果是運(yùn)算類型,則交給算術(shù)邏輯單元(ALU)如果是存儲類型則交給控制單元

高速緩存cache

Cache是位于CPU和內(nèi)存之間的臨時存儲器,它的容量比內(nèi)存小但數(shù)據(jù)交換速率卻快很多。

CPU Cache 用的是一種叫 SRAM(Static Random-Access Memory,靜態(tài)隨機(jī)存儲器) 的芯片。

內(nèi)存用的芯片和 CPU Cache 有所不同,它使用的是一種叫作 DRAM (Dynamic Random Access Memory,動態(tài)隨機(jī)存取存儲器) 的芯片。

在 SRAM 里面,一個 bit 的數(shù)據(jù),通常需要 6 個晶體管,所以 SRAM 的存儲密度不高,同樣的物理空間下,能存儲的數(shù)據(jù)是有限的,不過也因?yàn)?SRAM 的電路簡單,所以訪問速度非???。DRAM 的數(shù)據(jù)訪問電路和刷新電路都比 SRAM 更復(fù)雜,所以訪問的速度會更慢,內(nèi)存速度大概在 200~300 個 時鐘周期之間。
在這里插入圖片描述
當(dāng)CPU需要讀取數(shù)據(jù)時,它會首先從Cache中查找。如果數(shù)據(jù)已經(jīng)在Cache中(即高速緩存命中),CPU可以直接從Cache中讀取數(shù)據(jù)并處理。這大大減少了從內(nèi)存中讀取數(shù)據(jù)的延遲,提高了CPU的執(zhí)行效率。

如果數(shù)據(jù)不在Cache中(即高速緩存未命中),CPU會從內(nèi)存中讀取數(shù)據(jù),并同時把這個數(shù)據(jù)所在的數(shù)據(jù)塊調(diào)入Cache中。這樣,如果CPU后續(xù)還要讀取這個數(shù)據(jù)塊中的其他數(shù)據(jù),就可以直接從Cache中獲取,而不需要再次訪問內(nèi)存。這種方式有效地減少了CPU訪問內(nèi)存的次數(shù),提高了程序的執(zhí)行效率。

此外,除了讀取本次要訪問的數(shù)據(jù),CPU還會預(yù)取本次數(shù)據(jù)的周邊數(shù)據(jù)到Cache中。這是基于程序運(yùn)行的局部性和時間局部性原理,即當(dāng)一條指令正在被執(zhí)行時,在很短的時間內(nèi),這條指令周圍的指令也會有很大的概率被執(zhí)行。因此,預(yù)取周邊數(shù)據(jù)到Cache中可以使得以后對整塊數(shù)據(jù)的讀取都從Cache中進(jìn)行,不必再調(diào)用內(nèi)存。

總之,Cache的出現(xiàn)是為了解決CPU處理速率和主存訪問速率差異過大的問題。通過把數(shù)據(jù)暫時存放在Cache中,CPU可以更快地獲取需要的數(shù)據(jù),減少了訪問內(nèi)存的延遲,提高了程序的執(zhí)行效率。

http://www.risenshineclean.com/news/61451.html

相關(guān)文章:

  • 網(wǎng)站開發(fā)外快百度自動搜索關(guān)鍵詞軟件
  • 長沙網(wǎng)紅美食seo型網(wǎng)站
  • 蔬菜基地做網(wǎng)站合適嗎金戈枸櫞酸西地那非片
  • 線上網(wǎng)站開發(fā)系統(tǒng)流程網(wǎng)絡(luò)營銷的宏觀環(huán)境
  • 河南鄭州暴雨傷亡seo標(biāo)題優(yōu)化分析范文
  • 威海網(wǎng)站建設(shè)是什么seo基礎(chǔ)知識培訓(xùn)
  • 財務(wù)咨詢網(wǎng)站模板網(wǎng)站推廣的方式和方法
  • nas服務(wù)器 做網(wǎng)站推廣注冊app賺錢平臺
  • 網(wǎng)站續(xù)費(fèi)管理系統(tǒng)合肥網(wǎng)站排名提升
  • 網(wǎng)站開發(fā)學(xué)校推廣網(wǎng)站源碼
  • seo網(wǎng)站做推廣寧德市中醫(yī)院
  • 建英語網(wǎng)站好廣西網(wǎng)站建設(shè)
  • 網(wǎng)站建設(shè)的流程范文1500字百度指數(shù)網(wǎng)
  • 網(wǎng)站建設(shè)屬于什么行業(yè)分類網(wǎng)絡(luò)銷售怎么做才能做好
  • 網(wǎng)站建設(shè)高端培訓(xùn)目前引流最好的app
  • 專業(yè)國外建設(shè)網(wǎng)站遼寧和生活app下載安裝
  • 網(wǎng)站建設(shè) 徐州seo網(wǎng)絡(luò)推廣機(jī)構(gòu)
  • 織夢cms零基礎(chǔ)做網(wǎng)站今日百度關(guān)鍵詞排名
  • c網(wǎng)站開發(fā)視頻教程萬網(wǎng)注冊域名
  • 做網(wǎng)站的管理員咋找搜索引擎網(wǎng)站優(yōu)化和推廣方案
  • 訂餐網(wǎng)站開發(fā)方案北京seo公司
  • seo排行榜年度10佳網(wǎng)站最有效的線下推廣方式
  • 網(wǎng)站開發(fā)軟件測試報告寧德市高中階段招生信息平臺
  • 網(wǎng)站版權(quán)符號什么是搜索引擎營銷
  • 廣州網(wǎng)站制作教程百度首頁登錄
  • 酒店網(wǎng)站報價方案百度小說風(fēng)云排行榜
  • 在一家傳媒公司做網(wǎng)站編輯 如何搜索引擎優(yōu)化的完整過程
  • 網(wǎng)站建設(shè)模板制作是什么意思流量精靈網(wǎng)頁版
  • 大型綜合新聞門戶網(wǎng)站織夢模板如何做好網(wǎng)站站內(nèi)優(yōu)化
  • wordpress調(diào)用導(dǎo)航欄vue seo 優(yōu)化方案