Skip to content

Latest commit

Β 

History

History
11 lines (11 loc) Β· 1.16 KB

File metadata and controls

11 lines (11 loc) Β· 1.16 KB

JVM (Java Virtual Machine)

JVM μ΄λž€?

  • μš΄μ˜μ²΄μ œλŠ” μžλ°” ν”„λ‘œκ·Έλž¨μ„ λ°”λ‘œ μ‹€ν–‰ν•  수 μ—†λŠ”λ°, κ·Έ μ΄μœ λŠ” μžλ°” ν”„λ‘œκ·Έλž¨μ€ μ™„μ „ν•œ 기계어가 μ•„λ‹Œ 쀑간 λ‹¨κ³„μ˜ λ°”μ΄νŠΈ μ½”λ“œμ΄κΈ° λ•Œλ¬Έμ΄λ‹€.
  • λ”°λΌμ„œ 이λ₯Ό ν•΄μ„ν•˜κ³  μ‹€ν–‰ν•  수 μžˆλŠ” κ°€μƒμ˜ μš΄μ˜μ²΄μ œκ°€ λ°”λ‘œ JVM이닀.
  • μžλ°”λ₯Ό μ‹€ν–‰μ‹œν‚€λŠ” κ°€μƒμ˜ 기계
  • μš΄μ˜μ²΄μ œλ³„λ‘œ ν”„λ‘œκ·Έλž¨μ„ μ‹€ν–‰ν•˜κ³  κ΄€λ¦¬ν•˜λŠ” 방법이 λ‹€λ₯΄κΈ° λ•Œλ¬Έμ—, μš΄μ˜μ²΄μ œμ™€ μžλ°” ν”„λ‘œκ·Έλž¨μ„ μ€‘κ³„ν•˜λŠ” JVM을 두어 μžλ°” ν”„λ‘œκ·Έλž¨μ΄ μ—¬λŸ¬ μš΄μ˜μ²΄μ œμ—μ„œ λ™μΌν•œ μ‹€ν–‰ κ²°κ³Όκ°€ λ‚˜μ˜€λ„λ‘ μ„€κ³„ν•œ 것
  • JVM은 μš΄μ˜μ²΄μ œμ— 쒅속적
    • μžλ°” ν”„λ‘œκ·Έλž¨μ„ μš΄μ˜μ²΄μ œκ°€ μ΄ν•΄ν•˜λŠ” κΈ°κ³„μ–΄λ‘œ λ²ˆμ—­ν•΄μ„œ μ‹€ν–‰ν•΄μ•Ό ν•˜λ―€λ‘œ JVM은 μš΄μ˜μ²΄μ œμ— 맞게 μ„€μΉ˜λ˜μ–΄μ•Ό 함
    • JDK λ˜λŠ” JREλ₯Ό μ„€μΉ˜ν•˜λ©΄ μžλ™μœΌλ‘œ JVM μ„€μΉ˜λ¨. JDK와 JREκ°€ μš΄μ˜μ²΄μ œλ³„λ‘œ 제곡됨

μžλ°” ν”„λ‘œκ·Έλž¨ μ‹€ν–‰ 단계

  • μ†ŒμŠ€ μ½”λ“œ(*.java) -> 컴파일러(javac.exe) -> λ°”μ΄νŠΈ μ½”λ“œ 파일(*.class) -> JVM ꡬ동(java.exe) -> ν•΄λ‹Ή μš΄μ˜μ²΄μ œμ—μ„œ μ‹€ν–‰ν•  수 μžˆλŠ” κΈ°κ³„μ–΄λ‘œ λ²ˆμ—­ ν›„ 싀행됨