国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

針對(duì)java程序員的了解細(xì)節(jié)操作系統(tǒng)與進(jìn)程

這篇具有很好參考價(jià)值的文章主要介紹了針對(duì)java程序員的了解細(xì)節(jié)操作系統(tǒng)與進(jìn)程。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問(wèn)。

一、???

操作系統(tǒng)(淺淺概念):是用來(lái)搞管理軟件的

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?1.對(duì)下,要管理各種硬件設(shè)備

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?2.對(duì)上,要給應(yīng)用程序提供一個(gè)穩(wěn)定的運(yùn)行環(huán)境

二、??

進(jìn)程正在運(yùn)行的程序,假如程序沒(méi)有運(yùn)行就不叫程序,同一個(gè)程序運(yùn)行多次,假如你開(kāi)了三個(gè)QQ,那也就是產(chǎn)生了三個(gè)進(jìn)程。

我們說(shuō)的程序往往是可執(zhí)行文件(exe)只是硬盤(pán)中的一個(gè)靜態(tài)的東西(只有你雙擊程序,此時(shí)操作系統(tǒng),就會(huì)把可執(zhí)行文件的數(shù)據(jù)和指令,加載到內(nèi)存中,并且讓cpu去執(zhí)行這里的指令,完成一系列相關(guān)工作,運(yùn)行起來(lái)(動(dòng)態(tài)的)進(jìn)程。

進(jìn)程能夠干活,說(shuō)明進(jìn)程能夠消耗一定的資源,可執(zhí)行程序只是占據(jù)了硬盤(pán)空間,而進(jìn)程會(huì)消耗cpu資源,內(nèi)存資源,硬盤(pán),網(wǎng)路帶寬。

???這里我就要說(shuō)一手,常常兄弟們會(huì)想一個(gè)問(wèn)題,我假如下那種小電影軟件 ??,但是不安裝就是玩,會(huì)不會(huì)有病毒啥的,只要他不成為進(jìn)程,就沒(méi)有任何問(wèn)題。

???進(jìn)程也是系統(tǒng)分配硬件資源的基本單位(如同發(fā)物資,按著一家一戶(hù)這么發(fā))

一臺(tái)運(yùn)行的計(jì)算機(jī),大概率包含很多進(jìn)程,一旦東西多了,就要考慮管理

在數(shù)量多的情況下:1.先描述:會(huì)使用一個(gè)結(jié)構(gòu)體(C語(yǔ)言里面的,如同java中低配的類(lèi),沒(méi)有方法啥的,操作系統(tǒng)主要是c/c++來(lái)實(shí)現(xiàn))來(lái)記錄進(jìn)程里面的各個(gè)屬性

這個(gè)結(jié)構(gòu)體叫做PCB<-(進(jìn)程控制塊)?????????

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 2.組織:會(huì)使用一系列數(shù)據(jù)結(jié)構(gòu)(多為雙向鏈表),把多個(gè)進(jìn)程進(jìn)行一個(gè)有效的組織,隨時(shí)去遍歷,查找,匯總數(shù)據(jù)??

一旦使用雙向鏈表這樣的方式來(lái)進(jìn)行組織的時(shí)候:

(a)查看進(jìn)程的鏈表本質(zhì)就是遍歷該鏈表

(b)創(chuàng)建一個(gè)進(jìn)程,就是創(chuàng)建一個(gè)PCB結(jié)構(gòu)體,并且插入到鏈表上。

(c)銷(xiāo)毀一個(gè)進(jìn)程,就是把這個(gè)PCB結(jié)構(gòu)體從鏈表中刪除。

三、??

PCB中大概有哪些消息:

1.??PID進(jìn)程的標(biāo)識(shí),同一時(shí)刻,每個(gè)進(jìn)程的PID一定都是不同的(正是我們之前在MySQL使用中遇到的沒(méi)有PID的文件。

2.??內(nèi)存指針:

? ?表示了該進(jìn)程,對(duì)應(yīng)的內(nèi)存資源是如何的

? ?內(nèi)存資源中要有什么捏?-最主要存儲(chǔ)的就是從exe可執(zhí)行文件中可載過(guò)來(lái)的指令數(shù)據(jù)

指令:二進(jìn)制的指令,都是程序猿開(kāi)發(fā)這個(gè)程序的時(shí)候,最終編譯生成的結(jié)果,也就是程序猿寫(xiě)的代碼邏輯(進(jìn)一步的再去交給cpu執(zhí)行)

數(shù)據(jù):執(zhí)行的這些指令,會(huì)依賴(lài)一些數(shù)據(jù)

3.??文件描述表:

和硬盤(pán)資源有關(guān)了,硬盤(pán)是硬件,應(yīng)用程序一般沒(méi)法直接接觸到硬件層 ,實(shí)際操作系統(tǒng)抽象成文件這樣的概念,程序操作的是文件,文件實(shí)際上是存儲(chǔ)在硬盤(pán)上的,每個(gè)進(jìn)程就會(huì)有一個(gè)文件描述符來(lái)記錄,當(dāng)前這個(gè)進(jìn)程正在使用哪些文件

也就是說(shuō) 程序->文件->硬盤(pán)

操作系統(tǒng)打開(kāi)一個(gè)文件,就會(huì)產(chǎn)生一個(gè)文件描述符(就像文件的身份標(biāo)識(shí)一樣,當(dāng)然只在進(jìn)程內(nèi)部生效啦,)同時(shí)會(huì)使用文件描述表(類(lèi)似于數(shù)組),把文件描述符組織起來(lái)。

補(bǔ)充:進(jìn)程需要在cpu上執(zhí)行指令,每個(gè)進(jìn)程要是想完成任務(wù),都要在cpu上一樣執(zhí)行

把進(jìn)程比喻成演員,那么cpu就是表演場(chǎng)地,早期的cpu只有一個(gè)舞臺(tái),一個(gè)時(shí)間上只允許一個(gè)劇組在上面拍戲。

但是現(xiàn)在cpu 8核 16核···但是我們要處理的事務(wù)幾十個(gè),上百個(gè)

??并行:同一時(shí)刻兩個(gè)進(jìn)程,同時(shí)運(yùn)行在兩個(gè)cpu的邏輯核心上

??并發(fā):兩個(gè)進(jìn)程,在同一個(gè)舞臺(tái)上,輪著上,由于cpu切換進(jìn)程極快,圍觀上,這倆進(jìn)程串行執(zhí)行的,宏觀上,看起來(lái),他倆就是同時(shí)進(jìn)行的~

操作系統(tǒng),在調(diào)度這些進(jìn)程的時(shí)候,可能是按照并行的方式來(lái)調(diào)度,也可能是按照并發(fā)的方式來(lái)調(diào)度,~在應(yīng)用程序這一層,感知不到的! (系統(tǒng)中內(nèi)核能感知到)

由于感知不到哪種方式調(diào)度,這兩種調(diào)度方式,宏觀上體現(xiàn)效果都是一樣的,通常用并發(fā)代替并發(fā)和并行(面試官說(shuō)啥是啥,舔就完事了)

4.???PCB中關(guān)于進(jìn)程調(diào)度相關(guān)的屬性(這些屬性也就描述了進(jìn)程對(duì)應(yīng)的cpu資源使用情況)

(1)??狀態(tài) ?就緒狀態(tài)—— 一個(gè)進(jìn)程已經(jīng)隨時(shí)做好在cpu上執(zhí)行的準(zhǔn)備,)

? ? ? ? ? ? ? ? ? ? 阻塞狀態(tài)/睡眠狀態(tài): 因?yàn)槟承┰驘o(wú)法準(zhǔn)備中。

狀態(tài)之間都是相互轉(zhuǎn)化的,實(shí)際上進(jìn)程的狀態(tài)有很多種,但是這兩種事最重要的。?

(2)??優(yōu)先級(jí)

系統(tǒng)給進(jìn)程進(jìn)行調(diào)度的時(shí)候,也不完全是公平的,也會(huì)根據(jù)優(yōu)先級(jí)不同,來(lái)決定時(shí)間分配的權(quán)衡,就可以把系統(tǒng)資源調(diào)配給更重要的進(jìn)程上了。(例子:有錢(qián)>帥>舔)

(3)???上下文

這些進(jìn)程是輪著上的,一次運(yùn)行不完,就需要保證下次cpu運(yùn)行的時(shí)候,能夠從上次運(yùn)行到的位置,繼續(xù)往后運(yùn)行。(游戲存檔,讀檔)

(4)??記賬信息:相當(dāng)于統(tǒng)計(jì)信息

? 會(huì)統(tǒng)計(jì)每個(gè)進(jìn)程,在cpu上執(zhí)行了多久,執(zhí)行了多少指令了,是對(duì)于進(jìn)程調(diào)度的一個(gè)兜底。

?上述這些屬性,主要是有一個(gè)直觀認(rèn)識(shí)->認(rèn)識(shí)進(jìn)程調(diào)度大概是怎樣的,后續(xù)編碼有一定影響,每個(gè)進(jìn)程,都需要一定的內(nèi)存資源。


?

針對(duì)java程序員的了解細(xì)節(jié)操作系統(tǒng)與進(jìn)程,java,開(kāi)發(fā)語(yǔ)言

?

按照上述直接分配物理內(nèi)存的模型,此時(shí)假如一個(gè)指針越界指向其他位置,很可能會(huì)影響別的進(jìn)程的執(zhí)行,非常影響系統(tǒng)的穩(wěn)定性。

后來(lái)操作系統(tǒng)引入了“虛擬地址空間”這樣的概念,有效解決上述的問(wèn)題?

??虛擬地址,并非物理內(nèi)存中真實(shí)存在的地址,而只是在該進(jìn)程內(nèi)存在不同的進(jìn)程,可以存相同的虛擬地址,但實(shí)際上對(duì)應(yīng)得到的是不同的物理地址,虛擬地址和物理地址,操作系統(tǒng)可以靈活切換

針對(duì)java程序員的了解細(xì)節(jié)操作系統(tǒng)與進(jìn)程,java,開(kāi)發(fā)語(yǔ)言?

?

??這樣的設(shè)定之后,每個(gè)進(jìn)程的有效的虛擬地址都是固定范圍,進(jìn)程使用虛擬地址的內(nèi)存,都需要操作系統(tǒng)進(jìn)行轉(zhuǎn)換成物理地址,這個(gè)轉(zhuǎn)換的過(guò)程中,就可以針對(duì)虛擬地址是否有效,做出校驗(yàn)

虛擬地址,和物理地址的區(qū)別就像是

1班有王強(qiáng)

2班有王強(qiáng),區(qū)分這兩個(gè)王強(qiáng),要是區(qū)分就要看,年紀(jì)花名冊(cè)(物理地址唄)

虛擬空間的加持下,進(jìn)程有了獨(dú)立性,每個(gè)進(jìn)程有自己的虛擬空間->一個(gè)進(jìn)程無(wú)法直接訪(fǎng)問(wèn),或者修改其他進(jìn)程,虛擬空間,獨(dú)化了系統(tǒng)的獨(dú)立性,

假如也要進(jìn)程之間產(chǎn)生寫(xiě)配合,聯(lián)系

進(jìn)程間通信(進(jìn)程隔離性的基礎(chǔ)上,開(kāi)個(gè)口子有限制的相互影響),在進(jìn)程隔離之間開(kāi)個(gè)口,本質(zhì)相同,找一個(gè)公共區(qū)域(就像是做小區(qū)核酸,)借助公共區(qū)域來(lái)完成數(shù)據(jù)的交換

(以后介紹,本章先到這里)

最近會(huì)更新一些基本的知識(shí),和算法,打算沖一下藍(lán)橋杯加油啦文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-627224.html

到了這里,關(guān)于針對(duì)java程序員的了解細(xì)節(jié)操作系統(tǒng)與進(jìn)程的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來(lái)自互聯(lián)網(wǎng)用戶(hù)投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • 顛覆IoT行業(yè)的開(kāi)發(fā)神器!涂鴉智能重磅推出TuyaOS操作系統(tǒng)【程序員必備】

    顛覆IoT行業(yè)的開(kāi)發(fā)神器!涂鴉智能重磅推出TuyaOS操作系統(tǒng)【程序員必備】

    1 前言 作為降低 IoT 技術(shù)門(mén)檻的開(kāi)發(fā)神器,TuyaOS 操作系統(tǒng)重磅發(fā)布 3.6.0 新版本啦!針對(duì)設(shè)備安全、功耗、通信速率等關(guān)鍵功能,做了重大創(chuàng)新和優(yōu)化升級(jí)。為了助力開(kāi)發(fā)者更快速便捷地接入涂鴉IoT PaaS,并低門(mén)檻開(kāi)發(fā)出有創(chuàng)意的智能單品,每個(gè)開(kāi)發(fā)框架新增不少新功能。 具體

    2024年02月02日
    瀏覽(30)
  • 作為程序員,你很有必要了解一下IVX

    作為程序員,你很有必要了解一下IVX

    iVX 是一個(gè)“零代碼”的可視化編程平臺(tái),擁有方便的在線(xiàn)集成開(kāi)發(fā)環(huán)境,不需要下載開(kāi)發(fā)環(huán)境,打開(kāi)瀏覽器即可隨時(shí)隨地進(jìn)行項(xiàng)目編輯。iVX 還擁有“一站式”的云資源,通過(guò)這一套一站式服務(wù),iVX 可以實(shí)現(xiàn)一站式研發(fā)、一站式部署、一站式維護(hù)。iVX相當(dāng)于“一款零代碼可視

    2024年02月15日
    瀏覽(25)
  • 程序員必須了解的 10個(gè)免費(fèi) Devops 工具

    程序員必須了解的 10個(gè)免費(fèi) Devops 工具

    近年來(lái),DevOps 已經(jīng)成為一門(mén)將軟件開(kāi)發(fā) (Dev) 與 IT 運(yùn)維 (Ops) 相融合的重要學(xué)科,目的是為了縮短軟件的開(kāi)發(fā)生命周期并提供高質(zhì)量軟件的持續(xù)交付。 這篇文章整理了十種基本的免費(fèi)開(kāi)源的 DevOps 工具,這些工具已經(jīng)在實(shí)踐中得到了證明,憑借有效性和能夠簡(jiǎn)化 DevOps 流程的能

    2024年04月11日
    瀏覽(89)
  • 程序員不得不了解的計(jì)算機(jī)進(jìn)制轉(zhuǎn)換

    程序員不得不了解的計(jì)算機(jī)進(jìn)制轉(zhuǎn)換

    最近在備考軟考的軟件設(shè)計(jì)師考試,學(xué)到了關(guān)于計(jì)算機(jī)的數(shù)據(jù)表示,由于我是半路出家學(xué)的Java,導(dǎo)致計(jì)算機(jī)基礎(chǔ)知識(shí)很差,在這里記錄一下學(xué)習(xí)感受 早期計(jì)算機(jī)的存儲(chǔ)介質(zhì)是晶體管,晶體管根據(jù)電壓不同,只能表示2種狀態(tài),也就是0和1 計(jì)算機(jī)使用二進(jìn)制運(yùn)算更加方便 更詳細(xì)

    2024年02月05日
    瀏覽(19)
  • 黑馬程序員帶你快速了解區(qū)塊鏈六大特點(diǎn)

    黑馬程序員帶你快速了解區(qū)塊鏈六大特點(diǎn)

    區(qū)塊鏈上數(shù)據(jù)的驗(yàn)證、記賬、存儲(chǔ)、維護(hù)和傳輸?shù)染腔诜植际浇Y(jié)構(gòu),采用數(shù)學(xué)和算法的方法而不是中心機(jī)構(gòu)來(lái)構(gòu)建分布式節(jié)點(diǎn)之間的信任關(guān)系,從而形成非中心化的、可信任的分布式結(jié)構(gòu)。交易參與者可以自證并直接交易,不需要依賴(lài)第三方中介機(jī)構(gòu)的信任背書(shū)。 不可篡

    2024年03月25日
    瀏覽(89)
  • 【閃擊Linux系列P9】程序員一定要了解的計(jì)算機(jī)管理理念——描述與組織

    【閃擊Linux系列P9】程序員一定要了解的計(jì)算機(jī)管理理念——描述與組織

    ? 前言 大家好吖,歡迎來(lái)到 YY 滴 Linux系列 ,熱烈歡迎! 本章主要內(nèi)容面向接觸過(guò)Linux的老鐵,從操作系統(tǒng)層面向大家介紹進(jìn)程: 主要內(nèi)容含: 歡迎訂閱 YY 滴Linux專(zhuān)欄!更多干貨持續(xù)更新!以下是傳送門(mén)! 訂閱專(zhuān)欄閱讀: YY 的《Linux》系列 ????? 【Linux】Linux環(huán)境搭建

    2024年02月12日
    瀏覽(26)
  • 好的程序員不該局限技術(shù)故步自封,更多去了解產(chǎn)品,運(yùn)營(yíng),銷(xiāo)售,推廣,公司運(yùn)作吧

    好的程序員不該局限技術(shù)故步自封,更多去了解產(chǎn)品,運(yùn)營(yíng),銷(xiāo)售,推廣,公司運(yùn)作吧

    在當(dāng)今技術(shù)迅速發(fā)展的時(shí)代,作為程序員,我們常常面臨著學(xué)習(xí)速度跟不上技術(shù)變化的困擾。每年涌現(xiàn)的新技術(shù)、新框架,給我們帶來(lái)了巨大的挑戰(zhàn)。尤其是隨著年齡增長(zhǎng),學(xué)習(xí)能力的下降似乎讓我們更加被動(dòng)。技術(shù)的發(fā)展也并非一帆風(fēng)順,很容易陷入瓶頸,無(wú)法進(jìn)一步提升

    2024年02月19日
    瀏覽(21)
  • java程序員的就業(yè)指導(dǎo)(重點(diǎn))

    想要成為合格的Java程序員或工程師到底需要具備哪些專(zhuān)業(yè)技能,面試者在面試之前到底需要準(zhǔn)備哪些東西呢?本文陳列的這些內(nèi)容既可以作為個(gè)人簡(jiǎn)歷中的內(nèi)容,也可以作為面試的時(shí)候跟面試官聊的東西,你可以把這些內(nèi)容寫(xiě)到你的簡(jiǎn)歷中,當(dāng)然更需要的是你在面試的時(shí)候向

    2024年02月09日
    瀏覽(20)
  • Linux必備基礎(chǔ)命令,JAVA程序員必備

    Linux必備基礎(chǔ)命令,JAVA程序員必備

    目錄 一、了解基本的左側(cè)欄什么意思?編輯 二、ls,ll(list,查找目錄內(nèi)容) 三、cd(change directory,切換目錄) 小技巧,我們?cè)诓檎覗|西的時(shí)候,可以使用tab進(jìn)行智能補(bǔ)全。 四、touch(建立文件) echo(打印到控制臺(tái)) 五、vim(對(duì)文件進(jìn)行更細(xì)粒度的編輯) 六、mkdir(創(chuàng)建目錄

    2024年02月05日
    瀏覽(39)
  • AI會(huì)完全替代Java程序員嗎?

    AI會(huì)完全替代Java程序員嗎?

    作為一個(gè) Java 開(kāi)發(fā)的從業(yè)人員,以我自己對(duì)GPT的使用來(lái)說(shuō), AI 現(xiàn)階段想要完全取代程序員,那是完全不可能的。 當(dāng)然,隨著算力以及數(shù)據(jù)的訓(xùn)練越來(lái)越多,以后不好說(shuō),個(gè)人覺(jué)得大部分基礎(chǔ)代碼完全可以使用 AI 生成, 但是當(dāng)涉及到非常復(fù)雜的業(yè)務(wù)的時(shí)候,AI 還是很難做到(

    2024年01月22日
    瀏覽(20)

覺(jué)得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包