μλ°μ μλμ리λ₯Ό 곡λΆνλ μ€ λ°μ΄νΈ νμΌκ³Ό λ°μ΄λ리 νμΌμ κ°λ μ μμ§ν΄μΌλμ κ΄λ ¨ κΈμ μ°κ² λμμ΅λλ€.
Complieκ³Ό Link
CμΈμ΄λ μ»΄νμΌλ¬μ μν΄ μμ€νμΌ(*.c)μ΄ λͺ©μ νμΌ(*.obj)λ‘ λ³νλ λ λ°μ΄λ리 νμΌ , μ¦ 0κ³Ό 1λ‘ μ΄λ£¨μ΄μ§ μ½λλ‘ λ³νλ©λλ€.
λͺ©μ νμΌμ μ»΄ν¨ν°κ° μ΄ν΄ν μ μλ λ°μ΄λ리 μ½λμ ννμ΄μ§λ§ μ€νλ μλ μμ΅λλ€. κ·Έ μ΄μ λ μμ ν κΈ°κ³μ΄κ° μλκΈ° λλ¬Έμ
λλ€.
*μμ€νμΌ : κ°λ°μκ° μμ±νλ κ³ λ 벨μΈμ΄μΈ μμ€μ½λλ‘ κ΅¬μ±λ νμΌ ex. *.java, *.py
*λͺ©μ νμΌ : μμ€νμΌμ μ»΄νμΌν΄μ μκΈ΄ νμΌ ex. λ°μ΄νΈμ½λ, λ°μ΄λ리 μ½λ
μ»΄νμΌλ¬ μ μν΄ λ³νλ λͺ©μ νμΌμ λ§μ»€ μ μν΄ μ€νκ°λ₯ν μ€ννμΌ(*.exe)λ‘ λ³νλ λ ν¨μλ ν€λ νμΌ λ±μ μ€μ λ©λͺ¨λ¦¬ μ£Όμλ₯Ό μ½λμ λ°μνλ κ³Όμ μμ μΌλΆ μ£Όμκ°μ΄ λ³κ²½λλλ°, μ΄λ¬ν κ³Όμ μ κ±°μ³μΌ λΉλ‘μ μ»΄ν¨ν°κ° μ€νν μ μλ 100% κΈ°κ³μ΄κ° λ μ μμ΅λλ€.
*λ§μ»€ : μμ€μ½λ μμ΄ λμ΄λ¨μ λ°λΌ ν νμΌμ λͺ¨λ μμ€μ½λλ₯Ό μμ±ν μ μκ² λμ΄ νμΌλ€μ λΆλ¦¬ν΄μΌ νλλ°, μ΄λ° μ¬λ¬ μμ€μ½λ νμΌλ€μ νλλ‘ ν©μ³μ£Όκ³ , μΆκ°λ‘ Libraryλ μΆκ°ν΄μ£Όμ΄ μ€ννμΌμ λ§λ€μ΄μ£Όλ νλ‘κ·Έλ¨
κ²°λ‘ μ μΌλ‘ λͺ©μ νμΌμ λ°μ΄λ리 μ½λμ΄μ§λ§ μ»΄ν¨ν°κ° λ°λ‘ μ€νν μ μλ 100% κΈ°κ³μ΄λ μλλλ€. λ§μ»€λ₯Ό κ±°μ³μΌ μ»΄ν¨ν°κ° μ€νν μ μλ μ€ννμΌμ΄ λ©λλ€.
μλ°μμμ λ°μ΄νΈμ½λ?
μλ°μμμ μ»΄νμΌλ¬λ μ’ νΉμ΄νλ° μμ€νμΌ(*.java)μ΄ λͺ©μ νμΌ(*.class)λ‘ μ»΄νμΌλ¬μ μν΄ λ³νλ λ λ°μ΄λ리μ½λκ° μλ λ°μ΄νΈ μ½λλ‘ λ³νλ©λλ€.
κ·Έλ λ€λ©΄ μ΄ λμ μ°¨μ΄μ μ 무μμΌκΉ??
*λ°μ΄λ리 μ½λ(μ΄μ§ μ½λ)λ?
- μ»΄ν¨ν°κ° μΈμν μ μλ 0κ³Ό 1λ‘ κ΅¬μ±λ λ°μ΄λ리 μ½λλ₯Ό μλ―Ένλ€.
- CPUκ° μ΄ν΄ν μ μλ μΈμ΄
*λ°μ΄νΈ μ½λλ?
- CPUκ° μ΄ν΄ν μ μλ μΈμ΄κ° λ°μ΄λ리 μ½λλΌλ©΄ λ°μ΄νΈ μ½λλ κ°μ λ¨Έμ (ex. JVM)μ΄ μ΄ν΄ν μ μλ μΈμ΄μ΄λ€.
μ¦, κ°μλ¨Έμ μ΄ μ΄ν΄ ν μ μλ 0κ³Ό 1λ‘ κ΅¬μ±λ λ°μ΄λ리 μ½λλ₯Ό μλ―Ένλ€.
- κ³ λ 벨μΈμ΄λ‘ μμ±λ μμ€μ½λλ₯Ό κ°μ λ¨Έμ μ΄ μ΄ν΄ν μ μλ μ€κ° μ½λλ‘ μ»΄νμΌν κ²μ λ§νλ€.
- μλ°μμ λ°μ΄νΈ μ½λλ μ€μκ° λ²μκΈ°(JIT, just in time) μ»΄νμΌλ¬μ μν΄ λ°μ΄λ리 μ½λλ‘ λ³νλλ€.
*κΈ°κ³μ΄
- 0κ³Ό 1λ‘ μ΄λ£¨μ΄μ§ λ°μ΄λ리 μ½λλ‘ JSκ° λΈλΌμ°μ λ₯Ό μ μ΄νλ―μ΄ κΈ°κ³μ΄λ CPUλ₯Ό μ μ΄ν μ μλ€.
- CPUκ° ν΄λ
ν μ μλ μ μΌν μΈμ΄λ€. κ·Έ μ΄λ€ νλ‘κ·Έλλ° μΈμ΄λ₯Ό λ£μ΄μ€λ κΈ°κ³μ΄λ‘ ν΄μμ΄ λμ΄μΌ
λΉλ‘μ μμ
μ μνν μ μλ€.
- κΈ°κ³μ΄λ λ°μ΄λ리 μ½λλ‘ κ΅¬μ±λμ§λ§ λͺ¨λ λ°μ΄λ리 μ½λκ° κΈ°κ³μ΄μΈ κ²μ μλλ€.
λ§ΊμΌλ©°..
μλ° λμμ μμ΄μ κΌ μκ³ μμ΄μΌ νλ κ°λ λ€μΈκ² κ°μ΅λλ€. μλ°λΏλ§ μλλΌ λλΆλΆμ νλ‘κ·Έλλ° μΈμ΄μ 곡ν΅μ μΈ κ°λ μ΄λ―λ‘ κ°λ°μλΌλ©΄ μκ³ μμ΄μΌ νλ λ΄μ©μ΄λΌκ³ μκ°ν©λλ€. μμ¦ μλ°μ μλ°μ€ν¬λ¦½νΈλ₯Ό νκ³ νκ³ νκ³ νλλ° μ΄λμ μ΄λ κ² μλνμꡬλ νλ©΄μ μλ‘μ΄ μ¬λ―Έλ₯Ό λλλλ€. μ½λ© ν λλμ λ λ€λ₯Έ μ¬λ―ΈμΈκ² κ°μ΅λλ€.
μμ€νμΌ, λͺ©μ νμΌ, μ€ννμΌ // μ»΄νμΌλ¬, λ§μ»€ // λ°μ΄νΈμ½λ, λ°μ΄λ리μ½λ
μ΄λ κ²λ§ μμλ λλ΅μ μΈ νλ‘κ·Έλλ° μΈμ΄κ° μ΄λ»κ² μΈκ°μΈμ΄(κ³ λ 벨μΈμ΄)μμ μ»΄ν¨ν°μΈμ΄(μ λ 벨μΈμ΄)λ‘ λ³νλλμ§ μ μ μμ΅λλ€. λ μμΈν건 μλ°μ λμκ³Όμ μμ λ€λ£¨κ² μ΅λλ€.
μ½μ΄μ£Όμ μ κ°μ¬ν©λλ€.
'...' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
[AWS] EC2λ₯Ό μ΄μ©νμ¬ Node.js μλ² λ°°ν¬νκΈ° (4) | 2021.05.23 |
---|---|
[Java] μλ°μ λμκ³Όμ Java Compilerμ JVM (16) | 2021.05.11 |
[JS]μλ°μ€ν¬λ¦½νΈ λμμ μΌμμΌμ²΄! - V8, Web API, Event Loop (7) | 2021.05.03 |
[OS] λ μ΄μ μ΄λ²λ²νμ§λ§μ!! μ€λ λμ νλ‘μΈμ€ (13) | 2021.04.26 |
[Python] list(리μ€νΈ)μ μμ 볡μ¬μ κΉμ λ³΅μ¬ (0) | 2021.04.25 |