中文亚洲精品无码_熟女乱子伦免费_人人超碰人人爱国产_亚洲熟妇女综合网

當(dāng)前位置: 首頁 > news >正文

河南省新聞出版學(xué)校怎么樣全網(wǎng)優(yōu)化哪家好

河南省新聞出版學(xué)校怎么樣,全網(wǎng)優(yōu)化哪家好,微信網(wǎng)站建設(shè)定制,試述web網(wǎng)站開發(fā)的基本流程參考: 《程序員面試筆試寶典》(何昊、葉向陽) 進(jìn)程是系統(tǒng)進(jìn)行資源分配和調(diào)度的一個(gè)獨(dú)立單位。線程是進(jìn)程的一個(gè)實(shí)體,是cpu調(diào)度和分配的基本單位。線程基本不擁有系統(tǒng)資源,只擁有必須的,但是同屬于一個(gè)進(jìn)程…

參考:

  1. 《程序員面試筆試寶典》(何昊、葉向陽)

進(jìn)程是系統(tǒng)進(jìn)行資源分配和調(diào)度的一個(gè)獨(dú)立單位。線程是進(jìn)程的一個(gè)實(shí)體,是cpu調(diào)度和分配的基本單位。線程基本不擁有系統(tǒng)資源,只擁有必須的,但是同屬于一個(gè)進(jìn)程的其他線程可以共享進(jìn)程所擁有的全部資源。

引入線程的4個(gè)優(yōu)點(diǎn):1)易于調(diào)度2)提高并發(fā)性3)開銷小4)充分發(fā)揮多處理器的功能(每個(gè)線程都在一個(gè)處理器上運(yùn)行,有助于并行)

線程與進(jìn)程的區(qū)別?

1)一個(gè)線程只能屬于一個(gè)進(jìn)程,一個(gè)進(jìn)程可以有多個(gè)線程,并且至少有1個(gè)

2)屬于一個(gè)進(jìn)程的所有線程共享進(jìn)程的所有資源,不同進(jìn)程相互獨(dú)立

3)線程又稱為輕量級進(jìn)程,線程之前切換代價(jià)小,進(jìn)程之間切換代價(jià)大

4)進(jìn)程是程序的一次執(zhí)行,線程可以理解為程序中一段程序片段的執(zhí)行

5)每個(gè)進(jìn)程有獨(dú)立的內(nèi)存空間,而線程共享其所屬進(jìn)程的內(nèi)存空間

線程同步機(jī)制?

1)臨界區(qū):通過對多線程的串行化來訪問公共資源或一段代碼,速度快,適合控制數(shù)據(jù)訪問

2)互斥量:只有擁有互斥對象的線程才有權(quán)限去訪問系統(tǒng)的公共資源。因?yàn)榛コ鈱ο笾挥幸粋€(gè),所以能保證資源不會被多個(gè)線程訪問

3)信號量:它允許多個(gè)線程在同一個(gè)時(shí)刻去訪問同一個(gè)資源,但是會限制同一時(shí)刻訪問該資源的最大線程數(shù)目

4)事件:用來通知線程有一些事件已經(jīng)發(fā)生,從而啟動后繼任務(wù)

內(nèi)核線程:操作系統(tǒng)內(nèi)核可感知的線程

用戶線程:是在用戶程序中實(shí)現(xiàn)的線程。unix系統(tǒng)

用戶線程的優(yōu)點(diǎn):(內(nèi)核線程的優(yōu)缺點(diǎn)與之相反、os可以使用混合方式實(shí)現(xiàn)線程)

1)可以在不支持線程的os中實(shí)現(xiàn)

2)創(chuàng)建和銷毀線程、線程切換等線程管理的代價(jià)小

3)允許每個(gè)進(jìn)程定制自己的調(diào)度算法,線程管理很靈活

4)線程能利用的表空間和堆??臻g比內(nèi)核線程多

缺點(diǎn)

1)同一進(jìn)程中只能同時(shí)有一個(gè)線程在運(yùn)行,如果有一個(gè)線程使用了系統(tǒng)調(diào)用而阻塞,那么整個(gè)進(jìn)程都會被掛起

2)頁面失效也會產(chǎn)生類似的問題

內(nèi)存管理的方式:

1)塊式管理:把主存分成一大塊一大塊的,當(dāng)所需的程序片段不在主存時(shí)就分配一塊主存空間,將程序片段load入。這樣易于管理但是浪費(fèi)空間

2)頁式管理:把主存分成一頁一頁(比塊式小),提高空間利用率

3)段式管理:把主存分段(比頁小),這樣提高空間利用率但是一個(gè)程序片段可能會分成幾十段,導(dǎo)致計(jì)算每段的物理地址時(shí)浪費(fèi)時(shí)間

4)段頁式管理:先把主存分成若干段,每段再分頁。段頁式管理沒取一次數(shù)據(jù),要訪問3次內(nèi)存

分段和分頁的區(qū)別:

1)頁是信息的物理單位,分頁是出于管理系統(tǒng)的需要;段是信息的邏輯單位,它含有一組意義相對完整的信息,分段是出于用戶需要。

2)頁的大小固定且由系統(tǒng)確定,將邏輯地址分為頁號和頁內(nèi)地址兩部分,是由機(jī)器硬件實(shí)現(xiàn)的。段的長度不固定,取決于用戶編寫的程序,通常由編譯程序在對源程序進(jìn)行編譯時(shí),根據(jù)信息的性質(zhì)來劃分。

3)分頁的作業(yè)地址空間是單一的線性空間,分段的作業(yè)地址空間是二維的,需要給出段名+段內(nèi)地址

虛擬內(nèi)存:它使得應(yīng)用程序認(rèn)為它擁有一個(gè)連續(xù)完整的地址空間,允許程序員編寫并運(yùn)行比實(shí)際系統(tǒng)擁有的內(nèi)存大得多的程序。實(shí)際上,它通常被分割成多個(gè)物理內(nèi)存碎片,還有部分暫時(shí)存儲在外部磁盤上,在需要時(shí)進(jìn)行數(shù)據(jù)交換。

虛擬內(nèi)存比實(shí)存的好處:

1)擴(kuò)大地址空間:尋址空間比實(shí)際大

2)內(nèi)存保護(hù):每個(gè)進(jìn)程運(yùn)行在各自的虛擬內(nèi)存地址空間,互不干擾。虛存還對特定的內(nèi)存地址提供寫保護(hù),防止代碼或數(shù)據(jù)被惡意篡改

3)公平分配內(nèi)存:每個(gè)進(jìn)程相當(dāng)于有同樣大小的虛存空間

4)當(dāng)進(jìn)程需要通信時(shí),可采用虛存共享的方式實(shí)現(xiàn)

壞處:

1)虛存管理需要建立很多數(shù)據(jù)結(jié)構(gòu),而數(shù)據(jù)結(jié)構(gòu)要占用額外的內(nèi)存

2)虛擬地址到物理地址的轉(zhuǎn)換,增加了指令的執(zhí)行時(shí)間

3)頁面的換入換出需要磁盤IO,耗時(shí)

4)如果一頁中只有一部分?jǐn)?shù)據(jù),會浪費(fèi)內(nèi)存

內(nèi)存碎片:是由多次進(jìn)行內(nèi)存分配造成的。很多空白段因?yàn)樘?#xff0c;不能滿足用戶需求而被放棄,這些小的空白段就是碎片

內(nèi)碎片:是處于區(qū)域內(nèi)部或頁面內(nèi)部的存儲塊,占用這些區(qū)域的進(jìn)程不使用這個(gè)存儲塊,系統(tǒng)頁因?yàn)檫M(jìn)程在占有,無法使用,需要等到進(jìn)程釋放或結(jié)束。

外碎片:一些不屬于任何進(jìn)程的、因?yàn)樘∏业刂凡贿B續(xù)導(dǎo)致系統(tǒng)無法分配給其他進(jìn)程的空閑存儲塊。一般處于已分配區(qū)域或頁面外部

一種特定的內(nèi)存分配算法,很難同時(shí)解決內(nèi)碎片和外碎片問題,只能根據(jù)應(yīng)用特點(diǎn)進(jìn)行取舍。

虛擬地址:是指由程序產(chǎn)生的、由段選擇符和段內(nèi)偏移地址組成的地址。不能直接訪問物理內(nèi)存,需要通過分段地址的變換處理才行

物理地址:是指現(xiàn)在CPU外部地址總線上的尋址物理內(nèi)存的地址信號,是地址變換的最終結(jié)果

邏輯地址:是由程序產(chǎn)生的段內(nèi)偏移地址。有時(shí)候直接把邏輯地址當(dāng)成虛擬地址

線性地址:是指虛擬地址到物理地址變換之間的中間層,是處理器可尋址的內(nèi)存空間(即線性地址空間)中的地址。如果啟用了分頁機(jī)制,線性地址再變換就產(chǎn)生物理地址,否則線性地址就是物理地址。

不同的邏輯地址可以映射到同一個(gè)線性地址上,不同的線性地址頁可以映射到同一個(gè)物理地址上。

cache的替換算法:

1)隨機(jī)算法RAND:隨機(jī)產(chǎn)生一個(gè)要替換的塊號,替換出去。優(yōu)點(diǎn):簡單、容易實(shí)現(xiàn)、沒有使用”歷史經(jīng)驗(yàn)“,因此不能提高cache命中率(正好讀到有用的信息=命中)

2)先進(jìn)先出FIFO:將最早進(jìn)入Cache的子塊替換。優(yōu)點(diǎn):容易實(shí)現(xiàn),系統(tǒng)開銷小;缺點(diǎn):可以替換掉早來但常用的程序塊,頁不能提高命中率

3)最近最久未使用算法LRU:least recently used,字面意思,但也不能保證過去不常用的未來也不常用,而且實(shí)現(xiàn)復(fù)雜,開銷大。常用的方法有:計(jì)數(shù)器法、寄存器棧法、硬件邏輯比較對法

4)最優(yōu)替換算法OPT:OPTimal replacement。要實(shí)現(xiàn)的話是先讓程序跑一遍,記錄下實(shí)際的頁地址流情況,根據(jù)這個(gè)找出它需要替換的頁面。但這是理想型算法,可以作為評估標(biāo)準(zhǔn),哪個(gè)的命中率與其相近就是好的

5)最近最少使用LFU:least frequently used 選擇近期最少最少訪問的頁面作為被替換的頁面。需要為每個(gè)頁面設(shè)置一個(gè)很長的計(jì)數(shù)器,并且選擇一個(gè)固定的時(shí)鐘為每個(gè)計(jì)數(shù)器計(jì)數(shù),在選擇時(shí),要從所有計(jì)數(shù)器中找到計(jì)數(shù)值最大的計(jì)數(shù)器。實(shí)現(xiàn)復(fù)雜

庫函數(shù)調(diào)用是語言或者應(yīng)用程序的一部分,運(yùn)行在用戶空間(如c庫的system malloc)。系統(tǒng)調(diào)用是os的一部分,是在內(nèi)核空間執(zhí)行的,因此調(diào)用時(shí)需要把上下文環(huán)境切換到內(nèi)核模式(如chdir write)。

靜態(tài)鏈接是把要調(diào)用的函數(shù)直接鏈接到可執(zhí)行文件中,所以一個(gè)exe文件會包含所需的所有代碼。而動態(tài)鏈接沒有拷貝所需代碼,只寫了所調(diào)用函數(shù)的描述信息,只有當(dāng)應(yīng)用程序被裝入內(nèi)存開始運(yùn)行時(shí),才會在應(yīng)用程序和動態(tài)鏈接庫(dll, dynamic link library)之間建立鏈接,os才能去執(zhí)行dll中對應(yīng)的代碼。所以前者的exe可以拷貝到別的機(jī)子運(yùn)行,后者未必可以,因?yàn)橐WCdll存在+版本正確。

靜態(tài)鏈接庫:.lib (不能包含其他dll或lib)

動態(tài)鏈接庫:.dll(能包含其他dll或lib)

核心態(tài)與用戶態(tài):當(dāng)CPU處于核心態(tài)時(shí),可以隨時(shí)進(jìn)入用戶態(tài);當(dāng)CPU處于用戶態(tài)時(shí),只有系統(tǒng)調(diào)用和中斷時(shí)才能切換到核心態(tài)。一般程序一開始都是運(yùn)行于用戶態(tài),當(dāng)程序需要使用系統(tǒng)資源時(shí),就通過調(diào)用軟中斷進(jìn)入核心態(tài)。

運(yùn)行在核心態(tài)的程序可以訪問的資源多,但是可靠性、安全性要求高,管理和維護(hù)比較復(fù)雜;用戶態(tài)程序訪問的資源有限,但是要求低,維護(hù)簡單。

核心態(tài)實(shí)現(xiàn)的功能:CPU管理和內(nèi)存管理、診斷和測試程序、輸入輸出管理、文件系統(tǒng)本身的管理。但用戶數(shù)據(jù)的管理、編譯器、網(wǎng)絡(luò)管理的部分功能等都可以放在用戶態(tài)。

內(nèi)核在創(chuàng)建進(jìn)程時(shí),會為進(jìn)程創(chuàng)建相應(yīng)的堆棧。每個(gè)進(jìn)程都有一個(gè)用戶棧,存在于用戶空間,一個(gè)內(nèi)核棧,存在于內(nèi)核空間。當(dāng)進(jìn)程在用戶空間運(yùn)行時(shí),CPU堆棧指針寄存器里面的內(nèi)容都是用戶堆棧的地址;否則是內(nèi)核??臻g地址。當(dāng)進(jìn)程陷入內(nèi)核態(tài)時(shí),進(jìn)程所用的堆棧要從用戶棧轉(zhuǎn)到內(nèi)核棧。此時(shí)先把用戶態(tài)堆棧的地址保存在內(nèi)核棧中(此時(shí)內(nèi)核??偸强盏?#xff09;,然后將寄存器內(nèi)容改為內(nèi)核棧的地址?;謴?fù)到用戶態(tài)時(shí),直接恢復(fù)之前保存的用戶棧地址。

http://www.risenshineclean.com/news/6316.html

相關(guān)文章:

  • 網(wǎng)站系統(tǒng)重要性長沙百度網(wǎng)站優(yōu)化
  • 網(wǎng)站建設(shè) 源美設(shè)計(jì)seo合作代理
  • 織夢手機(jī)網(wǎng)站模板上海百度推廣官網(wǎng)
  • ps做網(wǎng)站的效果圖網(wǎng)絡(luò)銷售掙錢嗎
  • node.js做企業(yè)網(wǎng)站seo的優(yōu)化方案
  • 怎么看網(wǎng)站做的外鏈百度app客服人工在線咨詢
  • 做網(wǎng)站推廣多少錢黑帽seo聯(lián)系方式
  • 怎么用ps做網(wǎng)站首頁關(guān)鍵詞排名方案
  • 河南省住房城鄉(xiāng)建設(shè)廳官方網(wǎng)站window優(yōu)化大師
  • 自己建網(wǎng)站的費(fèi)用百度搜索收錄入口
  • 國外網(wǎng)站空間租用費(fèi)用站長工具seo綜合查詢廣告
  • 泰州網(wǎng)站開發(fā)搜索引擎搜索
  • 廣州做企業(yè)網(wǎng)站找哪家公司好熱點(diǎn)新聞事件素材
  • 貴安新區(qū)網(wǎng)站建設(shè)地推一手項(xiàng)目平臺
  • 政府部門建設(shè)網(wǎng)站的必要性東營百度推廣公司
  • 網(wǎng)站建設(shè)專業(yè)品牌行業(yè)關(guān)鍵詞搜索排名
  • 企業(yè)網(wǎng)站seo策略關(guān)鍵詞優(yōu)化排名網(wǎng)站
  • 家居建材網(wǎng)站源碼seo 優(yōu)化案例
  • 在豬八戒網(wǎng)站如何做兼職谷歌seo服務(wù)商
  • 南通企業(yè)網(wǎng)站有哪些推廣普通話活動方案
  • 網(wǎng)站建設(shè)南陽有沒有免費(fèi)的推廣網(wǎng)站
  • wordpress常見的15個(gè)問題鄭州seo優(yōu)化外包公司
  • 蘇州公司做網(wǎng)站qq關(guān)鍵詞排名優(yōu)化
  • 山東一建建設(shè)有限公司網(wǎng)站什么是企業(yè)營銷型網(wǎng)站
  • 呼和浩特市建設(shè)委員會官方網(wǎng)站網(wǎng)站建設(shè)需求模板
  • 如何注冊騰訊企業(yè)郵箱店鋪seo是什么意思
  • 下沙網(wǎng)站建設(shè)谷歌優(yōu)化seo
  • 網(wǎng)站建設(shè)合約網(wǎng)上學(xué)電腦培訓(xùn)中心
  • 江西住房和城鄉(xiāng)建設(shè)廳網(wǎng)站windows優(yōu)化大師免費(fèi)
  • 為什么做金融網(wǎng)站犯法seo是指搜索引擎營銷