內部碎片(internal fragmentation)和外部碎片(external fragmentation)的區別

內部碎片和外部碎片之間的主要區別在於,內部碎片是分配的記憶體塊之間未使用的儲存空間,而外部碎片是相鄰塊之間非常小的用於服務請求的孔。...

主要區別

內部碎片和外部碎片之間的主要區別在於,內部碎片是分配的記憶體塊之間未使用的儲存空間,而外部碎片是相鄰塊之間非常小的用於服務請求的孔。

內部碎片(internal fragmentation) vs. 外部碎片(external fragmentation)

內部碎片是一種碎片型別,當分配給程式的記憶體比所需的記憶體大時會發生這種情況。在這裡,自由空間被稱為內部碎片。另一方面,外部碎片是在非傳染性記憶塊之間形成的一種自由空間。

內部碎片化的原因是記憶體被分成固定大小的塊。另一方面,外部碎片是指記憶體根據不同程序的大小被劃分為大小可變的塊時發生的過程。

內部碎片問題可以透過將記憶體分配給記憶體塊的動態部分中的程式來解決,並在程式執行過程中不需要記憶體時釋放記憶體。另一方面,外部碎片可以透過分頁、壓縮和分段來解決,這樣就可以以非連續的方式將記憶體分配給程式。

比較圖

內部碎片外部碎片
程式所需記憶體與為其分配的記憶體之間的差異稱為內部碎片。在非傳染性儲存碎片或碎片中出現的洞或未使用的空間太短而無法儲存新程式,稱為外部碎片。
它指的是在一個分配的區域中塊之間未使用的空間。它是指由於儲存請求太短而未使用的空間。
原因
內部碎片化的原因是記憶體被分成固定大小的塊。當記憶體或儲存器根據不同程式的大小由不同大小的塊組成時,就會發生外部碎片。
發生
當分配給程式的空間超過所需空間時,就會發生這種情況。當從記憶體中刪除程式時,會留下導致外部碎片的可用空間。
解決方案
它可以透過將記憶體分配給記憶體塊的動態部分的程式來解決,並在程式執行過程中不需要記憶體時釋放記憶體。它可以透過分頁、壓縮和分段來解決,因此記憶體可以以非連續的方式分配給程式。

什麼是內部碎片(internal fragmentation)?

內部碎片是一種碎片型別,當分配給程式的記憶體比所需的記憶體大時會發生這種情況。當記憶體被分配到固定大小的塊中時,就會發生這種情況。

每當程式需要記憶體時,系統都會分配固定大小的塊。如果分配給程式的記憶體比所請求的記憶體更大,則稱為記憶體碎片。固定大小塊內的這個空間不能分配給任何程式,因為它不足以儲存新程式。

內部碎片問題可以透過將記憶體劃分為可變大小的塊並將最佳大小的塊分配給需要記憶體的程式來解決。它不能完全解決內部分裂問題,但會在一定程度上減輕內部分裂。

例子

這是一個內部碎片化的例子。記憶體空間被分成固定大小為18470位元組的塊。但是,一個程式需要18460位元組。系統將為其分配固定大小的分割槽塊,即18470位元組。因此,18470位元組的10個位元組將保持為空,這是內部碎片的來源。

什麼是外部碎片(external fragmentation)?

外部碎片(External fragmentation)是指在非傳染性記憶體或儲存碎片之間出現的洞或未使用的空間,它太短而無法儲存新的程式。當系統的儲存記憶體中有足夠的可用空間來滿足程式的記憶體需求時,就發生了這種情況。但是,由於系統的可用記憶體是非相鄰的,因此對程式的需求無法實現或滿足。

無論是應用第一適合的記憶體分配策略還是最適合的記憶體分配策略,這都將是外部碎片化的原因。當一個程式被載入並從記憶體中刪除時,會留下造成漏洞的可用空間。記憶體空間中有大量這樣的洞,導致外部碎片。

第一擬合和最佳擬合記憶體分配策略可以減少外部碎片的數量,但不能完全消除。分頁、壓縮和分段可以解決外部碎片問題。

壓縮算**將記憶體的所有內容移到一邊並釋放大量記憶體塊。但這是一個昂貴的程式。解決此問題的另一種解決方案是允許程序以非連續的方式獲得實體記憶體。這個解決方案可以透過使用分頁和分段過程來實現。

例子

在計算機系統中,當程式請求空間時,塊以塊的形式分配。假設為了在系統中儲存資訊和資料,有一塊記憶體是空的。現在,有一個程式,我們想儲存在記憶體中。程式將動態地儲存在記憶體中,也就是說,隨機地,在任何它感覺舒服或發現空間的地方。當下一個程式需要儲存時,它會在記憶體空間中進行相應的調整。現在,我們從系統中刪除一個程式。它會在記憶體中留下空間或漏洞。此孔或空間不能與其他儲存器一起使用,即使它位於空閒記憶體旁邊並導致外部碎片的形成。

主要區別

  1. 程式所需記憶體與分配給程式的記憶體之間的差異稱為內部碎片,而非傳染性記憶體碎片之間出現的洞或未使用的空間太短而無法儲存新程式,則稱為外部碎片。
  2. 內部碎片是指分配區域中塊之間未使用的空間,另一方面,外部碎片是指由於太短而無法儲存請求而保持未使用的空間。
  3. 內部碎片化的原因是記憶體被分成固定大小的塊。相反地,當記憶體或儲存器根據不同程式的大小被組合或劃分為大小可變的塊時,就會發生外部碎片。
  4. 當分配給程式的空間超過所需空間時,就會發生內部碎片。另一方面,當程式從記憶體中刪除時,會在系統儲存中留下導致外部碎片的可用空間時,就會出現外部碎片。
  5. 內部碎片問題可以透過將記憶體分配給記憶體塊的動態部分中的程式來解決,並在程式執行過程中不需要記憶體時釋放記憶體。另一方面,外部碎片可以透過分頁、壓縮和分段來解決,這樣就可以以非連續的方式將記憶體分配給程式。

對比影片

結論

以上討論總結了計算機儲存中造成儲存空間浪費的兩個過程:內部碎片化和外部碎片化。當分配給程式的空間超過所需的空間時,就會發生內部碎片;而當程式從記憶體中刪除後留下可用空間時,就會出現外部碎片。

  • 發表於 2020-02-13 05:09
  • 閱讀 ( 41 )
  • 分類:電腦

你可能感興趣的文章

克萊諾碎片(klenow fragment)和dna聚合酶1(dna polymerase 1)的區別

...與DNA聚合酶1以表格形式 6. 摘要 什麼是克萊諾碎片(klenow fragment)? Klenow片段是DNA聚合酶1的很大一部分。與DNA聚合酶1不同,Klenow片段缺乏5′至3′核酸前向核酸酶域,因此沒有5′至3′核酸外切酶活性。Klenow片段是用一種叫做枯草...

  • 發佈於 2020-09-18 15:44
  • 閲讀 ( 54 )

內部的(internal)和外部經營環境(external business environment)的區別

內部和外部業務環境的關鍵區別在於,內部環境是特定的,對業務有直接影響,而外部環境對所有業務組都有影響,而不僅僅是一個特定的業務。 分析企業的內外部環境對企業的成功非常重要。此外,內部環境也稱為微環境...

  • 發佈於 2020-10-17 02:19
  • 閲讀 ( 47 )

多重裂變(multiple fission)和碎片化(fragmentation)的區別

...變從一個單一的母體細胞產生許多個體。 什麼是碎片化(fragmentation)? 分裂是無性繁殖的一種形式,在這種情況下,母體有機體只會分裂成幾塊,每一塊都會成長為一個全新的個體或母體的克隆體。此外,這種繁殖方式在絲狀真...

  • 發佈於 2020-10-20 20:34
  • 閲讀 ( 59 )

句子片段(sentence fragment)和繼續(run on)的區別

...片段與表格形式的執行 6. 摘要 什麼是句子片段(a sentence fragment)? 句子片斷是不完整句子的另一個名稱。其實,這其實不是一句話,只是一串字。這是因為句子的一個必要組成部分缺失,一個句子片段無法傳達完整的思想。例如...

  • 發佈於 2020-10-22 01:09
  • 閲讀 ( 89 )

內部的(internal)和外眼肌麻痺(external ophthalmoplegia)的區別

... 2. 什麼是內眼肌麻痺 3. 什麼是外眼肌麻痺 4. 並列比較-內部和外部眼肌***表格形式 5. 摘要 什麼是內眼肌麻痺(internal ophthalmoplegia)? 內眼肌麻痺是由於內側縱束損傷所致。如果病變位於右側束,則右眼在嘗試側向注視時無法內收...

  • 發佈於 2020-10-22 16:24
  • 閲讀 ( 48 )

內部的(internal)和外部歸因(external attributions)的區別

內部歸因與外部歸因 內外歸因的差異是社會心理學中一個有趣的研究課題。在社會心理學中,當談到人們如何理解周圍的世界時,我們經常使用一個被稱為歸因的概念。這可以定義為人們對情況和行為的解釋,以此作為理解...

  • 發佈於 2020-10-23 01:02
  • 閲讀 ( 52 )

裂變(fission)和碎片化(fragmentation)的區別

...素有很大的不同,這是一個核嬗變過程。 什麼是碎片化(fragmentation)? 化學中的碎裂是離子與分子的分離。在這裡,能量不穩定的離子可能離開分子。此外,這發生在質譜儀的電離室內。產生的產物稱為碎片。此外,這些碎片可...

  • 發佈於 2020-10-23 03:32
  • 閲讀 ( 56 )

碎片(fragmentation)和再生(regeneration)的區別

...排比較-表格形式的碎片化與再生 6. 摘要 什麼是碎片化(fragmentation)? 分裂是一個有機體的一部分被打破,然後有絲分裂細胞分裂的過程。它是一種無性生殖方式,不涉及減數分裂。此外,這個斷裂的部分可以發展成一個獨立的...

  • 發佈於 2020-10-23 13:20
  • 閲讀 ( 49 )

馬克薩姆·吉爾伯特(maxam gilbert)和雙脫氧測序法(sanger sequencing)的區別

...A sequence using restriction endonucleases Labeling of the ends of the DNA fragments by adding radioactive phosphates Purification of the labeled fragments from non-labeled fragments by gel electrophoresis Separation of the end-labeled DNA into four tubes and treating with base specific chemicals se...

  • 發佈於 2020-10-25 00:41
  • 閲讀 ( 63 )

碎片化(fragmentation)和萌芽(budding)的區別

碎片化(fragmentation)和萌芽(budding)的區別 繁殖是產生新生物(後代)的機制。有兩種基本的生殖方式:有性生殖和無性生殖。有性生殖發生在雙親之間,而無性生殖是由單親進行的。有性生殖的結果是後代的遺傳多樣性和獨特...

  • 發佈於 2020-10-25 03:21
  • 閲讀 ( 39 )
yu564328596
yu564328596

0 篇文章

作家榜

  1. admin 0 文章
  2. 孫小欽 0 文章
  3. JVhby0 0 文章
  4. fvpvzrr 0 文章
  5. 0sus8kksc 0 文章
  6. zsfn1903 0 文章
  7. w91395898 0 文章
  8. SuperQueen123 0 文章

相關推薦