大興網(wǎng)站建設(shè)推廣網(wǎng)站seo的方法
隨著計算機編程頻繁使用,關(guān)于CPU的處理性能的討論從未停止過,由于我最近在學(xué)習(xí)多線程相關(guān)的知識,那么就來理一理CPU的核心問題。
一、線程與進程
業(yè)解釋
線程是CPU調(diào)度和分配的基本單位,可以理解為CPU只看得到線程;
進程是操作系統(tǒng)進行資源分配的最小單位;
通俗解釋
進程是你想要運行的一個可執(zhí)行程序,假設(shè)這個程序你使用了多線程的方法;
當你執(zhí)行這個程序時,CPU響應(yīng)為該進程分配資源對其進行處理,但是CPU看不到"進程", 看到的是由很多個線程組成的一個網(wǎng)絡(luò)(就是一個進程),于是CPU開始為這些線程利用時間分配算法來循環(huán)執(zhí)行任務(wù)。
?? ???? "處理":單CPU單核處理就是線程(進程)并發(fā)處理,單CPU多核就可以線程并行處理;
?? ??? ? ?? ??? 多CPU(肯定多核)進程可以并行處理
?? ??? ?
?? ??? ?"一般個人電腦都是單CPU多核"
二、并行與并發(fā)
單核CPU處理系統(tǒng)只有并發(fā),沒有并行,它可以支持多個任務(wù)的運行,但是因為只有一個處理器,所以無法并行;
多核CPU處理器可以支持并行和并發(fā),多個核可同時并行處理任務(wù),而單核上也可以并發(fā)處理多個線程。
三、ubuntu下查看電腦CPU核數(shù),CPU個數(shù),最大線程數(shù)(邏輯CPU的數(shù)量)
## CPU個數(shù)more /proc/cpuinfo |grep "physical id"|uniq|wc -l # 1## 查看CPU核數(shù)cat /proc/cpuinfo| grep "cpu cores"| uniq # 6## 查看最大線程數(shù)(邏輯CPU的數(shù)量)more /proc/cpuinfo |grep "physical id"|grep "0"|wc -l # 12