Umumiy ma'noda tizim kutubxonasi operatsion tizimlar yoki dasturiy ta'minot tomonidan ishlash yoki kompilyatsiya paytida foydalaniladigan ma'lumotlar omboridir.
Tizim kutubxonalarida keng qo'llaniladigan dasturlar va funktsiyalar mavjud. Dasturlash bilan bog'liq holda, kutubxonalar grafikalar, massivlar, dialog oynalari va boshqalar bilan ishlash uchun umumiy sinflarni saqlaydi.
Tizim kutubxonasi tushunchasi alohida dasturlar uchun ham, umuman operatsion tizimlar uchun ham amal qiladi va bu Windows, UNIX va Mac oilalari uchun ham amal qiladi.
"Kutubxona" ta'rifi birinchi marta 1951 yilda M. Uilkes, D. Uiler va S. Gillning "Elektron hisoblash mashinalari uchun dasturlash" kitobida paydo bo'lgan.
Ishlash printsipiga ko'ra tizim kutubxonalari dinamik va statik bo'linadi.
Dinamik kutubxonalar
Dinamik bog'lanish kutubxonalari - bu ishlaydigan dastur tomonidan so'ralganda xotiraga yuklanadigan komponent. Shunday qilib, subroutine kodini har bir dasturga ko'chirishga hojat yo'q - eng keng tarqalgan funktsiyalar kutubxona sifatida saqlanadi.
Bundan tashqari, operativ xotiraga yuklangan kutubxonadan bir vaqtning o'zida bir nechta dasturlar foydalanishi mumkin, bu tizim resurslarini tejash imkonini beradi. Bu, ayniqsa, hisoblashning dastlabki kunlarida to'g'ri keldi.
Windows OC-dagi Dynamic Link Library fayllari.dll (Dynamic Link Library) kengaytmasiga ega va system32 katalogida saqlanadi. UNIX-ga o'xshash tizimlardagi o'xshash komponentlar umumiy ob'ektlar deb nomlanadi va.so kengaytmasiga ega, Mac OS -.dlyb da.
Moris Uilkes va boshq. Kutubxonaga quyidagi ta'rifni berishdi - shaxsiy, tez-tez uchrab turadigan (standart) hisoblash operatsiyalari uchun qisqa, oldindan tayyorlangan dastur.
Dasturni bajarishda modulli yondashuvning barcha afzalliklarini olish imkoni bo'lmadi. Buning sababi DLL do'zax deb nomlanuvchi hodisa bilan bog'liq bo'lib, unda dastur bir vaqtning o'zida bir xil kutubxonaning (DLL) turli xil versiyalarini talab qiladi. Bu ishdan chiqishiga va operatsion tizimning ishonchliligini pasayishiga olib keladi.
Windows oilasining zamonaviy operatsion tizimlarida to'qnashuvlarni oldini olish uchun kutubxonalarning turli xil versiyalaridan foydalanishga ruxsat beriladi, bu esa ishonchliligini oshiradi, ammo modullik tamoyiliga zid keladi.
Statik kutubxonalar
Statik kutubxonalarda subroutine va funktsiya kodlari ham saqlanadi, ammo dinamiklardan farqli o'laroq, ular dasturlarni kompilyatsiya qilishda ishlatiladi. Ya'ni, kerakli kodning barchasi dasturga kiritilgan. Ilova mustaqil, dinamik kutubxonalardan mustaqil bo'lib qoladi, ammo hajmi kattalashadi.
Odatda, Windows-da, bunday kutubxonalarning fayllari.lib kengaytmasiga ega, UNIX-ga o'xshash tizimlarda -.a.
Ko'pgina kompilyatsiya qilingan tillar bilan ishlash, masalan, C, C ++, Paskal, statik kutubxonalarsiz imkonsiz.