CPU 個數、CPU 核心數、CPU 執行緒數

CPU 個數、核心數、執行緒數 定義 CPU 個數即 CPU 晶片個數。 **CPU 核心數(core)**是指物理上,也就是硬體上存在著幾個核心。比如,雙核就是包括 2 個相對獨立的 CPU 核心單元組,四核就包含 4 個相對獨立的 CPU 核心單元組。 **執行緒數(thread)**是一種邏輯的概念,簡單地說,就是模擬出的 CPU 核心數。比如,可以通過一個 CPU 核心數模擬出 2 執行緒的 CPU,也就是說,這個單核心的 CPU 被模擬成了一個類似雙核心 CPU 的功能。我們從工作管理員的效能標籤頁中看到的是兩個 CPU。比如 Intel 賽揚 G460 是單核心、雙執行緒的 CPU,Intel 酷睿 i3 3220 是雙核心、四執行緒,Intel 酷睿 i7 4770K 是四核心、八執行緒,Intel 酷睿 i5 4570 是四核心四執行緒等等。對於一個 CPU,執行緒數總是大於或等於核心數的。一個核心最少對應一個執行緒,但通過超執行緒(Hyper Thread)技術,一個核心可以對應兩個執行緒,也就是說它可以同時執行兩個執行緒。 CPU 的執行緒數概念僅僅只針對 Intel 的 CPU 才有用,因為它是通過 Intel 超執行緒技術來實現的,最早應用在 Pentium4 上。如果沒有超執行緒技術,一個 CPU 核心對應一個執行緒。所以,對於 AMD 的 CPU 來說,只有核心數的概念,沒有執行緒數的概念。 為何要增加執行緒數? CPU 之所以要增加執行緒數,是源於多工處理(multi-tasking)的需要。執行緒數越多,越有利於同時執行多個程式,因為執行緒數等同於在某個瞬間 CPU 能並行處理(concurrent)的任務數。因此,執行緒數是一種邏輯的概念,簡單地說,就是模擬出的 CPU 核心數。一個核心最少對應一個執行緒,但英特爾有個超執行緒技術可以把一個物理執行緒模擬出兩個執行緒來用,充分發揮 CPU 效能,即一個核心可以有兩個到多個執行緒。 intel x86:一核心有 2 個邏輯執行緒。 IBM power8:一核心有 8 個邏輯執行緒。 多核 CPU 多核心 CPU 主要分原生多核和封裝多核。 原生多核指的是真正意義上的多核,最早由 AMD 提出,每個核心之間都是完全獨立的,都擁有自己的前端匯流排,不會造成衝突,即使在高負載狀況下,每個核心都能保證自己的效能不受太大的影響,通俗的說,原生多核的抗壓能力強,但是需要先進的工藝,每擴充套件一個核心都需要很多的研發時間。 封裝多核是隻把多個核心直接封裝在一起,比如 Intel 早期的 PD 雙核系列,就是把兩個單核直接封裝在一起,但兩核心只能共同擁有一條前端匯流排,在兩個核心滿載時,兩個核心會爭搶前端匯流排,導致效能大幅度下降,所以早期的PD被扣上了高頻低能的帽子,要提高封裝多核的效能,在多工的高壓下儘量減少效能損失,只能不斷的擴大前端匯流排的總體大小,來彌補多核心爭搶資源帶來的效能損失,但這樣做只能在一定程度上彌補效能的不足,和原生的比起來還是差了很多,而且後者成本比較高,優點在於多核心的發展要比原生快的多。 核心 核心(Die)又稱為核心,是 CPU 最重要的組成部分。CPU 中心那塊隆起的晶片就是核心,是由單晶矽以一定的生產工藝製造出來的,CPU 所有的計算、接受/儲存命令、處理資料都由核心執行。各種 CPU 核心都具有固定的邏輯結構,一級快取、二級快取、執行單元、指令級單元和匯流排介面等邏輯單元都會有科學的佈局。 多核心處理器(Multi-core processor) 又稱多核心微處理器,是在單個 CPU 中,加入兩個或以上的獨立實體中央處理單元,或稱核心(core)。這些核心可以分別獨立地執行程式指令,利用平行計算的能力加快程式的執行速度。只有兩個核心的處理器,稱為雙核心處理器(dual-core processor)。多核心通常是對於中央處理器 CPU 而論的,但是某些時候也指 DSP 和 SoC。 把將兩個或更多獨立處理器封裝在一個單一積體電路(IC)中的方案稱為多核心處理器;而封裝在不同 IC 中的獨立處理器形成的計算機系統被稱為多處理器。 多核心處理器 !...

<span title='2022-07-02 21:43:15 +0800 +0800'>July 2, 2022</span>&nbsp;·&nbsp;1 min&nbsp;·&nbsp;Rain Hu

[作業系統] 計算機作業系統

計算機作業系統 概述 進程管理 死鎖 記憶體管理 設備管理 鏈接 參考資料 cyc2018 Mr. opengate

<span title='2022-07-02 04:00:55 +0800 +0800'>July 2, 2022</span>&nbsp;·&nbsp;1 min&nbsp;·&nbsp;Rain Hu

[計算機作業系統] 概述

作業系統 簡介 電腦系統主要可分成四個部分,或分成硬體(hardware)、軟體(software)、數據(data) 硬體(hardware):為系統提供基本的計算資源。 中央處理器(central processing unit, CPU) 記憶體(memory) I/O 裝置 應用程式(Application programs):定義資源如何用來解決使用者的計算問題。 使用者(users) 作業系統(Operating system, OS): 作業系統(Operating system, OS) 是管理電腦硬體與軟體資源的電腦程式,同時也是電腦系統的核心與基石。 OS 最主要的兩個功能是: 資源分配:根據需求調配資源分配率(resource utilization)與效能(performance) 監控使用者程式的執行,避免不正常的運作造成對系統的危害。 一個標準的 PC 作業系統應該提供以下的功能: 行程管理(Processing management) 記憶體管理(Memory management) 檔案系統(File system) 網路通訊(Networking) 安全機制(Security) 使用者介面(User interface) 驅動程式(Device drivers) PC 基本特徵 1. 並行計算(Concurrent computing) Concurrent computing 是指宏觀上在一段時間內能同時運行多個進程,微觀上是交替發生的;而平行計算(parallel computing) 則指同一個時間內能運行多個指令。 平行計算需要硬體支持,如多線程(multi-thread)、多核處理器(multi-core processor)或者分散式計算機系統(distributed OS)。 作業系統通過引入進程(process)與線程(thread),使程式能夠並行運作。 2. 分享(Sharing) 共享是指系統中的資源可以被多個並行進程共同使用。 有兩種共享方式:互斥共享(mutual exclusion)與同時訪問(time sharing)。 互斥共享的資源稱為臨界資源(critical resources),例如印表機等,在同一時間內只允許一個進程訪問,需要用同步機制來實現互斥訪問。 3. 虛擬(Virtual) 虛擬技術把一個物理實體轉換為多個邏輯實體。 主要有兩種虛擬技術:分時技術(time sharing)、空間分享技術。 多個進程能在同一個處理器上並行處理使用了分時技術,讓每個進程輪流占用處理器,每次只執行一小個時間片段並快速切換。 虛擬記憶體使用了空間分享技術,它將物理記憶體抽象化為地址空間,每個進程都有各自的地址空間。地址空間的頁被映射到物理記憶體中,地址空間的頁並不需要全部在物理記憶體中,當使用到一個沒有物理記憶體的頁時,執行頁面置換演算法,將該頁置換到記憶體中。 4....

<span title='2022-07-02 04:00:55 +0800 +0800'>July 2, 2022</span>&nbsp;·&nbsp;2 min&nbsp;·&nbsp;Rain Hu

[計算機作業系統] 死鎖

準備中

<span title='2022-07-02 04:00:55 +0800 +0800'>July 2, 2022</span>&nbsp;·&nbsp;1 min&nbsp;·&nbsp;Rain Hu

[計算機作業系統] 記憶體管理

準備中

<span title='2022-07-02 04:00:55 +0800 +0800'>July 2, 2022</span>&nbsp;·&nbsp;1 min&nbsp;·&nbsp;Rain Hu