πŸ› οΈ OS

[OS] 15. νŽ˜μ΄μ§•μ˜ 이점과 계측적 νŽ˜μ΄μ§•

JINiOS 2024. 3. 12. 23:39
728x90

이둠적인 fork()

ν”„λ‘œμ„ΈμŠ€λŠ” 기본적으둜 μžμ›μ„ κ³΅μœ ν•˜μ§€ μ•ŠλŠ”λ‹€

→ λΆ€λͺ¨ ν”„λ‘œμ„ΈμŠ€κ°€ 적재된 λ³„λ„μ˜ 곡간에 μžμ‹ ν”„λ‘œμ„ΈμŠ€κ°€ ν†΅μ§Έλ‘œ λ³΅μ œλ˜μ–΄ 적재

 

단점: ν”„λ‘œμ„ΈμŠ€ 생성 μ‹œκ°„ 지연, λ©”λͺ¨λ¦¬ λ‚­λΉ„

→ 이λ₯Ό ν•΄κ²°ν•˜λŠ” μ“°κΈ° μ‹œ 볡사(copy on write)

 

1. μ“°κΈ° μ‹œ 볡사

  • λΆ€λͺ¨ ν”„λ‘œμ„ΈμŠ€μ™€ λ™μΌν•œ μžμ‹ ν”„λ‘œμ„ΈμŠ€κ°€ λ³΅μ œλ˜μ–΄ μƒμ„±λ˜λ©΄, μžμ‹ ν”„λ‘œμ„ΈμŠ€λŠ” λΆ€λͺ¨ ν”„λ‘œμ„ΈμŠ€μ™€ λ™μΌν•œ ν”„λ ˆμž„μ„ 가리킴(μ“°κΈ° μž‘μ—… μ—†λ‹€λ©΄ 이 μƒνƒœ μœ μ§€
  • λΆ€λͺ¨ ν”„λ‘œμ„ΈμŠ€/μžμ‹ ν”„λ‘œμ„ΈμŠ€ λ‘˜ 쀑 ν•˜λ‚˜κ°€ νŽ˜μ΄μ§€μ— μ“°κΈ° μž‘μ—… μˆ˜ν–‰ μ‹œ ν•΄λ‹Ή νŽ˜μ΄μ§€λŠ” λ³„λ„μ˜ κ³΅κ°„μœΌλ‘œ 볡제 → ν”„λ‘œμ„ΈμŠ€ 생성 μ‹œκ°„ μ ˆμ•½, λ©”λͺ¨λ¦¬ μ ˆμ•½
    • 2번 νŽ˜μ΄μ§€λ§Œ 별도 곡간 μ‚¬μš©ν•¨

2. 계측적 νŽ˜μ΄μ§•

  • νŽ˜μ΄μ§€ ν…Œμ΄λΈ”μ„ νŽ˜μ΄μ§•ν•˜μ—¬ μ—¬λŸ¬ λ‹¨κ³„μ˜ νŽ˜μ΄μ§€ νŽ˜μ΄μ§€λ₯Ό λ‘λŠ” 방식
  • νŽ˜μ΄μ§€ ν…Œμ΄λΈ”μ„ μ—¬λŸ¬ νŽ˜μ΄μ§€λ‘œ μͺΌκ°œκ³  이 νŽ˜μ΄μ§€λ₯Ό κ°€λ¦¬ν‚€λŠ” νŽ˜μ΄μ§€ ν…Œμ΄λΈ” (Outer νŽ˜μ΄μ§€ ν…Œμ΄λΈ”)을 λ‘λŠ” 방식
  • ν”„λ‘œμ„ΈμŠ€ ν…Œμ΄λΈ”μ˜ ν¬κΈ°λŠ” 생각보닀 μž‘μ§€ μ•Šλ‹€
  • ν”„λ‘œμ„ΈμŠ€λ₯Ό μ΄λ£¨λŠ” λͺ¨λ“  νŽ˜μ΄μ§€ ν…Œμ΄λΈ” μ—”νŠΈλ¦¬λ₯Ό λ©”λͺ¨λ¦¬μ— λ‘λŠ” 것은 큰 λ‚­λΉ„
  • ν”„λ‘œμ„ΈμŠ€λ₯Ό μ΄λ£¨λŠ” λͺ¨λ“  νŽ˜μ΄μ§€ ν…Œμ΄λΈ” μ—”νŠΈλ¦¬λ₯Ό 항상 λ©”λͺ¨λ¦¬μ— μœ μ§€ν•˜μ§€ μ•Šμ„ 방법
  • 계측적 νŽ˜μ΄μ§•μ„ μ‚¬μš©ν•˜λ©΄ > λͺ¨λ“  νŽ˜μ΄μ§€ ν…Œμ΄λΈ”μ„ 항상 λ©”λͺ¨λ¦¬μ— 올릴 ν•„μš”κ°€ 없어짐
    • CPU와 κ°€μž₯ κ°€κΉŒμ΄ μœ„μΉ˜ν•œ νŽ˜μ΄μ§€ ν…Œμ΄λΈ”(Outer νŽ˜μ΄μ§€ ν…Œμ΄λΈ”)은 항상 λ©”λͺ¨λ¦¬μ— μœ μ§€
  • 계측적 νŽ˜μ΄μ§•μ„ μ΄μš©ν•˜λŠ” ν™˜κ²½μ—μ„œμ˜ 논리 μ£Όμ†Œ
    • λ°”κΉ₯ νŽ˜μ΄μ§€ 번호, μ•ˆμͺ½ νŽ˜μ΄μ§€ 번호, λ³€μœ„
    • νŽ˜μ΄μ§€ ν΄νŠΈκ°€ λ°œμƒν•  κ²½μš°μ— λ©”λͺ¨λ¦¬λ₯Ό 많이 μ°Έμ‘°ν•΄μ•Όν•˜κΈ° λ•Œλ¬Έμ— 계측이 λ§Žλ‹€κ³  ν•΄μ„œ λ°˜λ“œμ‹œ μ’‹λ‹€κ³  λ³Ό 수 μ—†μŒ
    • λ¬Όλ¦¬μ£Όμ†Œλ₯Ό μ°Ύμ•„κ°€λŠ” 방식
      1. λ°”κΉ₯ νŽ˜μ΄μ§€ 번호λ₯Ό 톡해 νŽ˜μ΄μ§€ ν…Œμ΄λΈ”μ˜ νŽ˜μ΄μ§€λ₯Ό μ°ΎκΈ°
      2. νŽ˜μ΄μ§€ ν…Œμ΄λΈ”μ˜ νŽ˜μ΄μ§€λ₯Ό 톡해 ν”„λ ˆμž„ 번호λ₯Ό μ°Ύκ³  λ³€μœ„λ₯Ό λ”ν•¨μœΌλ‘œμ„œ 물리 μ£Όμ†Œ μ–»κΈ°

 

 

 


 

 

 

γ€Žν˜Όμž κ³΅λΆ€ν•˜λŠ” 컴퓨터 ꡬ쑰+μš΄μ˜μ²΄μ œγ€ κ°•μ˜ λ‚΄μš©μ„ 기반으둜 μž‘μ„±λœ κΈ€μž…λ‹ˆλ‹€

728x90