Sobes.tech
Junior — Middle

Kako se izvorni kod C# pretvara u izvršnu datoteku ili bajt-kod?

sobes.tech АИ

Одговор од АИ

Izvorni kod u C# se najpre prevodi pomoću prevodioca (na primer, csc) u međumrežni jezik — Microsoft Intermediate Language (MSIL), koji je platformski nezavistan bajt-kod.

Ovaj MSIL, zajedno sa metapodacima, smešta se u sklop (.exe ili .dll). Prilikom pokretanja programa, okruženje za izvršavanje .NET (CLR) koristi Just-In-Time (JIT) kompilaciju da pretvori MSIL u mašinski kod, razumljiv za specifični procesor i operativni sistem.

Proces pretvaranja izgleda ovako:

  1. C# kod → kompilacija → MSIL (bajt-kod)
  2. MSIL + metapodaci → sklop
  3. Pri pokretanju → JIT-kompilacija → mašinski kod

Ovo omogućava prenosivost i optimizaciju koda za specifičnu platformu tokom izvršavanja.