Dinamik Bağlantı Kütüphaneleri (Dynamic Link Library (.dll))

Yazan : Şadi Evren ŞEKER

Microsoft tarafından windows işletim sistemi üzerinde kullanıma açılan ve çalışma sırasında bağlanmaya izin verilen kütüphane yaklaşımıdır. Basitçe Linux ortamlarındaki .o (object file (nesne dosyası)) benzetilebilir. Bu dosyaların amacı birden fazla program tarafından kullanılan kütüphaneleri içermeleri ve her programın gerekli oldukça ilgili kütüphaneden dosyayı okumasıdır.

Windows öncesi microsoft işletim sisteminde (windows 3.x ve DOS gibi) kullanılan yaklaşımda program tek bir dosyadan oluşmaktaydı. Dolayısıyla programın kullandığı her kütüphane o programa özgü olarak bulunduruluyordu. İşletim sisteminin programın çalıştırılması sırasında herhangi bir bağlama yapması söz konusu değildi.

Windows 95 ile birlikte 32bit sisteme geçen windows,  Unix ve dolayısıyla Linux dünyasında da rahatlıkla kullanılabilen object code kavramı windows dünyasına kazandırılmış oldu. Buradaki amaç ortak kullanılan fonksiyonları bir dosyada bulundurmak ve her programın çalıştıırlması sırasında önce bağlayıcı (linker) tarafından bu dosyaların bağlanması ve ardından programın yükleyici (loader) tarafından hafızaya yüklenerek çalıştırılmasıydı.

Bu sayede aynı ortak fonksiyonu kullanan programların herbirisi için kod tekrarı olmayacağı gibi güncellemeler de tek elden takip edilebilecekti. Programcılığın modüler yaklaşımının bir ürünü olan .dll dosyaları günümüzde windows işletim sisteminde yaygın olarak kullanılmaktadır. Bu dosyalar derlenmiş (compiled) kod olduğu için gerekli görülmesi durumunda şifrelenebilmekte ve orjinal kodu koruma altında tutabilmektedir.

Gelişen web teknolojileri ile birlikte .dll dosyalarını windowsun web sunucusu (web server) olan IIS (internet information server) ile de uyumlu hale getiren microsoft, şu anda geliştirilen web projelerini .dll olarak sunucularda barındırıp internet kullanıcılarının erişimine açmaktadır.

.dll dosyalarının bir diğer avantajı da hafızaya bir kere yüklenen dosyaların birden fazla program tarafından paylaşılması bu sayede hafızanın verimli kullanılmasıdır.

Bu yazıyı beğendiyseniz, başkalarının da ilgisini çekebilirsiniz:


181 views

5 responses to “Dinamik Bağlantı Kütüphaneleri (Dynamic Link Library (.dll))”
  1. Erdi Dartıcı says:

    Verdiğiniz bilgiler için teşekkürler :) sitenizi uzun zamandır takip ediyorum,çok faydalı bilgiler var…
    merak ettiğim,projemiz başka dilde olsa bile (örneğin C++),c ile yazılmış kodları dll haline çevirerek bu projeye bağlayabilir miyiz?
    Bu işleri devcpp ortamında nasıl yapabiliriz?
    Tekrar verdiğiniz faydalı bilgiler ve bu harika site için teşekkür ederim…
    İyi akşamlar dilerim :)

  2. Ne yazık ki Dev-CPP ortamında DLL derlemek mümkün değil, veya en azından ben nasıl yapıldığını bilmiyorum. C++ ve C dili için Visual Studio ortamında bahsettiğiniz işlemi yapıp kütüphanelerinizi içeren DLL dosyaları derleyebilirsiniz. Zaten DLL kavramı windows ve dolayısıyla microsoft’a özgü bir kavram ve kendi geliştirme araçları ile derlenmesi gayet normal bir durum.

    Başarılar

  3. Erdi Dartıcı says:

    Cevabınız için teşekkür ederim…
    Söylediğiniz gibi bu işler için Visual Studio kullanmaya başladım.

    İyi çalışmalar dilerim… :)

  4. Erdi Dartıcı says:

    Cevabınız için teşekkür ederim.
    Söylediğiniz gibi DLL için Visual Studio ortamına geçtim…
    İyi çalışmalar dilerim… :)

  5. Erdi Dartıcı says:

    Merhabalar,
    DLL kavramıyla ilgili araştırma yaptım..
    Sonuç olarak DLL’in linux’ta da varlığını keşfettim,tek sorun Windows karakteristiğine uygun olanların DLL uzantısında olması… Dolayısıyla dinamik bağlama işinin Linux’ta farklı yapılması gibi bir durum söz konusu olabilir…
    Dev-CPP ile DLL derlemek mümkünmüş… Proje şablonlarında DLL seçeneği var.
    Fakat Windows’a özgü ekleri nasıl yapabiliriz diye sormuştum…
    Çok zaman geçti üzerinden,geç yanıtım için özür diliyorum..
    iyi çalışmalar dilerim…

Leave a Reply


+ 5 = sekiz

Benzer Yazılar:

Bilgisayar Kavramları üzerinde şu anda okumakta olduğunuz 'Dinamik Bağlantı Kütüphaneleri (Dynamic Link Library (.dll))' isimli yazı 07 Nov 2008 tarihinde, saat: 23:29 'de Şadi Evren ŞEKER tarafından gönderilmiş, toplam181 defa okunmuştur.

Benzer yazıları Derleyiciler, işletim sistemleri kategorilerinden okuyabilirsiniz. Yazar ile irtibat kurmak için email gönderebilirsiniz. Yazıya yorum yapabilir ya da yapılan yorumları RSS 2.0 ile takibe alabilirsiniz.


Category: Derleyiciler, işletim sistemleri