Skip to content

[03] Compile, Interpreter, IPC, Thread safe, Thread pool, CacheΒ #8

Description

@yunuo46

πŸ“Œ 이번 μ£Ό μŠ€ν„°λ”” 질문

10. ν”„λ‘œκ·Έλž¨μ΄ 컴파일 λ˜μ–΄, μ‹€ν–‰λ˜λŠ” 과정을 κ°„λž΅ν•˜κ²Œ μ„€λͺ…ν•΄ μ£Όμ„Έμš”.

  • 링컀와, λ‘œλ”μ˜ 차이에 λŒ€ν•΄ μ„€λͺ…ν•΄ μ£Όμ„Έμš”.
  • 컴파일 언어와 인터프리터 μ–Έμ–΄μ˜ 차이에 λŒ€ν•΄ μ„€λͺ…ν•΄ μ£Όμ„Έμš”.
  • JIT에 λŒ€ν•΄ μ„€λͺ…ν•΄ μ£Όμ„Έμš”.
  • 본인이 μ‚¬μš©ν•˜λŠ” μ–Έμ–΄λŠ”, μ–΄λ–€μ‹μœΌλ‘œ 컴파일 및 μ‹€ν–‰λ˜λŠ”μ§€ μ„€λͺ…ν•΄ μ£Όμ„Έμš”.
  • Python 같은 μ–Έμ–΄λŠ” CPython, Jython, PyPyλ“±μ˜ λ‹€μ–‘ν•œ κ΅¬ν˜„μ²΄κ°€ μžˆμŠ΅λ‹ˆλ‹€. 각각은 μ–΄λ–€ 차이가 μžˆμ„κΉŒμš”? λ˜ν•œ, μ‹€ν–‰λ˜λŠ” κ³Όμ • λ˜ν•œ λ‹€λ₯ΌκΉŒμš”?
  • μš°λ¦¬λŠ” ν”νžˆ fork(), exec() μ‹œμŠ€ν…œ μ½œμ„ μ‚¬μš©ν•˜μ—¬ ν”„λ‘œμ„ΈμŠ€λ₯Ό μ μž¬ν•  수 μžˆλ‹€κ³  λ°°μ› μŠ΅λ‹ˆλ‹€. λ‘œλ”μ˜ 역할은 이 μ‹œμŠ€ν…œ 콜과 μƒκ΄€μžˆλŠ” κ±ΈκΉŒμš”? μ•„λ‹ˆλ©΄ λ‹€λ₯Έ λ°©μ‹μœΌλ‘œ ν”„λ‘œμ„ΈμŠ€λ₯Ό μ μž¬ν•  수 μžˆλŠ” κ±΄κ°€μš”?

11. IPCκ°€ 무엇이고, μ–΄λ–€ μ’…λ₯˜κ°€ μžˆλŠ”μ§€ μ„€λͺ…ν•΄ μ£Όμ„Έμš”.

  • Shared Memoryκ°€ 무엇이며, μ‚¬μš©ν•  λ•Œ μœ μ˜ν•΄μ•Ό ν•  점에 λŒ€ν•΄ μ„€λͺ…ν•΄ μ£Όμ„Έμš”.
  • λ©”μ‹œμ§€ νλŠ” 단방ν–₯이라고 ν•  수 μžˆλ‚˜μš”?

12. Thread Safe ν•˜λ‹€λŠ” 것은 μ–΄λ–€ μ˜λ―ΈμΈκ°€μš”?

  • Thread Safe λ₯Ό 보μž₯ν•˜κΈ° μœ„ν•΄ μ–΄λ–€ 방법을 μ‚¬μš©ν•  수 μžˆλ‚˜μš”?
  • Peterson's Algorithm 이 무엇이며, ν•œκ³„μ μ— λŒ€ν•΄ μ„€λͺ…ν•΄ μ£Όμ„Έμš”.
  • Race Condition 이 λ¬΄μ—‡μΈκ°€μš”?
  • Thread Safeλ₯Ό κ΅¬ν˜„ν•˜κΈ° μœ„ν•΄ λ°˜λ“œμ‹œ 락을 μ‚¬μš©ν•΄μ•Ό ν• κΉŒμš”? κ·Έλ ‡μ§€ μ•Šλ‹€λ©΄, μ–΄λ–€ λ‹€λ₯Έ 방법이 μžˆμ„κΉŒμš”?

13. Thread Pool, Monitor, Fork-Join에 λŒ€ν•΄ μ„€λͺ…ν•΄ μ£Όμ„Έμš”.

  • Thread Pool을 μ‚¬μš©ν•œλ‹€κ³  κ°€μ •ν•˜λ©΄, μ–΄λ–€ κΈ°μ€€μœΌλ‘œ μŠ€λ ˆλ“œμ˜ 수λ₯Ό κ²°μ •ν•  κ²ƒμΈκ°€μš”?
  • μ–΄λ–€ 데이터λ₯Ό μ •λ ¬ ν•˜λ €κ³  ν•©λ‹ˆλ‹€. μ–΄λ–€ λ°©μ‹μ˜ μ „λž΅μ„ μ‚¬μš©ν•˜λŠ” 것이 κ°€μž₯ μ•ˆμ „ν•˜λ©΄μ„œλ„ 쒋은 μ„±λŠ₯을 λ‚Ό 수 μžˆμ„κΉŒμš”?

14. μΊμ‹œ λ©”λͺ¨λ¦¬ 및 λ©”λͺ¨λ¦¬ 계측성에 λŒ€ν•΄ μ„€λͺ…ν•΄ μ£Όμ„Έμš”.

  • μΊμ‹œ λ©”λͺ¨λ¦¬λŠ” 어디에 μœ„μΉ˜ν•΄ μžˆλ‚˜μš”?
  • L1, L2 μΊμ‹œμ— λŒ€ν•΄ μ„€λͺ…ν•΄ μ£Όμ„Έμš”.
  • μΊμ‹œμ— μ˜¬λΌμ˜€λŠ” λ°μ΄ν„°λŠ” μ–΄λ–»κ²Œ κ΄€λ¦¬λ˜λ‚˜μš”?
  • μΊμ‹œκ°„μ˜ λ™κΈ°ν™”λŠ” μ–΄λ–»κ²Œ μ΄λ£¨μ–΄μ§€λ‚˜μš”?
  • μΊμ‹œ λ©”λͺ¨λ¦¬μ˜ Mapping 방식에 λŒ€ν•΄ μ„€λͺ…ν•΄ μ£Όμ„Έμš”.
  • μΊμ‹œμ˜ 지역성에 λŒ€ν•΄ μ„€λͺ…ν•΄ μ£Όμ„Έμš”.
  • μΊμ‹œμ˜ 지역성을 기반으둜, 이차원 배열을 κ°€λ‘œ/μ„Έλ‘œλ‘œ νƒμƒ‰ν–ˆμ„ λ•Œμ˜ μ„±λŠ₯ 차이에 λŒ€ν•΄ μ„€λͺ…ν•΄ μ£Όμ„Έμš”.
  • μΊμ‹œμ˜ 곡간 지역성은 μ–΄λ–»κ²Œ κ΅¬ν˜„λ  수 μžˆμ„κΉŒμš”? (힌트: μΊμ‹œλŠ” μ–΄λ–€ λ‹¨μœ„λ‘œ μ €μž₯되고 κ΄€λ¦¬λ κΉŒμš”?)

πŸ“– ν•™μŠ΅ λ‚΄μš© μš”μ•½

  • 1μ‘°: [PR 링크]
  • 2μ‘°: [PR 링크]
  • 3μ‘°: [PR 링크]

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Labels

documentationImprovements or additions to documentation

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions