⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 dso.html.tr.utf8

📁 Apache官方在今天放出产品系列2.2的最新版本2.2.11的源码包 最流行的HTTP服务器软件之一
💻 UTF8
📖 第 1 页 / 共 2 页
字号:
      s谋ras谋nda ilintileyici komutuna <code>-lfilanca</code> 艧eklinde      belirtilerek 莽al谋艧t谋r谋labilir programla ilintilenirler. Do臒rudan      莽al谋艧t谋r谋labilir koda eklenen bu kodlar Unix y眉kleyicisinin program谋n      ba艧lat谋lmas谋 s谋ras谋nda k眉t眉phaneyi <code>/usr/lib</code> alt谋nda      <code>libfilanca.so</code> ad谋yla bulabilmesini sa臒lar. K眉t眉phanelerin      aranaca臒谋 yerler ya <code>-R</code> gibi bir ilintileyici se莽ene臒i ile      koda eklenir ya da arama yollar谋 <code>LD_LIBRARY_PATH</code> ortam      de臒i艧keni arac谋l谋臒谋yla yap谋land谋r谋l谋r. B枚ylece 莽al谋艧t谋r谋labilir      programda hen眉z 莽枚z眉mlenmemi艧 simgeler DSO i莽inde bulunarak      莽枚z眉mlenebilir.</p>    <p>脟al谋艧t谋r谋labilir program i莽indeki simgelere normalde DSO i莽inden      at谋fta bulunulmaz (genel kod k眉t眉phanesinin ba艧ka programlarca da      kullan谋lmas谋 nedeniyle). Bu bak谋mdan DSO taraf谋nda b枚yle bir 莽枚z眉mleme      yap谋lmaz. 脟al谋艧t谋r谋labilir program da DSO鈥檇aki simgeleri kendisi      莽枚z眉mlemeye u臒ra艧maz, bu i艧lemlerden tamamen Unix y眉kleyicisi      (<code>ld.so</code>) sorumludur. (Asl谋nda, <code>ld.so</code>鈥檡u      莽a臒谋racak kod, her 莽al谋艧t谋r谋labilir program谋n i莽ine ilintilenmi艧      (dura臒an de臒il) ba艧latma kodunun bir par莽as谋d谋r.) Programlar taraf谋ndan      ortakla艧a kullan谋lan k眉t眉phanelerin devingen olarak y眉klenmesinin sebebi      basittir: K眉t眉phane kodu <code>libc.so</code> gibi bir sistem      k眉t眉phanesine bir kere kaydedilip disk alan谋ndan yer kazan谋lm谋艧      olur.</p>    <p>陌kinci y枚ntemde kullan谋lan DSO鈥檒ara yine <em>payla艧谋ml谋      k眉t眉phaneler</em> veya <em>DSO k眉t眉phaneleri</em> ad谋 verilir fakat      bunlar谋n dosyalar谋 ge莽erli kabule g枚re <code>filanca.so</code> gibi      isimlendirilse de genelde keyfi olarak se莽ilen bir dosya uzant谋s谋      kullan谋larak isimlendirilirler. Bu dosyalar genellikle programa 枚zel bir      dizinde dururlar ve bu dosyalar谋 kullanacak olan 莽al谋艧t谋r谋labilir      programla aralar谋nda 枚zdevimli olarak ba臒 kurulmam谋艧t谋r. Bunun yerine,      莽al谋艧t谋r谋labilir program DSO鈥檡u 莽al谋艧ma an谋nda <code>dlopen()</code>      sayesinde kendi adres uzay谋na ekler. 脟al谋艧t谋r谋labilir program i莽in      DSO鈥檇aki simgeler bu s谋rada 莽枚z眉mlenmez. 脰zdevimli olarak devreye      giren Unix y眉kleyicisi, (varsa) artakalan simgeleri, 莽al谋艧t谋r谋labilir      ihra莽 edilen simge k眉melerini (ve 枚zellikle her yerde haz谋r ve naz谋r      <code>libc.so</code> i莽indeki t眉m simgeleri) kullanarak 莽枚z眉mler. Bu      yolla DSO, 莽al谋艧t谋r谋labilir program谋n simge k眉mesi bilgilerini sanki      kendisine ba艧tan dura臒an olarak ilintilenmi艧 gibi ula艧abilir.</p>    <p>Son olarak, DSO鈥檔un programlama aray眉z眉n眉n getirilerinden yararlanmak      amac谋yla 莽al谋艧t谋r谋labilir program, daha sonra da臒谋t谋m tablolar谋 vb.      yerlerde kullanmak 眉zere <code>dlsym()</code> 眉zerinden DSO鈥檇aki belli      simgeleri 莽枚z眉mlemek zorundad谋r. Ba艧ka bir deyi艧le: 脟al谋艧t谋r谋labilir      program ihtiya莽 duydu臒u her simgeyi kullanmak i莽in kendisi 莽枚z眉mleme      yapmak zorundad谋r. B枚yle bir mekanizman谋n getirisi, program谋n iste臒e      ba臒l谋 par莽alar谋n谋n gerekli olana kadar y眉klenmemesidir (b枚ylece daha az      bellek alan谋 kullan谋l谋r). Gerekti臒i zaman program谋n i艧levselli臒ini      artt谋rmak amac谋yla bu par莽alar devingen olarak programa      y眉klenebilir.</p>    <p>DSO mekanizmas谋n谋n bu basit gibi g枚r眉nen i艧leyi艧inde zorluk i莽eren bir      ad谋m 艧udur (ba艧kalar谋 da olabilir): Bir program谋n i艧levselli臒ini      geni艧letmek i莽in DSO kullan谋l谋rken (ikinci y枚ntem) 莽al谋艧t谋r谋labilir      programdan DSO i莽in simgelerin 莽枚z眉mlenmesi.  Zorlu臒un sebebi,      "tersine 莽枚z眉mleme" yap谋lmas谋d谋r; 莽al谋艧t谋r谋labilir program谋n simge      k眉mesindeki DSO simgeleri k眉t眉phane tasar谋m谋na ayk谋r谋 bir 艧ekilde      莽枚z眉mlenir ve bu uygulama t眉m platformlarda haz谋r olarak      desteklenmedi臒i gibi standartla艧m谋艧 da de臒ildir. Ge莽er uygulamada      莽al谋艧t谋r谋labilir program谋n evrensel simgeleri 莽o臒unlukla yeniden d谋艧a      verilmez ve bu bak谋mdan bir DSO i莽inde kullan谋lmalar谋 uygun de臒ildir.      Esas sorun, 莽al谋艧t谋r谋labilir bir program谋n i艧levselli臒ini 莽al谋艧ma      an谋nda geni艧letmek i莽in DSO kullan谋m谋 s谋ras谋nda ilintileyicinin t眉m      evrensel simgeleri d谋艧a vermesini zorlaman谋n bir yolunu bulmakt谋r.</p>    <p>Payla艧谋ml谋 k眉t眉phane yakla艧谋m谋 bu bak谋mdan t眉r眉n眉n tek 枚rne臒idir,      莽眉nk眉 DSO mekanizmas谋 枚zellikle bunun i莽in tasarlanm谋艧t谋r, dolay谋s谋yla      i艧letim sisteminin sa臒lad谋臒谋 hemen hemen t眉m k眉t眉phaneler i莽in      kullan谋labilir. Di臒er taraftan, bir program谋n i艧levselli臒ini      geni艧letmek i莽in payla艧谋ml谋 nesne kullan谋m谋 莽o臒u program taraf谋ndan      kullan谋lan bir 艧ey de臒ildir.</p>    <p>1998 itibariyle, DSO nesneleriyle 莽al谋艧ma an谋nda 莽al谋艧t谋r谋labilir      program i艧levselli臒ini geni艧leten ba艧l谋ca birka莽 yaz谋l谋m paketi vard谋r:      Perl 5 (XS mekanizmas谋 ve DynaLoader mod眉l眉 眉zerinden), Netscape      Sunucusu, vd. 1.3 s眉r眉m眉nden itibaren Apache de bu gruba kat谋ld谋. 脟眉nk眉      Apache, mod眉l kavram谋n谋 zaten program i艧levselli臒ini geni艧letmek i莽in      kullan谋yordu ve temel i艧levselli臒ine d谋艧 mod眉lleri ilintilemek i莽in      dahili olarak da臒谋t谋m listesine dayal谋 bir yakla艧谋m kullanmaktayd谋.      Dolay谋s谋yla Apache, mod眉llerini 莽al谋艧ma an谋nda y眉klemek i莽in DSO      kullanmaya ba艧tan yazg谋l谋yd谋.</p></div><div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div><div class="section"><h2><a name="advantages" id="advantages">Getiriler ve G枚t眉r眉ler</a></h2>    <p>Yukar谋da bahsedilen DSO鈥檡a dayal谋 枚zelliklerin getirileri      艧unlard谋r:</p>    <ul>      <li>Sunucu paketi 莽al谋艧ma an谋nda daha esnektir 莽眉nk眉, as谋l sunucuyu        olu艧turan par莽alar derleme s谋ras谋nda <code class="program"><a href="./programs/configure.html">configure</a></code>        se莽enekleriyle birle艧tirilmek yerine <code>httpd.conf</code> i莽inde        <code class="directive"><a href="./mod/mod_so.html#loadmodule">LoadModule</a></code> y枚nergeleri        sayesinde 莽al谋艧ma an谋nda birle艧tirilebilmektedir. Bu yolla, 枚rne臒in        tek bir Apache kurulumuyla birbirinden farkl谋 yap谋land谋rmalara sahip        莽ok say谋da sunucu 莽al谋艧t谋rmak m眉mk眉nd眉r. (standart veya SSL s眉r眉m眉;        basitle艧tirilmi艧 veya g眉莽lendirilmi艧 s眉r眉m眉 [mod_perl, PHP3],        vs.)</li>      <li>Sunucu paketi kurulumdan sonra bile 眉莽眉nc眉 parti mod眉llerle kolayca        geni艧letilebilir. Bu 枚zellikle, bir Apache temel paketinin yan谋nda        PHP3, mod_perl, mod_fastcgi gibi ek paketler olu艧turan paket        da臒谋t谋c谋lar谋na b眉y眉k yarar sa臒lar.</li>      <li>Yeni Apache mod眉lleri i莽in daha kolay prototip geli艧tirilebilir:        Mod眉l kaynak kodunu DSO/<code class="program"><a href="./programs/apxs.html">apxs</a></code> 莽ifti sayesinde        Apache kaynak a臒ac谋n谋n d谋艧谋nda derleyip mod眉l眉n yeni bir s眉r眉m眉n眉 bir        <code>apxs -i</code> komutunun ard谋ndan <code>apachectl        restart</code> yaparak 莽al谋艧an bir Apache sunucusunda denemek daha        kolay hale getirilmi艧tir.</li>    </ul>    <p>DSO kullan谋m谋n谋n g枚t眉r眉leri ise 艧unlard谋r:</p>    <ul>      <li>Her platformda haz谋r olarak desteklenmeme: T眉m i艧letim sistemleri        bir programa devingen olarak kod y眉kleme becerisine sahip        olmad谋臒谋ndan DSO mekanizmas谋 her platformda kullan谋lamaz.</li>      <li>陌lk y眉klemede %20 yava艧lama: Unix y眉kleyicisi simgeleri 莽枚z眉mlemek        zorunda oldu臒undan sunucu ilk ba艧lat谋l谋rken yakla艧谋k %20 daha yava艧        faaliyete ge莽er.</li>      <li>脟al谋艧ma s谋ras谋nda % 5 yava艧lama: Konumdan ba臒谋ms谋z kodun (PIC -        Position Independent Code) g枚reli adresleme i莽in karma艧谋k oyunlara        girmesi ve bunun mutlak adresleme kadar h谋zl谋 olmamas谋 nedeniyle        sunucu baz谋 platformlarda 莽al谋艧ma an谋nda yakla艧谋k %5 daha yava艧        莽al谋艧abilir.</li>      <li>DSO'nun t眉m mod眉ller i莽in uygun olmamas谋: DSO mod眉lleri baz谋        platformlarda di臒er DSO temelli k眉t眉phanelerle ilintilenemedi臒inden        (<code>ld -lfilanca</code>) DSO mekanizmas谋n谋 t眉m mod眉l t眉rleri i莽in        kullanamazs谋n谋z (枚rne臒in a.out temelli platformlar bu i艧levselli臒i        ELF temelli platformlar kadar iyi sa臒lamaz). Ba艧ka bir deyi艧le, DSO        dosyalar谋 olarak derlenmi艧 mod眉llerin kullanabilece臒i simgeler ya        Apache temel kodunda vard谋r ya Apache temel kodunun kulland谋臒谋 C        k眉t眉phanesinde (<code>libc</code>) ve di臒er dura臒an ve devingen        k眉t眉phanelerde vard谋r ya da konumdan ba臒谋ms谋z kodu i莽eren        dura臒an k眉t眉phane ar艧ivlerinde (<code>libfilanca.a</code>)        vard谋r. Di臒er mod眉lleri kullanmak i莽in tek 艧ans谋n谋z ya Apache        莽ekirde臒inin mod眉le bir at谋f i莽ermesini sa臒lamak ya da mod眉l kodunu        <code>dlopen()</code> vas谋tas谋yla y眉klemektir.</li>    </ul></div></div><div class="bottomlang"><p><span>Mevcut Diller: </span><a href="./en/dso.html" hreflang="en" rel="alternate" title="English">&nbsp;en&nbsp;</a> |<a href="./ja/dso.html" hreflang="ja" rel="alternate" title="Japanese">&nbsp;ja&nbsp;</a> |<a href="./ko/dso.html" hreflang="ko" rel="alternate" title="Korean">&nbsp;ko&nbsp;</a> |<a href="./tr/dso.html" title="T眉rk莽e">&nbsp;tr&nbsp;</a></p></div><div id="footer"><p class="apache">Copyright 2008 The Apache Software Foundation.<br /><a href="http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a> alt谋nda lisansl谋d谋r.</p><p class="menu"><a href="./mod/">Mod眉ller</a> | <a href="./mod/directives.html">Y枚nergeler</a> | <a href="./faq/">SSS</a> | <a href="./glossary.html">Terimler</a> | <a href="./sitemap.html">Site Haritas谋</a></p></div></body></html>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -