Blog
2025.04.23
Adaλ‘ C λΌμ΄λΈλ¬λ¦¬ λ§λ€κΈ°
κ°λ ₯ν μμ μ±κ³Ό μ λ’°μ±μ μλνλ Ada μΈμ΄λ‘ C λΌμ΄λΈλ¬λ¦¬λ₯Ό μμ±νλ λ°©λ²μ λν΄ μμλ³΄κ² μ΅λλ€. νΉν C νλ‘κ·Έλ¨μ λ©μΈ(main) ν¨μκ° μμ λ λ°μνλ Ada λ°νμ μ΄κΈ°ν λ¬Έμ λ₯Ό ν΄κ²°νλ λ°©λ²κΉμ§ ν¬ν¨νμ¬ μ 체 κ³Όμ μ λ¨κ³λ³λ‘ μ΄ν΄λ³΄κ² μ΅λλ€.
2025.04.22
Ada μΈμ΄μ μ€κ³ λͺ©ν
Ada(μμ΄λ€)λ νλ‘κ·Έλ¨ μ λ’°μ± λ° μ μ§λ³΄μ, μΈκ° νλμΌλ‘μμ νλ‘κ·Έλλ°, κ·Έλ¦¬κ³ ν¨μ¨μ±μ μΌλμ λκ³ μ€κ³λμμ΅λλ€.
2025.04.20
Ada: μ€ν νμΌ λ§λ€κΈ°
μ°λ¦¬κ° μμ±ν Ada μ½λλ₯Ό μ»΄ν¨ν°μμ μ€νν μ μλ νμΌλ‘ λ§λ€λ €λ©΄ μ΄λ»κ² ν΄μΌ ν κΉμ? μ§κΈλΆν° κ·Έ λ°©λ²μ ν¨κ» μμλ³΄κ² μ΅λλ€.
2025.04.14
C νλ‘κ·Έλ¨μ μμμ : main ν¨μ μμ μ 볡
νλ‘κ·Έλλ°μ μΈκ³μμ βμμβμ΄λΌλ λ¨μ΄λ λ§€μ° μ€μν©λλ€. νΉν C μΈμ΄λ‘ μμ±λμ΄ μ΄μ체μ μμμ μ€νλλ νλ‘κ·Έλ¨μ main() ν¨μλΌλ νΉμ ν μ§μ
μ μμ μ€νμ μμνλλ°μ. μ€λμ λ
립 μ€νν C νλ‘κ·Έλ¨μμ main() ν¨μκ° μ νμνλ©° μ΄λ€ ν΅μ¬μ μΈ μν μ νλμ§ κΉμ΄ μ΄ν΄λ³΄λ €κ³ ν©λλ€.
2025.04.14
λλ§μ μλνλ μ€ ν λ§ μ μ
μΈμμλ μλ§μ μλνλ μ€ ν λ§κ° μμ§λ§, λλ‘λ λ΄ μΉμ¬μ΄νΈλ§μ λ νΉν κ°μ±κ³Ό κΈ°λ₯μ λ΄μλ΄κΈ° μν΄ μ§μ ν λ§λ₯Ό λ§λ€κ³ μΆλ€λ μκ°μ νκ² λ©λλ€. βλλ§μ 곡κ°βμ λ΄ μμΌλ‘ μ€κ³νκ³ κ΅¬μΆνλ μΌμ λΆλͺ λ§€λ ₯μ μ΄μ£ . μ΄ κΈμμλ μλνλ μ€ ν λ§ μ μμ κ°μ₯ 첫 λ¨κ³μΈ κΈ°λ³Έ λΌλ ꡬμ±λΆν° μΉμ¬μ΄νΈμ νμ μμμΈ λ€λΉκ²μ΄μ λ©λ΄ ꡬνκΉμ§, κ·Έ κ³Όμ μ μ 리ν΄λ³΄κ² μ΅λλ€.
2025.04.13
μνΌμ΄ νΌλ―Έν΄μ§ μ λλ‘ λ ν₯λΆμν¨ μΈμ΄λ€
λꡬλ μ΄λ©΄μ βμμ κ°λ―Έμ³€λ€β μΆμ μ λλ‘ μ¬κ°ν λΉ μ Έλλ 무μΈκ°κ° μμ κ±°μμ. νλ‘κ·Έλλ°μ μ¬λ―Έμλ μ¬λμ΄ λ§€μ° κΉκ² λΉ μ§ μ μμ΄μ. μ±μ·¨κ°μ΄ κ°λ ¬νκ±°λ μ. κ·Έλ°λ° λ¨μν μ½λλ₯Ό μ§λ μ¬λ―Έλ₯Ό λμ΄, κ·Έ μΈμ΄κ° λ무 ν₯λ―Έλ‘μ μΌμμνμ΄ λ§κ°μ§κ³ μνΌμ΄ νΌλ―Έν΄μ§ μ λλ‘ λͺΉμ ν₯λΆνκ³ λͺ°μ νλ μΈμλ€μ΄ μμμ£ . μ€λμ μ λ₯Ό κ·Έν λ‘ μ¬λ‘μ‘μλ μΈμ΄λ€, μλ°, 루λΉ, C, κ·Έλ¦¬κ³ νμ¬μ§ννμΈ Ada/SPARKμ λν μ΄μΌκΈ°λ₯Ό νμ΄λ³ΌκΉ ν©λλ€.
2025.04.12
FreeBSDμμ pf λ‘κ·Έ νμΈνκΈ°
FreeBSDμμ λ€νΈμν¬ λ³΄μκ³Ό νΈλν½ λͺ¨λν°λ§μ λ§€μ° μ€μν©λλ€. pf (packet filter)λ κ°λ ₯ν 보μ νν°λ§μ μ 곡ν λΏλ§ μλλΌ, λ‘κΉ κΈ°λ₯μ ν΅ν΄ μ΄λ€ νΈλν½μ΄ νμ©λκ³ μ°¨λ¨λμλμ§λ₯Ό μμΈνκ² κΈ°λ‘ν©λλ€. μ΄λ² κΈμμλ pf λ‘κ·Έλ₯Ό νμΈνλ λ°©λ²μ λ¨κ³λ³λ‘ μκ°ν©λλ€.
2025.04.12
Ada νλ‘κ·Έλ¨μ κΈ°λ³Έ ꡬ쑰μ ν΅μ¬ μμ
Ada νλ‘κ·Έλ¨μ΄ μΌλ°μ μΌλ‘ μ΄λ€ ꡬ쑰λ₯Ό κ°μ§λ©°, μ΄λ€ ν΅μ¬ μμλ€λ‘ ꡬμ±λλμ§ μ’ λ μμΈν μ΄ν΄λ³΄κ² μ΅λλ€. μ΄ κΈ°λ³Έ ꡬ쑰λ₯Ό μ΄ν΄νλ κ²μ λ 볡μ‘νκ³ μ²΄κ³μ μΈ Ada νλ‘κ·Έλ¨μ μμ±νκΈ° μν νμμ μΈ λ¨κ³μ λλ€.
2025.04.12
Cλ‘ νλ OOP
C μΈμ΄λ μ μ°¨ μ§ν₯μ λνμ£Όμμ§λ§, κ°μ²΄ μ§ν₯ νλ‘κ·Έλλ°(OOP)μ κ°λ ₯ν κ°λ λ€μ Cμμλ ꡬνν΄λ³Ό μ μμκΉμ? λλκ²λ, μ°½μμ μΈ μ κ·Όκ³Ό μ½κ°μ κΈ°λ²μ ν΅ν΄ C μΈμ΄μμλ OOPμ ν΅μ¬ κ°λ λ€μ ꡬννλ κ²μ΄ κ°λ₯ν©λλ€. μ΄ κΈμμλ C μΈμ΄λ‘ OOP μ€νμΌμ μ€κ³λ₯Ό μ΄λ»κ² μλν μ μλμ§, κ·Έλ¦¬κ³ κ·Έ κ³Όμ μμ μ€μν κ°μ²΄ μ§ν₯μ ν΅μ¬ μμΉλ€μ μ΄λ»κ² ꡬνν μ μλμ§ μ΄ν΄λ΄ λλ€.
2025.04.11
λ¬μ€νΈ μμ κΆ, μ λ§ μλ‘μ΄ κ°λ μΌκΉ?
μ΅κ·Ό λ¬μ€νΈ(Rust) μΈμ΄κ° λ©λͺ¨λ¦¬ μμ μ±μ΄λΌλ κ°λ ₯ν λ¬΄κΈ°λ‘ λ§μ μ£Όλͺ©μ λ°κ³ μμ΅λλ€. νΉν λ¬μ€νΈμ ν΅μ¬ κΈ°λ₯μΈ βμμ κΆ(ownership)β μμ€ν μ, μ»΄νμΌ μμ μ μ΄μ€ ν΄μ (double free), λκΈλ§ ν¬μΈν°(dangling pointer)μ κ°μ λ©λͺ¨λ¦¬ μ€λ₯λ₯Ό μμ²μ μΌλ‘ λ°©μ§νκ³ λλΆλΆμ λ©λͺ¨λ¦¬ λμ(memory leak) λ°μ κ°λ₯μ±μ ν¬κ² μ€μ¬μ£Όλ λ₯λ ₯ λλΆμ νμ μ μΌλ‘ νκ°λ°κ³€ ν©λλ€.