0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

計(jì)算機(jī)系統(tǒng)講解(下)

CHANBAEK ? 來源:CurryCoder的程序人生 ? 作者:CurryCoder ? 2023-09-27 15:10 ? 次閱讀

1.操作系統(tǒng)管理硬件

真正操縱硬件的是操作系統(tǒng),操作系統(tǒng)可以看成是應(yīng)用程序和硬件之間的中間層。所有的應(yīng)用程序?qū)τ布牟僮鞅仨毻ㄟ^操作系統(tǒng)來完成,這樣做的目的是:首先,防止硬件被失控的應(yīng)用程序所濫用;其次,操作系統(tǒng)提供統(tǒng)一的機(jī)制來控制這些復(fù)雜的底層硬件。

圖片

操作系統(tǒng)管理硬件

為了實(shí)現(xiàn)操作系統(tǒng)對硬件的操縱,操作系統(tǒng)引入了幾個(gè)抽象的概念。 文件是對IO設(shè)備的抽象、虛擬內(nèi)存是對內(nèi)存和磁盤IO的抽象、進(jìn)程是對處理器、內(nèi)存及IO設(shè)備的抽象 。

圖片

操作系統(tǒng)的抽象機(jī)制

2.進(jìn)程的解釋

(1).以shell命令行中執(zhí)行./hello命令為例進(jìn)行說明,最開始的時(shí)候只有shell進(jìn)程在運(yùn)行,即shell在等待命令行的輸入。

圖片

命令輸入

(2).當(dāng)通過shell進(jìn)程加載hello進(jìn)程時(shí),shell進(jìn)程通過系統(tǒng)調(diào)用來執(zhí)行我們的請求。系統(tǒng)調(diào)用會將控制權(quán)從shell進(jìn)程傳遞給操作系統(tǒng),操作系統(tǒng)保存shell進(jìn)程的 上下文 。然后,創(chuàng)建一個(gè)新的hello進(jìn)程及其上下文。接著,將控制權(quán)轉(zhuǎn)交給新的hello進(jìn)程。hello進(jìn)程執(zhí)行完成后,操作系統(tǒng)會恢復(fù)shell進(jìn)程的上下文,并且將控制權(quán)交給shell進(jìn)程,之后shell進(jìn)程繼續(xù)等待下一個(gè)命令的輸入。

圖片

進(jìn)程上下文切換

上下文:操作系統(tǒng)會跟蹤進(jìn)程運(yùn)行中所需要的所有狀態(tài)信息,這種狀態(tài)(例如:當(dāng)前PC和寄存器的值、內(nèi)存中的內(nèi)容等)稱為上下文。

3.線程的解釋

現(xiàn)代操作系統(tǒng)中一個(gè)進(jìn)程由多個(gè)線程組成,每個(gè)線程都運(yùn)行在進(jìn)程的上下文中,共享代碼和數(shù)據(jù)。

圖片

線程

4.虛擬內(nèi)存

操作系統(tǒng)為每個(gè)進(jìn)程提供了一個(gè)假象,即每個(gè)進(jìn)程都在獨(dú)自占用整個(gè)內(nèi)存空間。每個(gè)進(jìn)程看到的內(nèi)存都是一樣的,稱之為虛擬地址空間。

圖片

進(jìn)程的虛擬地址空間

進(jìn)程的虛擬地址空間:從下往上,地址是增大的。

第一個(gè)區(qū)域:用來存放程序的代碼和數(shù)據(jù)的,這個(gè)區(qū)域的內(nèi)容是從可執(zhí)行目標(biāo)文件中加載而來的。對所有進(jìn)程來說,代碼都是從固定的地址開始的;

第二個(gè)區(qū)域:堆heap,函數(shù)malloc所申請的地址空間就在這個(gè)堆中的,堆可以在運(yùn)行時(shí)動態(tài)的擴(kuò)展和收縮;

第三個(gè)區(qū)域:共享庫的存放區(qū)域,這個(gè)區(qū)域存放C語言的標(biāo)準(zhǔn)庫和數(shù)學(xué)庫這類共享庫的代碼和數(shù)據(jù);

第四個(gè)區(qū)域:用戶棧,函數(shù)調(diào)用的本質(zhì)就是壓棧;

第五個(gè)區(qū)域:為內(nèi)核保留的區(qū)域,應(yīng)用程序的代碼不能讀寫這個(gè)區(qū)域的數(shù)據(jù),也不能直接調(diào)用內(nèi)核中定義的函數(shù),這個(gè)區(qū)域?qū)?yīng)用程序不可見;

5.文件

Linux中一切皆文件,鍵盤、鼠標(biāo)、磁盤、顯示器,甚至網(wǎng)絡(luò)這些都可以看成是文件,系統(tǒng)中所有的輸入和輸出都可以通過讀寫文件來完成。

圖片

"一切皆文件"

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報(bào)投訴
  • 處理器
    +關(guān)注

    關(guān)注

    68

    文章

    19117

    瀏覽量

    228861
  • 計(jì)算機(jī)
    +關(guān)注

    關(guān)注

    19

    文章

    7383

    瀏覽量

    87641
  • 操作系統(tǒng)
    +關(guān)注

    關(guān)注

    37

    文章

    6697

    瀏覽量

    123147
  • 計(jì)算機(jī)系統(tǒng)

    關(guān)注

    0

    文章

    280

    瀏覽量

    24074
  • 線程
    +關(guān)注

    關(guān)注

    0

    文章

    504

    瀏覽量

    19636
收藏 人收藏

    評論

    相關(guān)推薦

    計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)

    計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)
    發(fā)表于 05-09 19:03

    什么是計(jì)算機(jī)系統(tǒng)、計(jì)算機(jī)硬件和計(jì)算機(jī)軟件?

    第一章 計(jì)算機(jī)系統(tǒng)概論1. 什么是計(jì)算機(jī)系統(tǒng)、計(jì)算機(jī)硬件和計(jì)算機(jī)軟件?硬件和軟件哪個(gè)更重要?解:P3計(jì)算機(jī)系統(tǒng):由
    發(fā)表于 07-22 09:06

    什么是計(jì)算機(jī)系統(tǒng)?硬件和軟件哪個(gè)更重要?

    第一章計(jì)算機(jī)系統(tǒng)概論1 .什么是計(jì)算機(jī)系統(tǒng)、計(jì)算機(jī)硬件和計(jì)算機(jī)軟件?硬件和軟件哪個(gè)更重要?解: P3計(jì)算機(jī)系統(tǒng):由
    發(fā)表于 07-26 07:18

    計(jì)算機(jī)系統(tǒng)中的軟件系統(tǒng)

    專用計(jì)算機(jī)現(xiàn)代計(jì)算機(jī)運(yùn)算速度最高可達(dá)每秒幾萬億次幾十億次幾億次幾萬次計(jì)算機(jī)輔助制造是計(jì)算機(jī)應(yīng)用領(lǐng)域之一其英文縮寫是所謂的信息是指基本素材非數(shù)值數(shù)據(jù)數(shù)值數(shù)據(jù)處理后的數(shù)據(jù)
    發(fā)表于 09-13 07:22

    嵌入式計(jì)算機(jī)系統(tǒng)概述

    嵌入式計(jì)算機(jī)系統(tǒng)概述:定義:以應(yīng)用為中心、以計(jì)算機(jī)技術(shù)為基礎(chǔ),軟件硬件可裁剪,適應(yīng)應(yīng)用系統(tǒng)對功能、可靠性、成本、體積、功耗嚴(yán)格要求的專用計(jì)算機(jī)系統(tǒng)嵌入式
    發(fā)表于 12-22 06:08

    詳解單芯片微型計(jì)算機(jī)系統(tǒng)

    什么是單芯片微型計(jì)算機(jī)系統(tǒng)呢?單芯片微型計(jì)算機(jī)系統(tǒng)是由哪些部分組成的?
    發(fā)表于 01-19 07:05

    計(jì)算機(jī)系統(tǒng)概論

    1.1 計(jì)算機(jī)系統(tǒng)簡介1.2 計(jì)算機(jī)的基本組成1.3 計(jì)算機(jī)硬件的主要技術(shù)指標(biāo)1.4 本書結(jié)構(gòu)
    發(fā)表于 04-11 09:31 ?0次下載

    基于EDA平臺的計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)課程實(shí)踐

    基于EDA平臺的計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)課程實(shí)踐本文分析了計(jì)算機(jī)專業(yè)本科生課程計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)的教學(xué)現(xiàn)狀, 結(jié)合目前在教學(xué)實(shí)踐中采用的部分措施, 提出了在計(jì)算機(jī)系統(tǒng)結(jié)
    發(fā)表于 12-05 16:08 ?0次下載

    微型計(jì)算機(jī)系統(tǒng)

             微型計(jì)算機(jī)系統(tǒng)與傳統(tǒng)的計(jì)算機(jī)系統(tǒng)一樣,也是由硬件系統(tǒng)和軟件系統(tǒng)兩大部分組成的。2.1
    發(fā)表于 03-03 08:31 ?0次下載

    什么是計(jì)算機(jī)系統(tǒng)的容錯性

    什么是計(jì)算機(jī)系統(tǒng)的容錯性             所謂容錯是指在故障存在的情況計(jì)算機(jī)系統(tǒng)不失效,仍然能夠正常工作的特性
    發(fā)表于 01-08 13:49 ?1627次閱讀

    計(jì)算機(jī)系統(tǒng)小結(jié)

    計(jì)算機(jī)系統(tǒng)小結(jié)   習(xí)慣上所稱的“電子計(jì)算機(jī)”是指現(xiàn)在廣泛應(yīng)用的電子數(shù)字計(jì)算機(jī),它分為專用計(jì)算機(jī)和通用計(jì)算機(jī)兩大類。專
    發(fā)表于 04-13 14:14 ?679次閱讀

    計(jì)算機(jī)系統(tǒng)電磁輻射測量

    本文提出了室內(nèi)電磁環(huán)境計(jì)算機(jī)系統(tǒng)的電測輻射測量系統(tǒng)的構(gòu)建方法,完成了對計(jì)算機(jī)系統(tǒng)輻射頻譜和時(shí)域波形的測量。
    發(fā)表于 04-20 14:27 ?1168次閱讀

    淺析計(jì)算機(jī)系統(tǒng)的組成

    近年來,隨著 PC( Personal Computer, 個(gè)人電腦) 在家庭中的廣泛普及, 計(jì)算機(jī)對我們的生活產(chǎn)生了深遠(yuǎn)的影響。如今, 不僅是 PC,與我們生活息息相關(guān)的手機(jī)、平板等也廣泛應(yīng)用了計(jì)算機(jī)。通過此文來介紹一
    的頭像 發(fā)表于 05-09 15:57 ?1215次閱讀
    淺析<b class='flag-5'>計(jì)算機(jī)系統(tǒng)</b>的組成

    計(jì)算機(jī)系統(tǒng)如何應(yīng)對大模型時(shí)代的挑戰(zhàn)與機(jī)遇

    “操作系統(tǒng)管理著計(jì)算機(jī)的資源和進(jìn)程,以及所有的硬件和軟件。計(jì)算機(jī)的操作系統(tǒng)讓用戶在不需要了解計(jì)算機(jī)語言的情況
    發(fā)表于 01-23 11:06 ?499次閱讀
    <b class='flag-5'>計(jì)算機(jī)系統(tǒng)</b>如何應(yīng)對大模型時(shí)代的挑戰(zhàn)與機(jī)遇

    計(jì)算機(jī)系統(tǒng)的組成和功能

    計(jì)算機(jī)系統(tǒng)是一個(gè)復(fù)雜而龐大的概念,它涵蓋了計(jì)算機(jī)硬件、軟件以及它們之間相互作用的所有元素。為了全面而深入地探討計(jì)算機(jī)系統(tǒng),本文將從定義、組成、功能、發(fā)展歷程以及未來趨勢等方面進(jìn)行詳細(xì)闡述。
    的頭像 發(fā)表于 07-24 17:41 ?687次閱讀