GLib
जी. एल. आई. बी. तीन (पूर्व में पाँच) निम्न-स्तरीय प्रणाली पुस्तकालयों का एक समूह है जो सी में लिखा गया है और मुख्य रूप से जी. एन. ओ. एम. द्वारा विकसित किया गया है। GLib के कोड को GTK से अलग किया गया था, इसलिए इसका उपयोग GNOME के अलावा अन्य सॉफ़्टवेयर द्वारा किया जा सकता है और तब से इसे समानांतर रूप से विकसित किया गया है। विशेषताएँ जी. एल. आई. बी. उन्नत डेटा संरचनाएँ प्रदान करता है, जैसे कि स्मृति खंड, दोहरी और एकल रूप से जुड़ी सूचियाँ, हैश टेबल, गतिशील स्ट्रिंग और स्ट्रिंग उपयोगिताएँ, जैसे कि एक शाब्दिक स्कैनर, स्ट्रिंग खंड (स्ट्रिंग के समूह), गतिशील सरणियाँ, संतुलित द्विआधारी पेड़, एन-एरी पेड़, क्वार्क (एक स्ट्रिंग का दो-तरफा संबंध और एक अद्वितीय पूर्णांक पहचानकर्ता), कुंजीकृत डेटा सूची, संबंध और टुपल्स। कैश स्मृति प्रबंधन प्रदान करते हैं। जी. एल. आई. बी. ऐसे कार्यों को लागू करता है जो धागे, धागे की प्रोग्रामिंग और संबंधित सुविधाएं प्रदान करते हैं जैसे कि आदिम चर पहुंच, म्यूटेक्स, अतुल्यकालिक कतारें, सुरक्षित मेमोरी पूल, संदेश पासिंग और लॉगिंग, हुक कार्य (कॉलबैक पंजीकरण) और टाइमर। जी. एल. आई. बी. में संदेश भेजने की सुविधाएँ भी शामिल हैं जैसे कि बाईट ऑर्डर रूपांतरण और आई/ओ चैनल। जी. एल. आई. बी. की कुछ अन्य विशेषताओं में शामिल हैंः मानक मैक्रो चेतावनी और मॉड्यूल घटकों की गतिशील लोडिंग जी. एल. आई. बी. पैकेज में पांच पुस्तकालय शामिल थे, लेकिन उन सभी को एक पुस्तकालय में विलय कर दिया गया था, तब से केवल जी. एल. आई. बी. नाम दिया गया था, और अब स्वतंत्र पुस्तकालयों के रूप में बनाए नहीं रखा गया है। मूल पुस्तकालय थेः गोबजेक्ट, एक ऑब्जेक्ट सिस्टम जिसमें टाइप सिस्टम जी. टाइप जी. एल. आई. बी. जी. एम. मोड्यूल जी. थ्रेड जी. आई. ओ. शामिल है, इनमें से तीन स्रोत वृक्ष की अलग-अलग उप-निर्देशिकाओं में रहते हैं, और इसलिए इन्हें असतत घटकों के रूप में सोचा जा सकता हैः जी. एल. आई. बी., जी. ओ. ऑब्जेक्ट और जी. आई. ओ.। इन्हें एक सॉफ्टवेयर स्टैक के रूप में सोचा जा सकता हैः गोबजेक्ट जी. एल. आई. बी. पर निर्भर करता है, और जी. आई. ओ. उच्च-स्तरीय कार्यक्षमता प्रदान करता है जो दोनों का उपयोग करता है। GLib का इतिहास GTK + परियोजना के हिस्से के रूप में शुरू हुआ, जिसे अब GTK नाम दिया गया है। हालांकि, जीटीके + संस्करण 2 को जारी करने से पहले, परियोजना के डेवलपर्स ने जीटीके + से कोड को अलग करने का फैसला किया जो ग्राफिकल यूजर इंटरफेस (जीयूआई) के लिए नहीं था, इस प्रकार एक अलग सॉफ्टवेयर बंडल के रूप में जीएलआईबी बनाया गया। जी. एल. आई. बी. को एक अलग पुस्तकालय के रूप में जारी किया गया था ताकि अन्य डेवलपर्स, जो जी. टी. के. + के जी. यू. आई.-संबंधित भागों का उपयोग नहीं कर रहे हैं, वे पूर्ण जी. यू. आई. पुस्तकालय पर निर्भर किए बिना पुस्तकालय के गैर-जी. यू. आई. भागों का उपयोग कर सकें। चूँकि जी. एल. आई. बी. एक क्रॉस-प्लेटफ़ॉर्म लाइब्रेरी है, इसलिए ऑपरेटिंग सिस्टम के साथ इंटरफेस करने के लिए इसका उपयोग करने वाले एप्लिकेशन आमतौर पर बिना किसी बड़े बदलाव के विभिन्न ऑपरेटिंग सिस्टम में पोर्टेबल होते हैं। रिलीज ग्लिब सक्रिय विकास के दौर से गुजर रही है। वर्तमान अवलोकन के लिए https://gitlab.gnome.org/GNOME/glib/-/blob/main/NEWS देखें। नीचे दी गई तालिका 1998 से 2022 तक के प्रमुख पैच नोटों का दस्तावेजीकरण करती है। इसी तरह की परियोजनाएं अन्य पुस्तकालय निम्न-स्तरीय कार्य और डेटा संरचनाओं का कार्यान्वयन प्रदान करते हैं, जिनमें शामिल हैंः माइक्रोसॉफ्ट फाउंडेशन क्लास लाइब्रेरी (एमएफसी)-सी-आधारित विंडोज एपीआई के लिए एक ऑब्जेक्ट-ओरिएंटेड सी + + रैपर लाइब्रेरी जिसमें कुछ डेटा संरचनाएं और अन्य सुविधा कार्य भी शामिल हैं मानक टेम्पलेट लाइब्रेरी (एसटीएल)-डेटा संरचनाओं और एल्गोरिदम बूस्ट के लिए सी + + लाइब्रेरी-सी + + के लिए कुछ कार्य प्रदान करती है, जैसे कि थ्रेडिंग प्रिमिटिव्स, जो कि जीएलआईबी सी क्यूटीकोर के लिए करता है-क्यूटी फ्रेमवर्क डब्ल्यूएक्सबेस का कोर एपीआई-डब्ल्यूएक्सविडगेट्स लाइब्रेरी के गैर-जीयूआई कार्य-अपाचे पोर्टेबल रनटाइम और एप्पल कोर फाउंडेशन में जीएलआईबी के साथ एक बड़ा कार्यात्मक ओवरलैप होता है, और कई प्रदान करता है।