[CS] 운영체제 기초 지식 정리 (3/3)

2024. 11. 20. 18:19Β·Computer Science/Operating System

가상 λ©”λͺ¨λ¦¬

가상 λ©”λͺ¨λ¦¬λž€

  • ν”„λ‘œμ„ΈμŠ€μ˜ μΌλΆ€λ§Œ λ©”λͺ¨λ¦¬μ— λ‘œλ“œν•˜κ³ , λ‚˜λ¨Έμ§€λŠ” λ””μŠ€ν¬μ— λ‘” μƒνƒœλ‘œ ν”„λ‘œμ„ΈμŠ€λ₯Ό μ‹€ν–‰ν•˜λŠ” 방식.
  • ν”„λ‘œμ„ΈμŠ€ 전체가 λ©”λͺ¨λ¦¬μ— μ˜¬λΌμ˜€μ§€ μ•Šμ•„λ„ ν”„λ‘œμ„ΈμŠ€λ₯Ό μ‹€ν–‰ν•˜λŠ” 데 λ¬Έμ œκ°€ μ—†λ‹€λŠ” μ μ—μ„œ μ°©μ•ˆλ¨.
  • μ‚¬μš©μžμ—κ²ŒλŠ” ν”„λ‘œμ„ΈμŠ€ 전체가 λ©”λͺ¨λ¦¬μ— λ‘œλ“œλœ κ²ƒμ²˜λŸΌ λ³΄μ΄μ§€λ§Œ, μ‹€μ œλ‘œλŠ” 전체가 λ‘œλ“œλœ 것이 μ•„λ‹ˆμ–΄μ„œ 가상 λ©”λͺ¨λ¦¬λΌ 함.
  • 가상 λ©”λͺ¨λ¦¬ μž₯점
    • ν”„λ‘œκ·Έλž¨μ΄ λ©”λͺ¨λ¦¬ 크기에 λŒ€ν•œ μ œμ•½μ„ 덜 받을 수 있음.
    • λ™μ‹œμ— λ§Žμ€ ν”„λ‘œκ·Έλž¨μ„ μ‹€ν–‰ν•˜λ―€λ‘œ CPU 이용λ₯ κ³Ό μ²˜λ¦¬μœ¨μ€ 높일 수 있음.
    • ν•„μš”ν•œ μ˜μ—­λ§Œ λ©”λͺ¨λ¦¬μ— λ‘œλ“œν•΄ μŠ€μ™€ν•‘ 회수λ₯Ό μ€„μ—¬μ„œ ν”„λ‘œκ·Έλž¨ μ‹€ν–‰ 속도λ₯Ό 높일 수 있음.

μš”κ΅¬ νŽ˜μ΄μ§•

  • ν”„λ‘œμ„ΈμŠ€μ—μ„œ ν•„μš”ν•œ νŽ˜μ΄μ§€λ§Œ λ©”λͺ¨λ¦¬μ— λ‘œλ“œν•˜λŠ” 방식
  • νŽ˜μ΄μ§€λ₯Ό λͺ¨λ‘ λ©”λͺ¨λ¦¬μ— λ‘œλ“œν•˜μ§€ μ•Šκ³  μ΄ˆκΈ°μ— ν•„μš”ν•œ μ˜μ—­λ§Œ λ‘œλ“œν•œ ν›„ λ‹€λ₯Έ μ˜μ—­μ€ μš”μ²­μ΄ 올 λ•Œ λ©”λͺ¨λ¦¬μ— λ‘œλ“œ.
  • ν•„μš”ν•œ νŽ˜μ΄μ§€λ₯Ό 물리 λ©”λͺ¨λ¦¬μ— λ‘œλ“œν•˜κ³ , ν•„μš”ν•˜μ§€ μ•Šμ€ νŽ˜μ΄μ§€λŠ” λ””μŠ€ν¬μ— μ €μž₯.
  • ν”„λ‘œκ·Έλž¨μ„ μ‹€ν–‰ν•˜λ‹€κ°€ 물리 λ©”λͺ¨λ¦¬μ— ν•„μš”ν•œ νŽ˜μ΄μ§€κ°€ 없을 λ•Œ 이λ₯Ό νŽ˜μ΄μ§€ 폴트라고 함.
    • νŽ˜μ΄μ§€ ν΄νŠΈκ°€ λ°œμƒν•˜λ©΄ λ””μŠ€ν¬μ—μ„œ ν•„μš”ν•œ νŽ˜μ΄μ§€λ₯Ό μŠ€μ™‘ 인. μ΄λ•Œ νŽ˜μ΄μ§€μ— ν•΄λ‹Ήν•˜λŠ” λ©”λͺ¨λ¦¬ μ˜μ—­μ΄ 물리 λ©”λͺ¨λ¦¬μ— μžˆλŠ”μ§€λŠ” νŽ˜μ΄μ§€ ν…Œμ΄λΈ”λ‘œ νŒŒμ•… κ°€λŠ₯.

μŠ€λ ˆμ‹±

  • λ™μ‹œμ— 일정 수 μ΄μƒμ˜ ν”„λ‘œκ·Έλž¨μ„ μ‹€ν–‰ν–ˆμ„ λ•Œ 였히렀 CPU 이용λ₯ μ΄ λ–¨μ–΄μ§€λŠ” 상황
  • 가상 λ©”λͺ¨λ¦¬λ₯Ό κ΅¬ν˜„ν•΄ 닀쀑 ν”„λ‘œκ·Έλž˜λ°μ„ ν•˜λ©΄ CPU 이용λ₯ μ΄ 높아짐. κ·ΈλŸ¬λ‚˜ 일정 수 μ΄μƒμœΌλ‘œ 닀쀑 ν”„λ‘œκ·Έλž˜λ°μ„ ν•˜λ©΄ νŽ˜μ΄μ§€ ν΄νŠΈκ°€ 자주 일어남. ➑️ λ””μŠ€ν¬ μ˜μ—­μ—μ„œ ν•„μš”ν•œ νŽ˜μ΄μ§€λ₯Ό μŠ€μ™‘ μΈν•˜κ³  λΆˆν•„μš”ν•œ νŽ˜μ΄μ§€λ₯Ό μŠ€μ™‘ μ•„μ›ƒν•˜λŠ” μž‘μ—…λ„ 자주 ν•˜κ²Œ 됨.
    • 닀쀑 ν”„λ‘œκ·Έλž˜λ° 정도가 일정 μˆ˜μ€€ 이상 λ†’μ•„μ§€λ©΄ νŽ˜μ΄μ§•μ΄ λΉˆλ²ˆν•˜κ²Œ μΌμ–΄λ‚˜κ²Œ 되고 μ‹€μ§ˆμ μœΌλ‘œ CPU 이용λ₯ μ΄ λ–¨μ–΄μ§€λŠ” μŠ€λ ˆμ‹±μ΄ λ°œμƒ

μŠ€λ ˆμ‹± λ°œμƒ μ‹œμ 

  • μŠ€λ ˆμ‹±μ„ μ˜ˆλ°©ν•˜λ €λ©΄ μ›Œν‚Ή μ„ΈνŠΈλ₯Ό μ„€μ •ν•˜λŠ” 방법이 있음.
    • μ›Œν‚Ή μ„ΈνŠΈ : 지역성을 기반으둜 자주 μ‚¬μš©ν•˜λŠ” νŽ˜μ΄μ§€λ₯Ό μ €μž₯ν•΄ λ‘λŠ” 것.
    • μ›Œν‚Ή μ„ΈνŠΈλ₯Ό λ°”νƒ•μœΌλ‘œ 자주 μ‚¬μš©ν•˜λŠ” νŽ˜μ΄μ§€λ₯Ό 물리 λ©”λͺ¨λ¦¬μ˜ ν”„λ ˆμž„μ— κ³ μ •ν•˜λ©΄ νŽ˜μ΄μ§€ ν΄νŠΈκ°€ λΉˆλ²ˆν•˜κ²Œ λ°©μƒν•˜λŠ” ν˜„μƒμ„ λ°©μ§€ν•  수 있음.

μΊμ‹œ λ©”λͺ¨λ¦¬

μΊμ‹œ λ©”λͺ¨λ¦¬μ™€ μ§€μ—­μ„±

  • μΊμ‹œ λ©”λͺ¨λ¦¬λŠ” CPU와 메인 λ©”λͺ¨λ¦¬ 간에 데이터 μ ‘κ·Ό μ‹œ 속도 차이λ₯Ό 쀄이기 μœ„ν•΄ μ‚¬μš©.
  • CPUμ—μ„œ 메인 λ©”λͺ¨λ¦¬μ— μžˆλŠ” 데이터λ₯Ό κ°€μ Έμ˜¬ λ•Œ 자주 μ‚¬μš©ν•˜λŠ” λ°μ΄ν„°λŠ” μΊμ‹œ λ©”λͺ¨λ¦¬μ— λ”°λ‘œ μ €μž₯함. 이후에 ν•΄λ‹Ή 데이터가 ν•„μš”ν•˜λ©΄ μΊμ‹œ λ©”λͺ¨λ¦¬μ— 접근함. ➑️ 메인 λ©”λͺ¨λ¦¬μ— μ ‘κ·Όν•˜λŠ” 것보닀 속도 ν–₯상 κ°€λŠ₯.
  • μΊμ‹œ λ©”λͺ¨λ¦¬μ— μ–΄λ–€ 데이터λ₯Ό μ €μž₯ν• μ§€λŠ” 지역성을 λ°”νƒ•μœΌλ‘œ κ²°μ •.
    • μ§€μ—­μ„± : CPUκ°€ 자주 μ°Έμ‘°ν•˜λŠ” 데이터가 κ³ λ₯΄κ²Œ λΆ„ν¬λ˜μ§€ μ•Šκ³  νŠΉμ • 뢀뢄에 λͺ°λ € μžˆλŠ” 것.
    • μΊμ‹œ 적쀑λ₯ μ„ 높이렀면 지역성을 λ°”νƒ•μœΌλ‘œ 데이터λ₯Ό μ €μž₯.
    • μ‹œκ°„ μ§€μ—­μ„± : 졜근 μ°Έμ‘°ν•œ λ‚΄μš©μ„ λ‹€μ‹œ μ°Έμ‘°ν•  κ°€λŠ₯성이 λ†’μŒ.
    • 곡간 μ§€μ—­μ„± : μ‹€μ œ μ°Έμ‘°ν•œ μ£Όμ†Œ 근처의 λ‚΄μš©μ„ μ°Έμ‘°ν•  κ°€λŠ₯성이 λ†’μŒ.

μΊμ‹œ λ©”λͺ¨λ¦¬μ˜ λ§€ν•‘ 방식

  • 직접 λ§€ν•‘: 메인 λ©”λͺ¨λ¦¬λ₯Ό μΌμ •ν•œ 크기둜 λ‚˜λˆ„κ³  각 μ˜μ—­μ„ μΊμ‹œ λ©”λͺ¨λ¦¬μ— λ§€ν•‘ν•˜λŠ” 방식. 메인 λ©”λͺ¨λ¦¬λŠ” μΊμ‹œ λ©”λͺ¨λ¦¬λ³΄λ‹€ ν¬λ―€λ‘œ λ‚˜λˆ μ§„ n개의 λ©”λͺ¨λ¦¬ μ˜μ—­μ΄ 1개의 μΊμ‹œ λ©”λͺ¨λ¦¬μ— 맀핑됨.
  • μ—°κ΄€ λ§€ν•‘: λ©”λͺ¨λ¦¬ μ˜μ—­μ„ μΊμ‹œ λ©”λͺ¨λ¦¬μ— κ·œμΉ™ 없이 λ§€ν•‘ν•˜λŠ” 방식. λ©”λͺ¨λ¦¬ μ˜μ—­μ„ μΊμ‹œ λ©”λͺ¨λ¦¬μ— μ μž¬ν•  λ•ŒλŠ” κ°„λ‹¨ν•˜μ§€λ§Œ, μΊμ‹œ λ©”λͺ¨λ¦¬μ—μ„œ ν•„μš”ν•œ λ©”λͺ¨λ¦¬ μ˜μ—­μ„ 찾을 λ•ŒλŠ” λΉ„νš¨μœ¨μ .
  • μ§‘ν•© μ—°κ΄€ λ§€ν•‘: 직접 λ§€ν•‘κ³Ό μ—°κ΄€ 맀핑을 κ²°ν•©ν•΄ 단점을 λ³΄μ™„ν•œ λ°©μ‹μœΌλ‘œ, λ²”μš©μ μœΌλ‘œ μ‚¬μš©λ¨.
μ €μž‘μžν‘œμ‹œ λΉ„μ˜λ¦¬ λ³€κ²½κΈˆμ§€ (μƒˆμ°½μ—΄λ¦Ό)

'Computer Science > Operating System' μΉ΄ν…Œκ³ λ¦¬μ˜ λ‹€λ₯Έ κΈ€

[CS] 운영체제 기초 지식 정리 (2/3)  (1) 2024.11.10
[CS] 운영체제 기초 지식 정리(1/3)  (1) 2024.11.09
'Computer Science/Operating System' μΉ΄ν…Œκ³ λ¦¬μ˜ λ‹€λ₯Έ κΈ€
  • [CS] 운영체제 기초 지식 정리 (2/3)
  • [CS] 운영체제 기초 지식 정리(1/3)
The Engineer, Lucy
The Engineer, Lucy
  • The Engineer, Lucy
    Growing up for My FutureπŸ’•
    The Engineer, Lucy
    • Instagram
    • GitHub
  • 전체
    였늘
    μ–΄μ œ
    • λΆ„λ₯˜ 전체보기 (173)
      • Linux (26)
      • Infra (9)
      • Cloud (25)
        • AWS (2)
        • GCP (3)
        • Docker (4)
        • Kubernetes (14)
        • IaC (2)
      • NGINX (1)
      • DevOps (3)
      • Computer Science (17)
        • Data Structure (0)
        • Algorithms (1)
        • Operating System (3)
        • Network (11)
        • Database System (2)
      • Coding Test (87)
        • Algorithms (79)
        • SQL (7)
      • ETC (5)
  • λΈ”λ‘œκ·Έ 메뉴

    • ν™ˆ
    • νƒœκ·Έ
    • λ°©λͺ…둝
  • 곡지사항

  • 링크

    • Lucy's Instagram
    • Lucy's GitHub
  • 인기 κΈ€

  • νƒœκ·Έ

    programmers
    Shell Script
    μ‰˜ 슀크립트
    Shell
    μΏ λ²„λ„€ν‹°μŠ€
    λ¦¬λˆ…μŠ€λ§ˆμŠ€ν„° 2κΈ‰
    λ„ˆλΉ„μš°μ„ νƒμƒ‰
    ν”„λ‘œκ·Έλž˜λ¨ΈμŠ€
    K8s
    μ…Έ 슀크립트
    λ„€νŠΈμ›Œν¬ 기초 지식
    μžλ°”
    λ°±μ€€
    cs 기초 지식 정리
    network
    λ¦¬λˆ…μŠ€
    Linux
    λ‹€μ΄λ‚˜λ―Ή ν”„λ‘œκ·Έλž˜λ°
    Kubernetes
    μ½”λ”©ν…ŒμŠ€νŠΈ 곡뢀
    dfs
    λ¦¬λˆ…μŠ€λ§ˆμŠ€ν„°
    λ„€νŠΈμ›Œν¬
    ν‹°μŠ€ν† λ¦¬μ±Œλ¦°μ§€
    bfs
    도컀
    docker
    μ˜€λΈ”μ™„
    Baekjoon
    Java
  • 졜근 λŒ“κΈ€

  • 졜근 κΈ€

  • hELLOΒ· Designed Byμ •μƒμš°.v4.10.3
The Engineer, Lucy
[CS] 운영체제 기초 지식 정리 (3/3)
μƒλ‹¨μœΌλ‘œ

ν‹°μŠ€ν† λ¦¬νˆ΄λ°”