【學習Day3】計算機基礎

在這里插入圖片描述
?🏻記錄學習過程中的輸出,堅持每天學習一點點~
??希望能給大家提供幫助~歡迎點贊👍🏻+收藏?+評論?🏻+指點🙏

1.5.4 Cache替換算法

Cache的頁面淘汰算法

常用替換算法有:
? 隨機替換算法RAND (Random):隨機地選擇Cache塊進行替換
分析:沒有考慮到局部性原理,運氣不好的話剛調入的Cache塊有會被馬上替換出來
? 先進先出FIFO (first-in-first-out):顧名思義就是替換最先被使用的Cache塊
分析:同樣沒有考慮到局部性原理,如果最先被使用的先被調出,而后又頻繁使用1234塊,就會發生【抖動現象】
? 最近最少用LRU ( least-recently used):每個Cache都設置一個【計數器】,代表每個Cache塊有多久沒被訪問,當Cache滿的時候替換【計數器】最大的Cache塊
分析:該算法比較好的利用了局部性原理(近期被訪問的主存塊可能在不就還會被訪問到),因此該算法很不錯
? 最不經常用LFU ( least-frequently used):每個Cache都設置一個【計數器】,用于記錄每個Cache塊被訪問的次數,當Cache滿的時候替換【計數器】最小的Cache塊
分析:沒有很好的利用局部性原理,因為已知經常用到的主存塊在未來不一定要用到,其命中率相比LRU較低,且CPU訪問主存的次數極高,代表計數器將會占用較多的空間
LRU和LFU比較
LRU會替換最近最少訪問的Cache塊,而LFU會替換訪問次數最小的Cache塊
雖然算法不一樣,但從說明上這么一看似乎LRU也可以理解成LFU,最近最少訪問不就等于訪問次數最小嗎?

假設我們先頻繁訪問了某程序的主存數據A【主存塊號為1、2、3、4】,將其全部裝入Cache,如果未來需要頻繁訪問程序的主存數據B【97、98、99】
(1)對LFU算法而言,就會出現頻繁調入調出計數器最小的【Cache塊(1)】,即抖動現象
在這里插入圖片描述

(2)但對于LRU算法的影響較小,LRU算法能更快的把數據A的Cache塊全部替換成數據B的主存塊

在這里插入圖片描述

Cache的讀寫過程

寫直達:同時寫Cache與內存
寫回:只寫Cache,淘汰頁面時,寫回內存
標記法:只寫入內存,并將標志位清零,若用到此數據,只需要再次調取

練習題

Cache的替換算法中,( B )算法計數器位數多,實現困難。
A.FIFO
B. LFU
C. LRU
D. RAND

1.5.5 磁盤(外存儲器)

● 機械磁盤存在兩組運動:
◎ 磁盤的旋轉運動
◎ 機械臂控制磁頭沿半經方向的直線運動
● 存取時間=尋道時間+等待時間
◎ 尋道時間:指磁頭移動到磁道所需的時間
◎ 等待時間:等待讀寫的扇區轉到磁頭下方所用的時間
分 磁道和扇區

練習題

在磁盤調度管理中,通常( C )(2019下半年試題)
A.先進行旋轉調度,再進行移臂調度
B.在訪問不同柱面的信息時,只需要進行旋轉調度
C.先進行移臂調度,再進行旋轉調度
D.在訪問同一磁道的信息時,只需要進行移臂調度

1.6.1 輸入/輸出技術

● 直接程序控制
◎ 分為無條件傳送和程序查詢方式
◎ 降低了CPU的效率
◎ 對外部的突發事件無法做出實時響應
● 程序中斷方式
◎ 利用中斷方式完成數據的輸入/輸出
◎ CPU接到中斷請求信號后,保存正在執行程序的現場
◎ 與程序控制方式相比,因為CPU無須等待而提高了效率
● DMA
◎ 在主存與I/O設備(外設)之間建立數據通路進行數據的交換處理
◎ 在DMA傳送過程中無須CPU的干預
◎ DMA傳送數據時要占用系統總線,此時,CPU不能使用總線
◎ DMA傳送結束為中斷
● 輸入/輸出處理機(IOP)
◎ 分擔了CPU的一部分功能,可以實現對外圍設備的統一管理,完成外圍設備與主存之間的數據傳送
◎ 大大提高了CPU的工作效率,這種效率的提高是以增加更多的硬件為代價的

練習題

DMA控制方式是在( C )之間直接建立數據通路進行數據的交換處理。(2019年上半年試題軟設)
A.CPU與主存
B.CPU與外設
C.主存與外設
D.外設與外設

計算機運行過程中,CPU需要與外設進行數據交換。采用( B )控制技術時,CPU與外設可并行工作。
(2017年下半年)
A.程序查詢方式和中斷方式
B.中斷方式和DMA方式
C.程序查詢方式和DMA方式
D.程序查詢方式、中斷方式和DMA方式

1.7.1 flynn分類法

計算機系統結構的分類方法之一
1966年M.J.Flynn提出了如下定義:
指令流(Instruction Stream)——機器執行的指令序列。
數據流 (Data Stream)——指令調用的數據序列,包括輸入數據和中間結果。
多倍性(Multiplicity)——在系統最受限制的元件上同時處于同一執行階段指令或數據執行的最大可能個數。
按照指令和數據流不同的組織方式,計算機系統可分為四類:
單指令單數據流(Single Instruction stream and Single Data stream,SISD):SISD其實就是傳統的順序執行的單處理器計算機,其指令部件每次只對一條指令進行譯碼,并只對一個操作部件分配數據。流水線方式的單處理機有時也被當成SISD。
單指令多數據流(SIMD) 特性:各處理機以同步的形式執行同一條指令
多指令單數據流(MISD) 特性:被證明不可能,至少是不實際
多指令多數據流(MIMD) 特性:能夠實現作業,任務,指令等各級全面并行

SingleMultiple
SingleSISDMISD
MultipleSIMDMIMD

練習題

Flymn分類法根據計算機在執行程序的過程中( A )的不同組合,將計算機分為4類。當前主流的多核計算機屬于( D )計算機。
A.指令流和數據流
B.數據流和控制流
C.指令流和控制流
D.數據流和總線帶寬
A.SISD
B.SIMD
C.MISD
D.MIMD

1.7.2 CISC和RISC

CISC,全稱為Complex Instruction Set Computing,意為復雜指令集計算。它是一種指令集設計理念,其特點是指令數量多、格式多樣、長度不一、功能強大。CISC可以用較少的指令完成較復雜的操作,典型的代表是X86架構。這種架構的處理器芯片被廣泛應用于Windows操作系統的服務器,是目前主流的服務器架構。

CISC架構的主要優點有
指令執行效率高,可以用較少的指令周期完成較復雜的任務,提高CPU利用率。
編譯器設計簡單,因為指令功能強大,編譯器可以用較少的指令生成目標代碼,降低編譯難度和時間。
程序可移植性好,由于指令集兼容性高,程序可以在不同的平臺上運行,提高軟件開發效率。
然而,CISC架構也存在一些缺點:
指令譯碼復雜,由于指令格式多樣、長度不一,CPU需要更多的硬件電路和時間來譯碼執行指令,這增加了芯片面積和功耗。
指令執行速度慢,因為每條指令需要更多的時鐘周期來完成,這降低了程序運行速度。
指令集臃腫,指令數量多,有些指令很少使用或者功能重復,造成了指令集的浪費和冗余。

RISC,全稱為Reduced Instruction Set Computer,意為精簡指令系統計算機。RISC的特點包括選取使用頻率較高的一些簡單指令以及一些很有用但不復雜的指令,讓復雜指令的功能由頻率較高的簡單指令的組合完成。此外,RISC的指令長度固定,指令格式種類少,尋址方式種類少,并且大部分指令在一個時鐘周期內完成。

RISC架構的主要優點有
指令執行時間短,因為90%的指令是由硬件直接完成,只有10%的指令是由軟件以組合的方式完成。
適合采用流水線處理架構的設計,平均一周期可以完成一指令。
然而,RISC架構也存在一些缺點,如指令精簡化后造成應用程序碼變大,需要較大的存儲器空間。

總的來說,CISC和RISC各有其特點和優缺點,適用于不同的場景和需求。在實際應用中,需要根據具體的應用場景和需求來選擇適合的指令集架構。

指令系統類型指令尋址方式實現方式其他代表
CISC(復雜)數量多,使用頻率差別大,可變長格式支持多種微程序控制技術(微碼)研制周期長X86
RISC(精簡)數量少,使用頻率接近,定長格式,大部分為單周期指令,操作寄存器,只有Load/Store操作內存支持方式少增加了通用寄存器;硬布線邏輯控制為主;更適合采用流水線優化編譯,有效支持高級語言(如java)RISC-V、ARM

練習題

(2022年上半年)以下關于RISC和CISC的敘述中,不正確的是(B )
A.RISC的大多指令在一個時鐘周期內完成
B.RISC普遍采用微程序控制器,CISC則普遍采用硬布線控制器
C.RISC的指令種類和尋指方式相對于CISC更少
D.RISC和CISC都采用流水線技術

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

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

相關文章

vue3 setup 使用 beforeRouteEnter 組件內路由守衛

vue3 setup 使用 beforeRouteEnter 組件內路由守衛 setup 中只有onBeforeRouteLeave、onBeforeRouteUpdate兩個鉤子函數&#xff0c; 沒有beforeRouteEnter對應的鉤子函數&#xff0c;所以無法在setup中直接使用 <script setup> onBeforeRouteLeave((to, from) > {// …

Android基礎-性能優化

在Android平臺上進行性能優化是確保應用程序高效、穩定且流暢運行的關鍵過程。以下將詳細闡述Android性能優化的各個方面&#xff0c;包括但不限于布局優化、繪制優化、內存管理、網絡優化、安裝包優化以及針對不同版本的Android系統進行適配等。 一、布局優化 布局優化的核心…

3D軟件開發的相關技術

3D開發涉及到廣泛的技術和工具&#xff0c;涵蓋了多個領域&#xff0c;包括計算機圖形學、編程、設計、物理模擬等。以下是3D開發中常用的技術和工具&#xff0c;掌握這些技術需要廣泛的知識和實踐&#xff0c;項目的成功依賴于對這些技術的有效整合和應用。北京木奇移動技術有…

音視頻開發14 FFmpeg 視頻 相關格式分析 -- H264 NALU格式分析

H264簡介-也叫做 AVC H.264&#xff0c;在MPEG的標準?是MPEG-4的?個組成部分–MPEG-4 Part 10&#xff0c;?叫Advanced Video Codec&#xff0c;因此常常稱為MPEG-4 AVC或直接叫AVC。 原始數據YUV,RGB為什么要壓縮-知道就行 在?視頻傳輸過程中&#xff0c;視頻?件的傳輸…

熱敏電阻的設計

熱敏電阻(NTC)的作用&#xff1a;抑制開機時的浪涌電流。防止開機瞬間產生的浪涌電流損壞后面的元件。 取值依據:根據對開機的脈沖電流&#xff08;浪涌電流&#xff09;小于多少A&#xff1f; 由,這個U是指最大輸入電壓&#xff0c;I為要求的浪涌電流。 NTC是負溫度系數的熱…

收銀系統源碼--商超水果生鮮店收銀硬件要怎么選擇?

新零售時代&#xff0c;越來越多的商家開始明白&#xff0c;除了要做好店鋪定位、店面裝潢和商品的設定&#xff0c;還要選購最適合店鋪運營需求的收銀機和硬件&#xff0c;好的收銀機和收銀系統可以幫助商家做好收支統計、庫存管理、人員配置。客戶服務等工作。現在的智能收銀…

MySQL 索引使用(二)

本篇繼續介紹有關索引的使用。 目錄 一、SQL提示 二、單列索引和聯合索引 三、覆蓋索引 四、前綴索引 五、索引的使用原則 一、SQL提示 我們在使用索引來進行查詢時&#xff0c;很有可能會出現一個字段中包含多個索引的情況&#xff0c;例如這里有一個name字段&#xff0c…

從零開始學習Slam-旋轉矩陣旋轉向量四元組(二)

本文參考&#xff1a;計算機視覺life 僅作筆記用 書接上回&#xff0c;上回不清不楚的介紹了旋轉矩陣&旋轉向量和四元組 現在回顧一下重點&#xff1a; 本著繞誰誰不變的變則 假設繞z軸旋轉θ&#xff0c;旋轉矩陣為&#xff1a; 再回顧一下旋轉向量的表示以及這個基本記不…

SpringCloud如何實現SSO單點登錄?

目錄 一、SpringCloud框架介紹 二、什么是SSO單點登錄 三、單點登錄的必要性 四、SpringCloud如何實現SSO單點登錄 一、SpringCloud框架介紹 Spring Cloud是一個基于Spring Boot的微服務架構開發工具集&#xff0c;它整合了多種微服務解決方案&#xff0c;如服務發現、配置…

SpringSecurity6從入門到實戰之Filter過濾器回顧

SpringSecurity6從入門到實戰之Filter過濾器回顧 如果沒有SpringSecurity這個框架,我們應該通過什么去實現客戶端向服務端發送請求時,先檢查用戶是否登錄,登錄了才能訪問.否則重定向到登錄頁面 流程圖如下 官方文檔&#xff1a;https://docs.spring.io/spring-security/referen…

Ubuntu (18.04) _Mysql (8.0.X)設置密碼強度

首先 查看是否有密碼強度插件&#xff1a; SHOW PLUGINS; 如果沒有&#xff0c;則安裝 install plugin validate_password soname validate_password.so; 再次查看,會看到密碼強度插件已開 其次 查看密碼強度具體配置 show variables like validate_password%; validate…

【C++】【VScode】常用快捷鍵

在Visual Studio Code (VSCode) 中&#xff0c;有幾個快捷鍵可以幫助你更高效地編寫C代碼&#xff0c;特別是與代碼提示、自動完成等功能相關的快捷鍵。這些功能大多數依賴于安裝和配置好的C/C擴展&#xff08;通常是由Microsoft提供的&#xff09;。以下是幾個有助于代碼提示和…

echart擴展插件詞云echarts-wordcloud

echart擴展插件詞云echarts-wordcloud 一、效果圖二、主要代碼 一、效果圖 二、主要代碼 // 安裝插件 npm i echarts-wordcloud -Simport * as echarts from echarts; import echarts-wordcloud; //下載插件echarts-wordcloud import wordcloudBg from /components/wordcloudB…

uniapp實現圖片上傳——支持APP、微信小程序

uniapp實現圖片、視頻上傳 文章目錄 uniapp實現圖片、視頻上傳效果圖組件templatejs 使用 相關文檔&#xff1a; 結合 uView 插件 uni.uploadFile 實現 u-upload uploadfile 效果圖 組件 簡單封裝&#xff0c;還有很多屬性…&#xff0c;自定義樣式等…根據個人所需調整 te…

Nginx在Docker中的應用:容器化部署與擴展

在當今的云計算和微服務時代&#xff0c;Docker容器技術因其輕量級、可移植性和可擴展性而受到廣泛關注。Nginx&#xff0c;作為一個高性能的HTTP和反向代理服務器&#xff0c;也在Docker中找到了其廣泛的應用場景。本文將探討Nginx在Docker中的容器化部署和擴展策略&#xff0…

16:00面試,16:08就出來了,問的問題有點變態。。。

從小廠出來&#xff0c;沒想到在另一家公司又寄了。 到這家公司開始上班&#xff0c;加班是每天必不可少的&#xff0c;看在錢給的比較多的份上&#xff0c;就不太計較了。沒想到8月一紙通知&#xff0c;所有人不準加班&#xff0c;加班費不僅沒有了&#xff0c;薪資還要降40%…

【C語言】常見的動態內存的錯誤

前言 在動態內存函數的使用過程中我們可能會遇到一些錯誤&#xff0c;這里將常見的錯誤進行總結。 對NULL解引用 請看以下代碼&#xff1a; 可以看到&#xff0c;這時我們的malloc開辟是失敗的&#xff0c;所以返回的是空指針NULL&#xff0c;而我們卻沒有進行檢查&#xff0…

推薦:4本易發表的優質SSCI期刊,含期刊官網!

01、Risk Management and Healthcare Policy 開源四區&#xff0c;國人發表占比25%&#xff0c;發表量前三的國家分別是中國、埃塞俄比亞和美國。 該期刊對國人友好&#xff0c;年度發文量400多&#xff0c;影響因子3.6。 主要刊發公共衛生相關的文章。 研究者可以圍繞居民…

【C++ C#】 C++ 和C# 的混合項目,C++ 文件中有多個 函數和變量 定義了未使用,會影響程序正常執速度嗎?

文章目錄 1 未使用的函數和變量 是否會影響速度分析1.1 C 未使用的函數和變量&#xff1a;1.2 C# 未使用的函數和變量&#xff1a; 2 影響程序執行速度的其他因素3 如何處理未使用的代碼 一個 C 和C# 的混合項目&#xff0c;C 文件中有多個 函數和變量 定義了未使用&#xff0c…

推薦系統三十六式學習筆記:01|你真的需要個性化推薦系統嗎?

目錄 什么是推薦系統你需要推薦系統嗎總結 什么是推薦系統 讓我們來換一個角度回答三個問題&#xff0c;從而重新定義什么是推薦系統: 1、它能做什么&#xff1f; 2、它需要什么&#xff1f; 3、它怎么做。 對于第一個問題“它能做什么”&#xff0c;我的回答是&#xff1a;推…