AOT-կոմպիլյացիա

AOT-կոմպիլյացիան () կոմպիլյացիայի տեսակ է, որը օգտագործում է Ahead of Time Compilation (իրականացում կոմպիլյացիայից առաջ)։ Օգտագործվում է ինչպես բարձր մակարդակի լեզուների համար, ինչպիսին են C-ն և С++-ը կամ Pascal-ը, այնպես էլ միջանկյալ լեզունների կոմպիլյացիայի համար, ինչպիսին են բայթկոդ Java, .NET Common, Intermediate Language (CIL), IBM System/38, IBM System i.

Լեզունների մեծամասնությունը օգտագործում է JIT մեթոդը, որը թույլատրում է իր կատարման ժամանակ կոմպիլյացնել միջանկյալ կոդը միանգամից բինար կոդի, որը թուլ է տալիս զգալիորեն մեծացնել կատարման արագությունը։ JIT-ը պահանջումէ լրացուցիչ հիշողություն։

'АОТ' մեթոդը չի պահանջում լրացուցիչ հիշողություն և АОТ-կոմպիլյացիան համակարգի վրա կատարվում է մինիմալ ծանրաբեռնվածությամբ։ Կոմպիլյացիայի պրոցեսսը ամբողջությամբ կատարվում է ծրագրի կատարումից առաջ։

JIT կոմպիլյացիան կարող է կիրառվել ինչպես ամբողջ ծրագրում, այնպես էլ դրա առանձին մասերում։ Օրինակ տեքստային ձևախիչը () կարող է կոմպիլյացնել ռեգուլյար արտահայտությունները տեքստի ավելի արագ փնտրման համար։ AOT-կոմպիլյացիայի հետ այդպիսի բան անել հնարավոր չէ, քանի որ տվյալները տրամադրում են ծրագրի կատարման ժամանակ, այլ ոչ թե կոմպիլյացիայի ժամանակ։

Արտաքին հղումներ 
 Speed: NGen Revs Up Your Performance with Powerful New Features -- MSDN Magazine, April 2005
 Mono AOT
 Excelsior JET -- Certified Java SE Implementation with AOT compiler 
 GNU Compiler for Java 
 AOT compilation of asm.js
 Aonix PERC Ultra
 Real-time Java, Part 2: Comparing compilation techniques -- IBM developerWorks, April 2007
 Improving Swing Performance: JIT vs AOT Compilation -- LinuxWorld Magazine, November 2004 
 manta

Գրականություն 
 Trustworthy Compilers

Ծրագրավորում