Run-time գրադարան

Վիքիպեդիայից՝ ազատ հանրագիտարանից
Jump to navigation Jump to search

Run-time գրադարան (անգլ.՝ runtime library), ցածր մակարդակի պրոցեդուրաների հավաք ծրագրավորման մեջ։ Կոմպիլյատորը, կանչ կատարելով runtime գրադարան, նրանցից մի քանիսը ներառում է runtime միջավայր ( runtime environment )` կոմպիլացված կատարվող բինար ֆայլի( executable binary) մեջ: Runtime միջավայրը իրականացնում է կատարվող մոդելը, ներդրված ֆունկցիաները և ծրագրավորման լեզվի այլ հիմնարար վարքագծեր: Ծրագրի կատարման ժամանակ Run-time գրադարանին կատարվող կանչերը կապ են ստեղծում կատարվող բինար ֆայլի ( executable binary) և Run-time միաջավայրի միջև: Run-time գրադարանը հաճախ ներառում է ներդրված ֆունկցիաներ` հիշողության կառավարման կամ բացառությունների մշակման( exceptions handling) համար[1]: Run-time գրադարանը հատկանշական է կոմպիլյատորի և պլատֆորմի համար։

Run-time գրադարանը կարող է իրականացնել հատված Run-time միջավայրից, բայց եթե մեկը կարդում է հասանելի կանչերը, որոնք, որպես դրանք կանոն բարակ թաղանթներ են, ուղղակի փաթեթավորում և ուղարկում են այն Run-time միջավայր կամ օպերացիոն համակարգ: Սովորաբար Run-time գրադարան տերմինը իր մեջ ներառում է հենց Run-time միջավայրի կոդը. դրանցից շատերը չեն կարող ուղակիորեն հասնել Run-time կանչերի միջոցով։

Օրինակ որոշ լեզուների հատկություններ, որոնք կարող են ներկայացվել միայն ծրագրի կատարման ժամանակ, իրականացված են Run-time միաջավայրում և կարող են կանչվել Run-time գրադարան API-ի միջոցով (օր.`որոշ տրամաբանական սխալներ, զանգվածի չափերի ստուգում, դինամիկ տիպերի ստուգում, բացառությունների հայտնաբերում): Այս պատճառով, որոշ ծրագրային բագերը չեն հայտնաբերվում մինչև ծրագրի թեստավորումը ռեալ միջավայրում, իրական տվյալներով, չնայած բազմաթիվ ստուգումների ստեղծման ժամանակ:

Այլ օրինակ` runtime գրադարանը կարող է պարունակել ցածր մակարդակի ներդրված կոդ, դժվարացնելով կոմպիլյացիայի ժամանակ դրանց տողայացնելը (inlining), ինչպես օրինակ մաթեմատիկական գործողությունների իրականացումը, որը չի աջակցվում պրոցեսորի կողմից կամ տարբեր խառը կոմպիլյատորների և դիրեկտիվների կողմից[1][2]:

Չպետք է շփոթել runtime գրադարանը ոչ սովորական ծրագրերի գրադարանի հետ, որը ստեղծվում է ծրագրավորողի կողմից, ոչ էլ դինամիկական գրադարանի հետ։ Օրինակ C ծրագրավորման լեզուն պահանջում է մինիմալ runtime գրադարան, բայց սահմանում է լայն ստանդարտ գրադարան (C standard library), որը պետք է լինի յուրաքանչյուր իրականացման պայմանով[3]:

Ծանոթագրություններ[խմբագրել | խմբագրել կոդը]

  1. 1,0 1,1 «The GCC low-level runtime library»։ GCC Introduction։ gnu.org։ Վերցված է 2013-12-30 
  2. «Other Built-in Functions Provided by GCC»։ GCC Introduction։ gnu.org։ Վերցված է 2013-12-30 
  3. «The C Runtime Initialization, crt0.o»։ embecosm.com։ 2010։ Վերցված է 2013-12-30 

Արտաքին հղումներ[խմբագրել | խմբագրել կոդը]