翻了翻,感受標準庫支持的併發應該是kernel level 的(書裏也沒有明確寫,不過他寫了諸如「操做系統來安排」「須要知道硬件支持多少線程」等等話語,因此猜想是kernel的。kernel level就是操做系統知道代碼定義了幾個線程而且知道硬件支持多少線程,能夠的話就會安排上去,不會像user level定義的線程全靠用戶本身定義的task switch,操做系統只認爲這是一個單線程的進程,只安排給它一個處理單元(應該是一個 processor)。c++
另外從做者在書裏寫的c++是語言裏最底層的,不須要一門更底層的語言這話來看。。。也應該支持kernel level的併發。。。。併發
這裏涉及兩個問題,一個是c11標準庫支持的併發是user level仍是kernel level,以及兩者的定義。spa
但願我兩個問題都沒有理解錯。操作系統
ps: 這個中英文對照也頗有意思,大概是 CPU---中央處理器 processor-----處理器 core(processing unit/core)----核心 若是是一個 4 dual-core processor的處理器,我以爲中文翻譯應該是4核8線程的處理器,此核非彼核,有意思。
線程
在我理解裏就是,processor運行一個進程,core處理一個線程(固然科學一點講,涉及不少知識。。懶得去複習。。)。那有一個問題就是,若是一個單線程的進程被一個雙線程(1 dual-core processor)的處理器運行着,那是否是這個處理器的另外一個線程就浪費了。。。由於別的進程的線程講道理不能被安排進來。又或者難道一個core就能夠單獨運行一個進程????翻譯