2018-06-18_計(jì)算機(jī)基本概念

今天看了劉欣的CDSN:碼農(nóng)翻身 ,一個(gè)技術(shù)大牛寫的博客文章;

大牛把計(jì)算機(jī)原理通過一個(gè)個(gè)小故事,讓你明白工作的過程,個(gè)人感覺挺容易理解和接受的;

今天主要學(xué)到的幾個(gè)點(diǎn)是:進(jìn)程,線程,cpu,內(nèi)存,硬盤,Linux操作系統(tǒng)幾個(gè)概念,以及工作過程;

理解到計(jì)算機(jī)底層硬件之間的相互合作,各自負(fù)責(zé)不同的功能;


基本的原理圖



計(jì)算機(jī)的執(zhí)行是根據(jù)程序代碼一行一行執(zhí)行的,自上而下,除非碰到循環(huán)判斷,以及控制流程語句,會(huì)跳轉(zhuǎn)執(zhí)行;

1. cpu是整個(gè)計(jì)算機(jī)的核心,執(zhí)行速度最快,處理單個(gè)任務(wù),同一個(gè)時(shí)間只運(yùn)行一個(gè)進(jìn)程;

2. 內(nèi)存存儲(chǔ)了需要執(zhí)行的代碼,運(yùn)行速度是cpu的百分之一;

3. 硬盤存儲(chǔ)資料,斷電也不會(huì)影響其數(shù)據(jù),運(yùn)行速度最慢,是cpu的千萬份之一;

4. 進(jìn)程,又叫process control block簡(jiǎn)稱pcb,保留了一個(gè)程序的工作現(xiàn)場(chǎng);

5. 線程:一個(gè)進(jìn)程當(dāng)資源容器,包含多個(gè)進(jìn)程,共享進(jìn)程的資源(地址空間,全局變量,文件資源);

線程的基本原理

6. 函數(shù)的調(diào)用,主要是參數(shù)和返回地址,用幀標(biāo)記函數(shù)(一段連續(xù)的內(nèi)存空間);ebp和esp在執(zhí)行完函數(shù)之后會(huì)重新指向調(diào)用著的棧幀;

7.內(nèi)存的分配過程比較復(fù)雜,涉及到棧(先進(jìn)后出),內(nèi)存地址的分配,以及寄存器的運(yùn)算,

詳細(xì)的可參考:CPU阿甘:函數(shù)調(diào)用的秘密



總的來說:

1.計(jì)算機(jī)的各種模式挺有意思的,為了解決具體一類問題而設(shè)計(jì)出來的;

2. 記得php的老師講過,慢慢加深對(duì)內(nèi)存的理解吧;

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容