home *** CD-ROM | disk | FTP | other *** search
/ PC World 2003 May / PCWorld_2003-05_cd.bin / Komunik / apache / apache_2.0.45-win32-x86-no_ssl.msi / Data.Cab / F232599_dso.html.ko.euckr < prev    next >
Extensible Markup Language  |  2003-03-30  |  12KB  |  310 lines

  1. <?xml version="1.0" encoding="EUC-KR"?>
  2. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
  3.     "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  4.  
  5. <html xmlns="http://www.w3.org/1999/xhtml" lang="ko" xml:lang="ko">
  6. <!-- ┐δ╛ε ░░└╠ ▒Γ┴ª -->
  7.   <head>
  8.     <meta name="generator" content="HTML Tidy, see www.w3.org" />
  9.  
  10.     <title>╡┐└√░°└»░┤├╝ (DSO) ┴÷┐°</title>
  11.   </head>
  12.   <!-- Background white, links blue (unvisited), navy (visited), red (active) -->
  13.  
  14.   <body bgcolor="#FFFFFF" text="#000000" link="#0000FF"
  15.   vlink="#000080" alink="#FF0000">
  16.         <div align="center">
  17.       <img src="images/sub.gif" alt="[APACHE DOCUMENTATION]" /> 
  18.  
  19.       <h3>Apache HTTP Server Version 2.0</h3>
  20.     </div>
  21.  
  22.  
  23.  
  24.  
  25.     <h1 align="center">╡┐└√░°└»░┤├╝ (DSO) ┴÷┐°</h1>
  26.  
  27.     <p>╛╞╞──í └Ñ╝¡╣÷┤┬ ░ⁿ╕«└┌░í ╕≡╡Γ╡Θ└╗ ╝▒┼├╟╧┐⌐ ╝¡╣÷┐í ╞≈╟╘╟╥
  28.     ▒Γ┤╔└╗ ░ß┴ñ╟╥ ╝÷ └╓┤┬ ╕≡╡Γ╚¡╡╚ ╟┴╖╬▒╫╖Ñ└╠┤┘. ╕≡╡Γ└║ ╝¡╣÷░í ──╞─└╧╡╔╢º
  29.     <code>httpd</code> ╜╟╟α╞─└╧┐í ┴ñ└√└╕╖╬ ──╞─└╧╡╔ ╝÷ └╓┤┘.
  30.     ╛╞┤╧╕Θ ╕≡╡Γ└║ ┴▀╜╔└╠ ╡╟┤┬ <code>httpd</code> ╜╟╟α╞─└╧░· ║░╡╡╖╬
  31.     ╡┐└√░°└»░┤├╝(Dynamic Shared Objects, DSOs)╖╬ ──╞─└╧╡╔ ╝÷ └╓┤┘.
  32.     DSO ╕≡╡Γ└║ ╝¡╣÷░í ──╞─└╧╡╔╢º ──╞─└╧╟╧░┼│¬ Apache Extension
  33.     Tool (<a href="programs/apxs.html">apxs</a>)└╗ ╗τ┐δ╟╧┐⌐ │¬┴▀┐í
  34.     ──╞─└╧╟╧░φ ├▀░í╟╥ ╝÷ └╓┤┘.</p>
  35.  
  36.     <p>└╠ ╣«╝¡┤┬ DSO ╕≡╡Γ ╗τ┐δ╣²░· ░ⁿ╖├╡╚ └╠╖╨└╗ ╝│╕φ╟╤┤┘.</p>
  37.  
  38.     <ul>
  39.       <li><a href="#implementation">▒╕╟÷</a></li>
  40.  
  41.       <li><a href="#usage">╗τ┐δ╣² ┐Σ╛α</a></li>
  42.  
  43.       <li><a href="#background">╣Φ░µ┴÷╜─</a></li>
  44.  
  45.       <li><a href="#advantages">└σ┴í░· ┤▄┴í</a></li>
  46.     </ul>
  47.     <hr />
  48.  
  49.     <table border="1">
  50.       <tr>
  51.         <td valign="top"><strong>░ⁿ╖├╡╚ ╕≡╡Γ</strong><br />
  52.          <br />
  53.          <a href="mod/mod_so.html">mod_so</a><br />
  54.          </td>
  55.  
  56.         <td valign="top"><strong>░ⁿ╖├╡╚ ┴÷╜├╛ε</strong><br />
  57.          <br />
  58.          <a href="mod/mod_so.html#loadmodule">LoadModule</a><br />
  59.          </td>
  60.       </tr>
  61.     </table>
  62.  
  63.     <h2><a id="implementation"
  64.     name="implementation">▒╕╟÷</a></h2>
  65.  
  66.     <p>╛╞╞──í ╕≡╡Γ└╗ └╨╛ε╡Θ└╠▒Γ└º╟╤ DSO ┴÷┐°└║ ╛╞╞──í ╟┘╜╔┐í
  67.     ┴ñ└√└╕╖╬ ──╞─└╧╡╟╛▀╟╥
  68.     <a href="mod/mod_so.html"><code>mod_so.c</code></a>╢≤┤┬
  69.     ╕≡╡Γ└╠ ┴ª░°╟╤┤┘. └╠┤┬ <code>core.c</code>╕ª ┴ª┐▄╟╧░φ
  70.     DSO░í ╡╔ ╝÷ ╛°┤┬ └»└╧╟╤ ╕≡╡Γ└╠┤┘. ╜╟┴ª╖╬ ┤┘╕Ñ ╕≡╡τ ╛╞╞──í ╕≡╡Γ└║
  71.     ░ó░ó <a href="install.html">╝│─í ╣«╝¡</a>┐í╝¡ ╝│╕φ╟╤
  72.     <code>configure</code>└╟ <code>--enable-<i>module</i>=shared</code>
  73.     ┐╔╝╟└╗ ╗τ┐δ╟╧┐⌐ DSO╖╬ ──╞─└╧╟╥ ╝÷ └╓┤┘. ╕≡╡Γ└╠
  74.     <code>mod_foo.so</code>┐═ ░░└╠ DSO╖╬ ──╞─└╧╡╚╚─ <code>httpd.conf</code>
  75.     ╞─└╧┐í <a href="mod/mod_so.html"><code>mod_so</code></a>└╟
  76.     <a href="mod/mod_so.html#loadmodule"><code>LoadModule</code></a>
  77.     ╕φ╖╔╛ε╕ª ╗τ┐δ╟╧┐⌐ ╝¡╣÷ ╜├└█╜├ ╚ñ└║ └τ╜├└█╜├ ▒╫ ╕≡╡Γ└╗ └╨╛ε╡Θ└╧
  78.     ╝÷ └╓┤┘.</p>
  79.  
  80.     <p>╛╞╞──í ╕≡╡Γ(╞»╚≈ ┴ª╗∩└╟ ╕≡╡Γ)╖╬ ╗τ┐δ╟╥ DSO ╞─└╧└╗ ╜▒░╘
  81.     ╕╕╡Θ▒Γ└º╟╪ <a href="programs/apxs.html">apxs</a> (<em>APache
  82.     eXtenSion</em>)╢≤┤┬ ╗⌡╖╬┐ε ┴÷┐° ╟┴╖╬▒╫╖Ñ└╠ └╓┤┘.
  83.     └╠┤┬ ╛╞╞──í ╝╥╜║ ╞«╕« <em>╣█┐í╝¡</em> DSO╖╬ ╗τ┐δ╟╥ ╕≡╡Γ└╗
  84.     ──╞─└╧╟╥╢º ╗τ┐δ╟╤┤┘. ░││Σ└║ ╜▒┤┘. ╛╞╞──í╕ª ╝│─í╟╥╢º
  85.     <code>configure</code>┐═ <code>make install</code>└╠
  86.     ╛╞╞──í C ╟∞┤⌡╞─└╧└╗ ╝│─í╟╧░φ, DSO ╞─└╧└╗ ──╞─└╧╟╧▒Γ└º╟╤
  87.     ╟├╖í╞√ ╞»└»└╟ ──╞─└╧╖» ┐╔╝╟░· ╕╡─┐ ┐╔╝╟└╗ <code>apxs</code>
  88.     ╟┴╖╬▒╫╖Ñ┐í ╛┤┤┘. ▒╫╖í╝¡ ╗τ┐δ└┌┤┬ <code>apxs</code>╕ª
  89.     ╗τ┐δ╟╧┐⌐ ╛╞╞──í ╣Φ╞≈║╗ ╝╥╜║ ╞«╕«╛°└╠, ╢╟ DSO ┴÷┐°└╗ └º╟╤ ╟├╖í╞√
  90.     ╞»└»└╟ ──╞─└╧╖» ┐╔╝╟┐═ ╕╡─┐ ┐╔╝╟┐í ╜┼░µ└╗ ╛▓┴÷╛╩░φ └┌╜┼└╟
  91.     ╛╞╞──í ╕≡╡Γ ╝╥╜║╕ª ──╞─└╧╟╥ ╝÷ └╓┤┘.</p>
  92.  
  93.     <h2><a id="usage" name="usage">╗τ┐δ╣² ┐Σ╛α</a></h2>
  94.  
  95.     <p>Apache 2.0└╟ DSO ▒Γ┤╔┐í ┤δ╟╤ ┬¬░φ ░ú╖½╟╤ ┐Σ╛α└╠┤┘:</p>
  96.  
  97.     <ol>
  98.       <li>
  99.         <em>╣Φ╞≈║╗┐í └╓┤┬</em> ╛╞╞──í ╕≡╡Γ└╗ ──╞─└╧╟╧░φ ╝│─í╟╧┤┬ ░µ┐∞.
  100.         ┐╣╕ª ╡Θ╛ε <code>mod_foo.c</code>╕ª DSO <code>mod_foo.so</code>╖╬:
  101.  
  102.         <table bgcolor="#f0f0f0" cellpadding="10">
  103.           <tr>
  104.             <td>
  105. <pre>
  106. $ ./configure --prefix=/path/to/install
  107.         --enable-foo=shared
  108. $ make install
  109. </pre>
  110.             </td>
  111.           </tr>
  112.         </table>
  113.       </li>
  114.  
  115.       <li>
  116.         <em>┴ª╗∩└╟</em> ╛╞╞──í ╕≡╡Γ└╗ ──╞─└╧╟╧░φ ╝│─í╟╧┤┬ ░µ┐∞. ┐╣╕ª ╡Θ╛ε
  117.         <code>mod_foo.c</code>╕ª DSO <code>mod_foo.so</code>╖╬:
  118.  
  119.         <table bgcolor="#f0f0f0" cellpadding="10">
  120.           <tr>
  121.             <td>
  122. <pre>
  123. $ ./configure --add-module=module_type:/path/to/3rdparty/mod_foo.c 
  124.         --enable-foo=shared
  125. $ make install
  126. </pre>
  127.             </td>
  128.           </tr>
  129.         </table>
  130.       </li>
  131.  
  132.       <li>
  133.         ░°└» ╕≡╡Γ└╗ <em>┤┘└╜┐í ╝│─í╟╧▒Γ└º╟╪</em> ╛╞╞──í╕ª ▒╕╝║╟╧┤┬ ░µ┐∞:
  134.  
  135.         <table bgcolor="#f0f0f0" cellpadding="10">
  136.           <tr>
  137.             <td>
  138. <pre>
  139. $ ./configure --enable-so
  140. $ make install
  141. </pre>
  142.             </td>
  143.           </tr>
  144.         </table>
  145.       </li>
  146.  
  147.       <li>
  148.         <em>┴ª╗∩└╟</em> ╛╞╞──í ╕≡╡Γ└╗ ──╞─└╧╟╧░φ ╝│─í╟╧┤┬ ░µ┐∞.
  149.         <code>mod_foo.c</code>╕ª <a href="programs/apxs.html">apxs</a>╕ª
  150.         ╗τ┐δ╟╧┐⌐ ╛╞╞──í ╝╥╜║ ╞«╕« <em>╣█┐í╝¡</em> DSO
  151.         <code>mod_foo.so</code>╖╬:
  152.  
  153.         <table bgcolor="#f0f0f0" cellpadding="10">
  154.           <tr>
  155.             <td>
  156. <pre>
  157. $ cd /path/to/3rdparty
  158. $ apxs -c mod_foo.c
  159. $ apxs -i -a -n foo mod_foo.la
  160. </pre>
  161.             </td>
  162.           </tr>
  163.         </table>
  164.       </li>
  165.     </ol>
  166.  
  167.     <p>╕≡╡τ ░µ┐∞ └╧┤▄ ░°└» ╕≡╡Γ└╠ ──╞─└╧╡╟╕Θ, <code>httpd.conf</code>┐í
  168.     <a href="mod/mod_so.html#loadmodule"><code>LoadModule</code></a>
  169.     ┴÷╜├╛ε╕ª ╗τ┐δ╟╧┐⌐ ╛╞╞──í░í ▒╫ ╕≡╡Γ└╗ ╚░╝║╚¡╟╧░╘ ╟╪╛▀╟╤┤┘.</p>
  170.  
  171.     <h2><a id="background" name="background">╣Φ░µ┴÷╜─</a></h2>
  172.  
  173.     <p>╟÷┤δ└√└╬ └»┤╨╜║╖∙┐í┤┬ <em>╡┐└√░°└»░┤├╝</em> (DSO)└╟
  174.     ╡┐└√ ╕╡┼╖/╖╬╡∙└╠╢≤░φ ╟╧┐⌐, ╞»║░╟╤ ╟ⁿ╜─└╟ ╜╟╟α─┌╡σ ┴╢░ó└╗ ╕╕╡Θ╛ε
  175.     ╜╟╟α┴▀ ╜╟╟α╟┴╖╬▒╫╖Ñ└╟ ┴╓╝╥░°░ú┐í └╨╛ε╡Θ└╠┤┬ ╕┌┴° ▒Γ┤╔└╠ └╓┤┘.</p>
  176.  
  177.     <p>└╠ ╖╬╡∙└║ ║╕┼δ ╡╬░í┴÷ ╣µ╣²└╕╖╬ ░í┤╔╟╧┤┘. ╟╧│¬┤┬ ╜╟╟α╟┴╖╬▒╫╖Ñ└╠
  178.     ╜├└█╟╥╢º <code>ld.so</code>╢≤┤┬ ╜├╜║┼█ ╟┴╖╬▒╫╖Ñ└╠ ╖╬╡∙└╗
  179.     └┌╡┐└╕╖╬ ╟╧┤┬ ░µ┐∞░φ, ┤┘╕Ñ ╟╧│¬┤┬ ╜╟╟α┴▀└╬ ╟┴╖╬▒╫╖Ñ┐í╝¡
  180.     <code>dlopen()/dlsym()</code> ╜├╜║┼█─▌╖╬ └»┤╨╜║ ╖╬┤⌡└╟
  181.     ╜├╜║┼█ └╬┼═╞Σ└╠╜║└╗ ╗τ┐δ╟╧┐⌐ ┴≈┴ó ╖╬╡∙╟╧┤┬ ░µ┐∞┤┘.</p>
  182.  
  183.     <p>├╣╣°┬░ ░µ┐∞ DSO┤┬ ║╕┼δ <em>░°└»╢≤└╠║Ω╖»╕«(shared libraries)</em> ╚ñ└║
  184.     <em>DSO ╢≤└╠║Ω╖»╕«</em>╢≤░φ ║╬╕ú╕τ, ╞─└╧└║ <code>libfoo.so</code>│¬
  185.     <code>libfoo.so.1.2</code> ░░└║ └╠╕º└╗ ░í┴°┤┘. └╠╡Θ└║
  186.     ╜├╜║┼█ ╡≡╖║┼Σ╕«(║╕┼δ <code>/usr/lib</code>)┐í └╓░φ,
  187.     ──╞─└╧╜├ ╕╡─┐ ╕φ╖╔╛ε┐í <code>-lfoo</code>╕ª ┴╓╛ε ╜╟╟α╞─└╧░·
  188.     ┐¼░ß╡╚┤┘. └╠╖╕░╘ ┴≈┴ó ╜ß┴╪ ╢≤└╠║Ω╖»╕«┤┬ ╜╟╟α╞─└╧┐í ┬ⁿ┴╢╡╟┐⌐╝¡,
  189.     ╕╡─┐ ┐╔╝╟ <code>-R</code>╖╬ ┴≈┴ó ┴÷┴ñ╟╧┐┤░┼│¬ ╚»░µ║»╝÷
  190.     <code>LD_LIBRARY_PATH</code>╖╬ ┴÷┴ñ╟╤ ░µ╖╬└╬ <code>/usr/lib</code>┐í╝¡
  191.     └»┤╨╜║ ╖╬┤⌡░í ╟┴╖╬▒╫╖Ñ└╠ ╜├└█╟╥╢º <code>libfoo.so</code>╕ª
  192.     ├ú└╗(resolve) ╝÷ └╓┤┘. ▒╫╖»╕Θ ╜╟╟α╟┴╖╬▒╫╖Ñ└╟ (╛╞┴≈ ╕°├ú└║)
  193.     ╜╔║╝(symbol)└╗ DSO┐í╝¡ ├ú░╘╡╚┤┘.</p>
  194.  
  195.     <p>DSO┤┬ ║╕┼δ ╜╟╟α╟┴╖╬▒╫╖Ñ└╟ ╜╔║╝└╗ ├ú┴÷╛╩▒Γ ╢º╣«┐í (DSO░í
  196.     └τ╗τ┐δ░í┤╔╟╤ └╧╣▌└√└╬ ─┌╡σ└╟ ╢≤└╠║Ω╖»╕«└╠╣╟╖╬) ├ú▒Γ┤┬ ┐⌐▒Γ╝¡ │í│¡┤┘.
  197.     └»┤╨╜║ ╖╬┤⌡░í ╜╔║╝ ├ú▒Γ╕ª ┐╧└ⁿ╚≈ ┤π┤τ╟╧╣╟╖╬ ╜╟╟α╟┴╖╬▒╫╖Ñ└╠ ┴≈┴ó
  198.     DSO┐í╝¡ ╜╔║╝└╗ ├ú└╗ ╟╩┐Σ░í ╛°┤┘. (╗τ╜╟ <code>ld.so</code>╕ª
  199.     ║╬╕ú┤┬ ─┌╡σ┤┬ ┴ñ└√└╠ ╛╞┤╤ ╕≡╡τ ╜╟╟α╟┴╖╬▒╫╖Ñ┐í ╕╡┼⌐╡╟┤┬ ╜╟╟α╜├
  200.     ╜├└█─┌╡σ└╟ └╧║╬┤┘.) ░°┼δ╡╚ ╢≤└╠║Ω╖»╕« ─┌╡σ╕ª ╡┐└√└╕╖╬ └╨╛ε╡Θ└╠┤┬
  201.     └σ┴í└║ ╕φ╚«╟╧┤┘. ╢≤└╠║Ω╖»╕« ─┌╡σ░í ╕≡╡τ ╟┴╖╬▒╫╖Ñ┐í └·└σ╡╟┤┬ ┤δ╜┼
  202.     <code>libc.so</code>┐═ ░░└║ ╜├╜║┼█ ╢≤└╠║Ω╖»╕«┐í ╟╤╣°╕╕ └·└σ╡╟▒Γ
  203.     ╢º╣«┐í ╡≡╜║┼⌐ ░°░ú└╠ └²╛α╡╚┤┘.</p>
  204.  
  205.     <p>╡╬╣°┬░ ░µ┐∞ DSO┤┬ ║╕┼δ <em>░°└»░┤├╝(shared objects)</em> ╚ñ└║
  206.     <em>DSO ╞─└╧</em>└╠╢≤░φ ║╬╕ú░φ, (▒╘─ó╗≤ └╠╕º└║ <code>foo.so</code>└╠┴÷╕╕)
  207.     ╞─└╧└╟ ╚«└σ└┌┤┬ └┌└»╖╙┤┘. └╠ ╞─└╧╡Θ└║ ║╕┼δ ╟┴╖╬▒╫╖Ñ └┌├╝ ╡≡╖║┼Σ╕«┐í
  208.     └º─í╟╧░φ ╜╟╟α╟┴╖╬▒╫╖Ñ┐í └┌╡┐└╕╖╬ ┐¼░ß╡╟┴÷ ╛╩┤┬┤┘. ┤δ╜┼ ╜╟╟α╟┴╖╬▒╫╖Ñ└║
  209.     <code>dlopen()</code>└╗ ╗τ┐δ╟╧┐⌐ DSO╕ª ╜╟╟α╜├ ┴╓╝╥░°░ú┐í ┴≈┴ó
  210.     └╨╛ε╡Θ┐⌐╛▀ ╟╤┤┘. └╠╢º ╜╟╟α╟┴╖╬▒╫╖Ñ└║ DSO┐í╝¡ ╜╔║╝└╗ ├ú┴÷ ╛╩┤┬┤┘.
  211.     ┤δ╜┼ └»┤╨╜║ ╖╬┤⌡░í └┌╡┐└╕╖╬ ╜╟╟α╞─└╧░· ╜╟╟α╞─└╧└╠ └╠╣╠ └╨╛ε╡Θ└╬ DSO
  212.     ╢≤└╠║Ω╖»╕«(╞»╚≈ ╟╫╗≤└╓┤┬ <code>libc.so</code>└╟ ╕≡╡τ ╜╔║╝)┐í╝¡
  213.     DSO└╟ (╛╞┴≈ ╕°├ú└║) ╜╔║╝└╗ ├ú┤┬┤┘. ▒╫╖í╝¡ DSO┤┬ ╕╢─í ├│└╜║╬┼═
  214.     ╜╟╟α╟┴╖╬▒╫╖Ñ┐í ┴ñ└√└╕╖╬ ╕╡┼⌐╡╚░═░· ░░└╠ ╜╟╟α╞─└╧└╟ ╜╔║╝└╗
  215.     ╛╦░╘╡╚┤┘.</p>
  216.  
  217.     <p>DSO└╟ API╕ª └╠┐δ╟╧▒Γ└º╟╪╝¡ ╕╢┴÷╕╖└╕╖╬ ╜╟╟α╟┴╖╬▒╫╖Ñ└║
  218.     <code>dlsym()</code>╖╬ DSO┐í╝¡ ╞»┴ñ ╜╔║╝└╗ ├ú╛╞╝¡,
  219.     ╛╒└╕╖╬ ╗τ┐δ╟╧▒Γ└º╟╪ ╡≡╜║╞╨─í(dispatch) ╟Ñ <em>╡ε</em>┐í
  220.     └·└σ╟╤┤┘. ┤┘╕Ñ ╕╗╖╬ ╜╟╟α╟┴╖╬▒╫╖Ñ└║ ╗τ┐δ╟╥ ╕≡╡τ ╜╟║╝└╗ ┴≈┴ó
  221.     ├ú╛╞╛▀╟╤┤┘. └╠╖▒ ▒╕┴╢└╟ └σ┴í└║ ╟┴╖╬▒╫╖Ñ└╟ ╝▒┼├└√└╬ └╧║╬└╗
  222.     ╟┴╖╬▒╫╖Ñ└╠ ╟╩┐Σ╟╥╢º▒ε┴÷ └╨╛ε╡Θ└╠┴÷ ╛╩╛╞╡╡ (▒╫╖í╝¡
  223.     ╕▐╕≡╕«╕ª │╢║±╟╧┴÷ ╛╩░╘) ╡╚┤┘┤┬ ┴í└╠┤┘. ▒Γ║╗ ╟┴╖╬▒╫╖Ñ└╟ ▒Γ┤╔└╗
  224.     ╚«└σ╟╧▒Γ└º╟╪ ╟╩┐Σ╟╥╢º └╠ ║╬║╨└╗ ╡┐└√└╕╖╬ └╨╛ε╡Θ└╧ ╝÷ └╓┤┘.</p>
  225.  
  226.     <p>└╠╖▒ DSO ▒╕┴╢░í └┌┐¼╜║╖┤░╘ ║╕└╠┴÷╕╕, ├╓╝╥╟╤ ╛ε╖┴┐ε ┴í└╠
  227.     ╟╧│¬└╓┤┘. └╠┤┬ ╟┴╖╬▒╫╖Ñ└╗ ╚«└σ╟╧▒Γ└º╟╪ DSO╕ª ╗τ┐δ╟╥╢º
  228.     DSO░í ╜╟╟α╟┴╖╬▒╫╖Ñ└╟ ╜╔║╝└╗ ├ú┤┬ └╧└╠┤┘. ┐╓? DSO░í ╜╟╟α╟┴╖╬▒╫╖Ñ└╟
  229.     ╜╔║╝└╗ "┐¬└╕╖╬ ├ú┤┬ ░═"└║ (╢≤└╠║Ω╖»╕«┤┬ ╗τ┐δ╡╟┤┬ ╟┴╖╬▒╫╖Ñ┐í ┤δ╟╪
  230.     ╕≡╕Ñ┤┘┤┬) ╢≤└╠║Ω╖»╕« ╝│░Φ┐í ╣▌╟╧╕τ, ╕≡╡τ ╟├╖í╞√┐í╝¡ ┴÷┐°╡╟┴÷
  231.     ╛╩░φ ╟Ñ┴╪╚¡╡╟┴÷╡╡ ╛╩╛╥▒Γ ╢º╣«└╠┤┘. ╜╟┴ª╖╬ ╜╟╟α╞─└╧└╟
  232.     └ⁿ┐¬╜╔║╝(global symbol)└║ └┌┴╓ └═╜║╞≈╞«(export)╡╟┴÷ ╛╩▒Γ╢º╣«┐í
  233.     DSO░í ╗τ┐δ╟╥ ╝÷ ╛°┤┘. DSO╕ª ╗τ┐δ╟╧┐⌐ ╜╟╟α┴▀ ╟┴╖╬▒╫╖Ñ└╗ ╚«└σ╟╧╖┴╕Θ
  234.     ╕╡─┐┐í░╘ ╕≡╡τ └ⁿ┐¬╜╔║╝└╗ └═╜║╞≈╞«╟╧╡╡╖╧ ░¡┴ª╟╧┤┬ ░═└╠ ┴╓┐Σ╟╤
  235.     ╟╪░ß├Ñ└╠┤┘.</p>
  236.  
  237.     <p>░°└»╢≤└╠║Ω╖»╕«┤┬ DSO ▒╕┴╢╕ª └º╟╪ ╝│░Φ╡╟╛·▒Γ╢º╣«┐í └ⁿ╟ⁿ└√└╠░φ,
  238.     ┐ε┐╡├╝┴ª░í ┴ª░°╟╧┤┬ ░┼└╟ ╕≡╡τ ┴╛╖∙└╟ ╢≤└╠║Ω╖»╕«┐í ╗τ┐δ╡╚┤┘.
  239.     ╣▌┤δ╖╬ ╕╣└║ ╟┴╖╬▒╫╖Ñ└║ ╟┴╖╬▒╫╖Ñ└╗ ╚«└σ╟╧▒Γ└º╟╪ ░°└»░┤├╝╕ª
  240.     ╗τ┐δ╟╧┴÷ ╛╩┤┬┤┘.</p>
  241.  
  242.     <p>1998│Γ ╜╟╟α┴▀ ╜╟┴ª╖╬ ▒Γ┤╔└╗ ╚«└σ╟╧▒Γ└º╟╪
  243.     DSO ▒╕┴╢╕ª ╗τ┐δ╟╤ ╝╥╟┴╞«┐■╛ε ╞╨┼░┴÷┤┬ (XS ▒╕┴╢┐═ DynaLoader ╕≡╡Γ└╗
  244.     ╗τ┐δ╟╤) Perl 5, Netscape Server <em>╡ε</em>└╕╖╬ ╡σ╣░╛·┤┘.
  245.     ╛╞╞──í┤┬ └╠╣╠ ▒Γ┤╔└╗ ╚«└σ╟╧▒Γ└º╟╪ ╕≡╡Γ ░││Σ└╗ ╗τ┐δ╟▀░φ ┐▄║╬
  246.     ╕≡╡Γ└╗ ╛╞╞──í ╟┘╜╔▒Γ┤╔┐í ┐¼░ß╟╧▒Γ└º╟╪ │╗║╬└√└╕╖╬ ╡≡╜║╞╨─í╕±╖╧└╗ └╠┐δ╟╤
  247.     ┴ó▒┘╣µ╣²└╗ ╗τ┐δ╟▀▒Γ╢º╣«┐í 1.3 ╣÷└ⁿ║╬┼═ ┐⌐▒Γ┐í ╟╒╖∙╟▀┤┘. ▒╫╖í╝¡
  248.     ╛╞╞──í┤┬ ╜╟╟α┴▀ ╕≡╡Γ└╗ └╨╛ε╡Θ└╠┤┬╡Ñ DSO╕ª ╗τ┐δ╟╧╡╡╖╧ ┐ε╕φ┴÷┐÷┴│┤┘.</p>
  249.  
  250.     <h2><a id="advantages" name="advantages">└σ┤▄┴í</a></h2>
  251.  
  252.     <p>╛╒┐í╝¡ ╕╗╟╤ DSO╕ª ╗τ┐δ╟╧╕Θ ┤┘└╜░· ░░└║ └σ┴í└╠ └╓┤┘:</p>
  253.  
  254.     <ul>
  255.       <li>╜╟┴ª ╝¡╣÷ ╟┴╖╬╝╝╜║░í ──╞─└╧╜├ <code>configure</code>
  256.       ┐╔╝╟┤δ╜┼ <code>httpd.conf</code>└╟ <a
  257.       href="mod/mod_so.html#loadmodule"><code>LoadModule</code></a>╖╬
  258.       ╜╟╟α┴▀┐í ░ß╟╒╡╟╣╟╖╬ ╝¡╣÷ ╞╨┼░┴÷░í ╜╟╟α╜├ ┤⌡ └»┐¼╟╧┤┘. ┐╣╕ª ╡Θ╛ε 
  259.       ╟╤╣°└╟ ╛╞╞──í ╝│─í╕╕└╕╖╬ ┤┘╕Ñ ╝¡╣÷(╟Ñ┴╪ ╣÷└ⁿ░· SSL ╣÷└ⁿ, ├╓╝╥╚¡ ╣÷└ⁿ░·
  260.       ▒Γ┤╔├▀░í ╣÷└ⁿ [mod_perl, PHP3] <em>╡ε</em>)╕ª ╜╟╟α╟╥ ╝÷ └╓┤┘.</li>
  261.  
  262.       <li>╝¡╣÷┤┬ ╝│─í╚─┐í╡╡ ┴ª╗∩└╟ ╕≡╡Γ╖╬ ╜▒░╘ ╚«└σ└╠ ░í┤╔╟╧┤┘.
  263.       ├╓╝╥╟╤ ▒Γ╛≈└╟ ╞╨┼░┴÷ ┴ª└█└┌┤┬ ╛╞╞──í ╟┘╜╔ ╞╨┼░┴÷┐═ ║░╡╡╖╬ PHP3, mod_perl,
  264.       mod_fastcgi ╡ε└╗ ├▀░í ╞╨┼░┴÷╖╬ ╕╕╡Θ ╝÷ └╓╛ε╝¡ ┼½ └╠╡µ└╠ ╡╚┤┘.</li>
  265.  
  266.       <li>DSO┐═ <code>apxs</code>╕ª ░í┴÷░φ ╛╞╞──í ╝╥╜║ ╞«╕«
  267.       ╣█┐í╝¡ └█╛≈╟╧░φ <code>apxs -i</code>┐═
  268.       <code>apachectl restart</code> ╕φ╖╔╛ε╕╕└╕╖╬ ╟÷└τ ░│╣▀╟╤
  269.       ╕≡╡Γ└╟ ╗⌡ ╣÷└ⁿ└╗ ╜╟╟α┴▀└╬ ╛╞╞──í ╝¡╣÷┐í ╣▌┐╡╟╥ ╝÷ └╓╛ε╝¡ ┤⌡ ╜▒░╘
  270.       ╛╞╞──í ╕≡╡Γ└╗ ░│╣▀╟╥ ╝÷ └╓┤┘.</li>
  271.     </ul>
  272.  
  273.     <p>DSO┤┬ ┤┘└╜░· ░░└║ ┤▄┴í└╠ └╓┤┘:</p>
  274.  
  275.     <ul>
  276.       <li>╟┴╖╬▒╫╖Ñ└╟ ┴╓╝╥░°░ú┐í ─┌╡σ╕ª ╡┐└√└╕╖╬ └╨╛ε╡Θ└╠┤┬ ▒Γ┤╔└╗
  277.       ┴÷┐°╟╧┴÷╛╩┤┬ ┐ε┐╡├╝┴ª░í └╓▒Γ ╢º╣«┐í ╕≡╡τ ╟├╖í╞√┐í╝¡ DSO╕ª
  278.       ╗τ┐δ╟╥ ╝÷ ╛°┤┘.</li>
  279.  
  280.       <li>╝¡╣÷┤┬ ╜├└█╜├ ╛α 20% ┴ñ╡╡ ┤╩┤┘.
  281.       because of the symbol resolving overhead the Unix loader now
  282.       has to do.</li>
  283.  
  284.       <li>╝¡╣÷┤┬ └º─í╡╢╕│─┌╡σ(position independent code, PIC)╢º╣«┐í
  285.       └²┤δ┴╓╝╥┴÷┴ñ(absolute addressing)╕╕┼¡ ║ⁿ╕ú┴÷ ╛╩┤┬ ╗≤┤δ┴╓╝╥┴÷┴ñ(relative
  286.       addressing)└╟ ║╣└Γ╟╤ ╛ε╝└║φ╖» ▒Γ╣²└╠ ╟╩┐Σ╟╧╣╟╖╬ ╛ε╢▓ ╟├╖í╞√┐í╝¡
  287.       ╜╟╟α╜├ ╛α 5% ┴ñ╡╡ ┤╩┤┘.</li>
  288.  
  289.       <li>DSO ╕≡╡Γ└╠ ┤┘╕Ñ DSO▒Γ╣▌ ╢≤└╠║Ω╖»╕«(<code>ld -lfoo</code>)┐í
  290.       ╕╡┼⌐╟╥ ╝÷ ╛°┤┬ ╟├╖í╞√└╠ └╓▒Γ╢º╣«┐í (┐╣╕ª ╡Θ╛ε ELF▒Γ╣▌ ╟├╖í╞√└║
  291.       ┴÷┐°╟╧┴÷╕╕ a.out▒Γ╣▌ ╟├╖í╞√└║ ║╕┼δ └╠ ▒Γ┤╔└╗ ┴÷┐°╟╧┴÷ ╛╩┤┬┤┘)
  292.       ╕≡╡τ ┴╛╖∙└╟ ╕≡╡Γ┐í DSO╕ª ╗τ┐δ╟╥ ╝÷ ╛°┤┘. ┤┘╕Ñ ╕╗╖╬
  293.       DSO ╞─└╧╖╬ ──╞─└╧╡╟┤┬ ╕≡╡Γ└║ ╛╞╞──í ╟┘╜╔░· ╛╞╞──í ╟┘╜╔└╠
  294.       ╗τ┐δ╟╧┤┬ C ╢≤└╠║Ω╖»╕«(<code>libc</code>)┐═ ┤┘╕Ñ ╡┐└√/┴ñ└√
  295.       ╢≤└╠║Ω╖»╕«, └º─í╡╢╕│─┌╡σ╕ª ┤π░φ └╓┤┬ ┴ñ└√ ╢≤└╠║Ω╖»╕«
  296.       ╛╞─½└╠║Ω(<code>libfoo.a</code>)└╟ ╜╔║╝╕╕└╗ ╗τ┐δ╟╥ ╝÷ └╓┤┘.
  297.       ┤┘╕Ñ ─┌╡σ╕ª ╗τ┐δ╟╧┤┬ ╣µ╣²└║ ╛╞╞──í ╟┘╜╔└╠ ▒╫░═└╗ ┬ⁿ┴╢╟╧┤°┴÷,
  298.       <code>dlopen()</code>└╕╖╬ ┴≈┴ó ─┌╡σ╕ª └╨╛ε╡Θ└╠┤┬ ░═└╠┤┘.</li>
  299.     </ul>
  300.         <hr />
  301.  
  302.     <h3 align="center">Apache HTTP Server Version 2.0</h3>
  303.     <a href="./"><img src="images/index.gif" alt="Index" /></a>
  304.  
  305.  
  306.  
  307.   </body>
  308. </html>
  309.  
  310.