]> granicus.if.org Git - apache/blob - docs/manual/dso.html.ko.euc-kr
Update XForms.
[apache] / docs / manual / dso.html.ko.euc-kr
1 <?xml version="1.0" encoding="EUC-KR"?>
2 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
3 <html xmlns="http://www.w3.org/1999/xhtml" lang="ko" xml:lang="ko"><head>
4 <meta content="text/html; charset=EUC-KR" http-equiv="Content-Type" />
5 <!--
6         XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
7               This file is generated from xml source: DO NOT EDIT
8         XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
9       -->
10 <title>µ¿Àû°øÀ¯°´Ã¼ (DSO) Áö¿ø - Apache HTTP Server Version 2.5</title>
11 <link href="./style/css/manual.css" rel="stylesheet" media="all" type="text/css" title="Main stylesheet" />
12 <link href="./style/css/manual-loose-100pc.css" rel="alternate stylesheet" media="all" type="text/css" title="No Sidebar - Default font size" />
13 <link href="./style/css/manual-print.css" rel="stylesheet" media="print" type="text/css" /><link rel="stylesheet" type="text/css" href="./style/css/prettify.css" />
14 <script src="./style/scripts/prettify.min.js" type="text/javascript">
15 </script>
16
17 <link href="./images/favicon.ico" rel="shortcut icon" /></head>
18 <body id="manual-page"><div id="page-header">
19 <p class="menu"><a href="./mod/">¸ðµâ</a> | <a href="./mod/quickreference.html">Áö½Ã¾îµé</a> | <a href="http://wiki.apache.org/httpd/FAQ">FAQ</a> | <a href="./glossary.html">¿ë¾î</a> | <a href="./sitemap.html">»çÀÌÆ®¸Ê</a></p>
20 <p class="apache">Apache HTTP Server Version 2.5</p>
21 <img alt="" src="./images/feather.gif" /></div>
22 <div class="up"><a href="./"><img title="&lt;-" alt="&lt;-" src="./images/left.gif" /></a></div>
23 <div id="path">
24 <a href="http://www.apache.org/">Apache</a> &gt; <a href="http://httpd.apache.org/">HTTP Server</a> &gt; <a href="http://httpd.apache.org/docs/">Documentation</a> &gt; <a href="./">Version 2.5</a></div><div id="page-content"><div id="preamble"><h1>µ¿Àû°øÀ¯°´Ã¼ (DSO) Áö¿ø</h1>
25 <div class="toplang">
26 <p><span>°¡´ÉÇÑ ¾ð¾î: </span><a href="./en/dso.html" hreflang="en" rel="alternate" title="English">&nbsp;en&nbsp;</a> |
27 <a href="./fr/dso.html" hreflang="fr" rel="alternate" title="Fran&#231;ais">&nbsp;fr&nbsp;</a> |
28 <a href="./ja/dso.html" hreflang="ja" rel="alternate" title="Japanese">&nbsp;ja&nbsp;</a> |
29 <a href="./ko/dso.html" title="Korean">&nbsp;ko&nbsp;</a> |
30 <a href="./tr/dso.html" hreflang="tr" rel="alternate" title="T&#252;rk&#231;e">&nbsp;tr&nbsp;</a></p>
31 </div>
32 <div class="outofdate">ÀÌ ¹®¼­´Â ÃÖ½ÅÆÇ ¹ø¿ªÀÌ ¾Æ´Õ´Ï´Ù.
33             ÃÖ±Ù¿¡ º¯°æµÈ ³»¿ëÀº ¿µ¾î ¹®¼­¸¦ Âü°íÇϼ¼¿ä.</div>
34
35     <p>¾ÆÆÄÄ¡ À¥¼­¹ö´Â °ü¸®ÀÚ°¡ ¸ðµâµéÀ» ¼±ÅÃÇÏ¿© ¼­¹ö¿¡ Æ÷ÇÔÇÒ
36     ±â´ÉÀ» °áÁ¤ÇÒ ¼ö Àִ ¸ðµâÈ­µÈ ÇÁ·Î±×·¥ÀÌ´Ù. ¼­¹ö¸¦ ÄÄÆÄÇÒ¶§
37     <code>httpd</code> ½ÇÇàÆÄÀÏ¿¡ Á¤ÀûÀ¸·Î ¸ðµâÀ» ÄÄÆÄÀÏÇÒ
38     ¼ö ÀÖ´Ù. ¾Æ´Ï¸é ¸ðµâÀ» <code>httpd</code> ½ÇÇàÆÄÀÏ°ú
39     ºÐ¸®ÇÏ¿© µ¿Àû°øÀ¯°´Ã¼(Dynamic Shared Objects, DSO)·Î ÄÄÆÄÀÏÇÒ
40     ¼ö ÀÖ´Ù. DSO ¸ðµâÀº ¼­¹ö¸¦ ÄÄÆÄÀÏÇÒ¶§ ÄÄÆÄÀÏÇϰųª, Apache
41     Extension Tool (<a href="programs/apxs.html">apxs</a>)À»
42     »ç¿ëÇÏ¿© ³ªÁß¿¡ ÄÄÆÄÀÏÇÏ¿© Ãß°¡ÇÒ ¼ö ÀÖ´Ù.</p>
43
44     <p>ÀÌ ¹®¼­´Â DSO ¸ðµâ »ç¿ë¹ý°ú ¹è°æ ÀÌ·ÐÀ» ¼³¸íÇÑ´Ù.</p>
45   </div>
46 <div id="quickview"><ul id="toc"><li><img alt="" src="./images/down.gif" /> <a href="#implementation">±¸Çö</a></li>
47 <li><img alt="" src="./images/down.gif" /> <a href="#usage">»ç¿ë¹ý ¿ä¾à</a></li>
48 <li><img alt="" src="./images/down.gif" /> <a href="#background">¹è°æÁö½Ä</a></li>
49 <li><img alt="" src="./images/down.gif" /> <a href="#advantages">Àå´ÜÁ¡</a></li>
50 </ul><ul class="seealso"><li><a href="#comments_section">Comments</a></li></ul></div>
51 <div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
52 <div class="section">
53 <h2><a name="implementation" id="implementation">±¸Çö</a></h2>
54
55 <table class="related"><tr><th>°ü·ÃµÈ ¸ðµâ</th><th>°ü·ÃµÈ Áö½Ã¾î</th></tr><tr><td><ul><li><code class="module"><a href="./mod/mod_so.html">mod_so</a></code></li></ul></td><td><ul><li><code class="directive"><a href="./mod/mod_so.html#loadmodule">LoadModule</a></code></li></ul></td></tr></table>
56
57     <p>¾ÆÆÄÄ¡ Çٽɿ¡ Á¤ÀûÀ¸·Î ÄÄÆÄÀÏÇؾßÇÒ
58     <code class="module"><a href="./mod/mod_so.c.html">mod_so.c</a></code>¶ó´Â ¸ðµâÀº ¾ÆÆÄÄ¡ ¸ðµâÀ»
59     ÀоîµéÀ̱âÀ§ÇÑ DSO¸¦ Áö¿øÇÑ´Ù.
60     ÀÌ ¸ðµâÀº <code class="module"><a href="./mod/core.html">core</a></code>¸¦ Á¦¿ÜÇÏ°í DSO°¡
61     µÉ ¼ö ¾ø´Â À¯ÀÏÇÑ ¸ðµâÀÌ´Ù. ½ÇÁ¦·Î ´Ù¸¥ ¸ðµç ¾ÆÆÄÄ¡ ¸ðµâÀº
62     <a href="install.html">¼³Ä¡ ¹®¼­</a>¿¡¼­ ¼³¸íÇÑ
63     <code>configure</code>ÀÇ <code>--enable-<em>module</em>=shared</code>
64     ¿É¼ÇÀ» »ç¿ëÇÏ¿© DSO·Î ÄÄÆÄÀÏÇÒ ¼ö ÀÖ´Ù. ¸ðµâÀ»
65     <code>mod_foo.so</code>¿Í °°ÀÌ DSO·Î ÄÄÆÄÀÏÇÑÈÄ <code>httpd.conf</code>
66     ÆÄÀÏ¿¡ <code class="module"><a href="./mod/mod_so.html">mod_so</a></code>ÀÇ
67     <code class="directive"><a href="./mod/mod_so.html#loadmodule">LoadModule</a></code> ¸í·É¾î¸¦
68     »ç¿ëÇÏ¿© ¼­¹ö ½ÃÀ۽àȤÀº Àç½ÃÀ۽à±× ¸ðµâÀ» ÀоîµéÀÏ ¼ö
69     ÀÖ´Ù.</p>
70
71     <p>¾ÆÆÄÄ¡ ¸ðµâ(ƯÈ÷ Á¦»ïÀÚ°¡ ¸¸µç ¸ðµâ)·Î »ç¿ëÇÒ DSO ÆÄÀÏÀ» ½±°Ô
72     ¸¸µé±âÀ§ÇØ <a href="programs/apxs.html">apxs</a> (<em>APache
73     eXtenSion</em>)¶ó´Â »õ·Î¿î Áö¿ø ÇÁ·Î±×·¥ÀÌ ÀÖ´Ù. ÀÌ ÇÁ·Î±×·¥Àº
74     ¾ÆÆÄÄ¡ ¼Ò½º Æ®¸® <em>¹Û¿¡¼­</em> DSO·Î »ç¿ëÇÒ ¸ðµâÀ»
75     ÄÄÆÄÀÏÇÒ¶§ »ç¿ëÇÑ´Ù. °³³äÀº ½±´Ù. ¾ÆÆÄÄ¡¸¦ ¼³Ä¡ÇÒ¶§
76     <code>configure</code>¿Í <code>make install</code>ÀÌ
77     ¾ÆÆÄÄ¡ C Çì´õÆÄÀÏÀ» ¼³Ä¡ÇÏ°í, DSO ÆÄÀÏÀ» ÄÄÆÄÀÏÇϱâÀ§ÇÑ
78     Ç÷¡Æû Æ¯À¯ÀÇ ÄÄÆÄÀÏ·¯ ¿É¼Ç°ú ¸µÄ¿ ¿É¼ÇÀ» <code>apxs</code>
79     ÇÁ·Î±×·¥¿¡ ±â·ÏÇÑ´Ù. ±×·¡¼­ <code>apxs</code>¸¦ »ç¿ëÇϴ »ç¿ëÀÚ´Â
80     ¾ÆÆÄÄ¡ ¹èÆ÷º» ¼Ò½º Æ®¸®¾øÀÌ, ¶Ç DSO Áö¿øÀ» À§ÇÑ Ç÷¡Æû Æ¯À¯ÀÇ
81     ÄÄÆÄÀÏ·¯ ¿É¼Ç¿Í ¸µÄ¿ ¿É¼Ç¿¡ ½Å°æÀ» ¾²Áö¾Ê°í ÀÚ½ÅÀÇ ¾ÆÆÄÄ¡
82     ¸ðµâ ¼Ò½º¸¦ ÄÄÆÄÀÏÇÒ ¼ö ÀÖ´Ù.</p>
83 </div><div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
84 <div class="section">
85 <h2><a name="usage" id="usage">»ç¿ë¹ý ¿ä¾à</a></h2>
86
87     <p>Apache 2.2ÀÇ DSO ±â´É¿¡ ´ëÇѠª°í °£·«ÇÑ ¿ä¾àÀÌ´Ù:</p>
88
89     <ol>
90       <li>
91         <em>¹èÆ÷º»¿¡ ÀÖ´Â</em> ¾ÆÆÄÄ¡ ¸ðµâÀ» ÄÄÆÄÀÏÇÏ°í ¼³Ä¡ÇÏ´Â
92         °æ¿ì. ¿¹¸¦ µé¾î <code>mod_foo.c</code>¸¦ DSO
93         <code>mod_foo.so</code>·Î:
94
95 <div class="example"><p><code>
96 $ ./configure --prefix=/path/to/install --enable-foo=shared<br />
97 $ make install
98 </code></p></div>
99       </li>
100
101       <li>
102         <em>Á¦»ïÀÚ°¡ ¸¸µç</em> ¾ÆÆÄÄ¡ ¸ðµâÀ» ÄÄÆÄÀÏÇÏ°í ¼³Ä¡ÇÏ´Â
103         °æ¿ì. ¿¹¸¦ µé¾î <code>mod_foo.c</code>¸¦ DSO
104         <code>mod_foo.so</code>·Î:
105
106 <div class="example"><p><code>
107 $ ./configure --add-module=module_type:/path/to/3rdparty/mod_foo.c --enable-foo=shared<br />
108 $ make install
109 </code></p></div>
110       </li>
111
112       <li>
113         °øÀ¯ ¸ðµâÀ» <em>³ªÁß¿¡ »ç¿ëÇϱâÀ§ÇØ</em> ¾ÆÆÄÄ¡¸¦ ±¸¼ºÇÏ´Â
114         °æ¿ì:
115
116 <div class="example"><p><code>
117 $ ./configure --enable-so<br />
118 $ make install
119 </code></p></div>
120       </li>
121
122       <li>
123         <em>Á¦»ïÀÚ°¡ ¸¸µç</em> ¾ÆÆÄÄ¡ ¸ðµâÀ» ÄÄÆÄÀÏÇÏ°í ¼³Ä¡ÇÏ´Â
124         °æ¿ì. <a href="programs/apxs.html">apxs</a>¸¦ »ç¿ëÇÏ¿©
125         ¾ÆÆÄÄ¡ ¼Ò½º Æ®¸® <em>¹Û¿¡¼­</em> <code>mod_foo.c</code>¸¦
126         DSO <code>mod_foo.so</code>·Î:
127
128 <div class="example"><p><code>
129 $ cd /path/to/3rdparty<br />
130 $ apxs -c mod_foo.c<br />
131 $ apxs -i -a -n foo mod_foo.la
132 </code></p></div>
133       </li>
134     </ol>
135
136     <p>¸ðµç °æ¿ì ÀÏ´Ü °øÀ¯ ¸ðµâÀÌ ÄÄÆÄÀϵǸé, <code>httpd.conf</code>¿¡
137     <code class="directive"><a href="./mod/mod_so.html#loadmodule">LoadModule</a></code> Áö½Ã¾î¸¦
138     »ç¿ëÇÏ¿© ¾ÆÆÄÄ¡°¡ ±× ¸ðµâÀ» ÀоîµéÀÌ°Ô ¸¸µç´Ù.</p>
139 </div><div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
140 <div class="section">
141 <h2><a name="background" id="background">¹è°æÁö½Ä</a></h2>
142
143     <p>Çö´ëÀûÀΠÀ¯´Ð½º·ù¿¡´Â <em>µ¿Àû°øÀ¯°´Ã¼</em> (DSO)ÀÇ
144     µ¿Àû ¸µÅ·/·Îµù(dynamic linking/loading)À̶ó°í ÇÏ¿©, Æ¯º°ÇÑ
145     Çü½ÄÀÇ ½ÇÇàÄÚµå Á¶°¢À» ¸¸µé¾î ½ÇÇàÁßÀΠ½ÇÇàÇÁ·Î±×·¥ÀÇ
146     ÁÖ¼Ò°ø°£¿¡ ÀоîµéÀ̴ ¸ÚÁø ±â´ÉÀÌ ÀÖ´Ù.</p>
147
148     <p>º¸Å렵ΰ¡Áö ¹æ¹ýÀ¸·Î ÀоîµéÀÏ ¼ö ÀÖ´Ù. Çϳª´Â ½ÇÇàÇÁ·Î±×·¥ÀÌ
149     ½ÃÀÛÇÒ¶§ <code>ld.so</code>¶ó´Â ½Ã½ºÅÛ ÇÁ·Î±×·¥ÀÌ ÀÚµ¿À¸·Î
150     ÀоîµéÀ̴ °æ¿ì°í, ´Ù¸¥ Çϳª´Â ½ÇÇàÁßÀΠÇÁ·Î±×·¥ÀÌ
151     <code>dlopen()/dlsym()</code> ½Ã½ºÅÛÈ£Ãâ·Î À¯´Ð½º ·Î´õ(loader)ÀÇ
152     ½Ã½ºÅÛ ÀÎÅÍÆäÀ̽ºÀ» »ç¿ëÇÏ¿© Á÷Á¢ ÀоîµéÀ̴ °æ¿ì´Ù.</p>
153
154     <p>ù¹ø° °æ¿ì DSO¸¦ º¸Åë <em>°øÀ¯¶óÀ̺귯¸®(shared libraries)</em>
155     È¤Àº <em>DSO ¶óÀ̺귯¸®</em>¶ó°í ºÎ¸£¸ç, ÆÄÀÏÀº
156     <code>libfoo.so</code>³ª <code>libfoo.so.1.2</code> °°Àº
157     À̸§À» °¡Áø´Ù. À̵éÀº ½Ã½ºÅÛ µð·ºÅ丮(º¸Åë <code>/usr/lib</code>)¿¡
158     ÀÖ°í, ÄÄÆÄÀϽีĿ ¸í·É¾î¿¡ <code>-lfoo</code>¸¦ ÁÖ¾î
159     ½ÇÇàÆÄÀÏ°ú ¿¬°áÇÑ´Ù. ÀÌ·¸°Ô Á÷Á¢ ½áÁØ ¶óÀ̺귯¸®´Â ½ÇÇàÆÄÀÏ¿¡
160     ÂüÁ¶µÇ¿©¼­, ÇÁ·Î±×·¥ÀÌ ½ÃÀÛÇÒ¶§ ¸µÄ¿ ¿É¼Ç <code>-R</code>·Î
161     Á÷Á¢ ÁöÁ¤ÇÑ °æ·Î, È¯°æº¯¼ö <code>LD_LIBRARY_PATH</code>·Î
162     ÁöÁ¤ÇÑ °æ·Î È¤Àº <code>/usr/lib</code>¿¡¼­ À¯´Ð½º ·Î´õ°¡
163     <code>libfoo.so</code>¸¦ Ã£À» ¼ö ÀÖ´Ù. ±×·¯¸é ½ÇÇàÇÁ·Î±×·¥ÀÇ
164     (¾ÆÁ÷ ¸øãÀº(unresolved)) ½Éº¼(symbol)À» DSO¿¡¼­ Ã£°ÔµÈ´Ù.</p>
165
166     <p>DSO´Â º¸Åë ½ÇÇàÇÁ·Î±×·¥ÀÇ ½Éº¼À» Ã£Áö¾Ê±â ¶§¹®¿¡ (DSO°¡
167     Àç»ç¿ë°¡´ÉÇÑ ÀϹÝÀûÀΠÄڵ堶óÀ̺귯¸®À̹ǷÎ) Ã£±â´Â ¿©±â¼­
168     ³¡³­´Ù. À¯´Ð½º ·Î´õ°¡ ½Éº¼ Ã£±â¸¦ ¿ÏÀüÈ÷ ´ã´çÇϹǷΠ½ÇÇàÇÁ·Î±×·¥ÀÌ
169     Á÷Á¢ DSO¿¡¼­ ½Éº¼À» Ã£À» ÇÊ¿ä°¡ ¾ø´Ù. (»ç½Ç <code>ld.so</code>¸¦
170     ºÎ¸£´Â ÄÚµå´Â Á¤ÀûÀÌ ¾Æ´Ñ ¸ðµç ½ÇÇàÇÁ·Î±×·¥¿¡ ¸µÅ©µÇ´Â ½ÇÇà½Ã
171     ½ÃÀÛÄÚµåÀÇ ÀϺδÙ.) °øÅëµÈ ¶óÀ̺귯¸® Äڵ带 µ¿ÀûÀ¸·Î ÀоîµéÀÌ´Â
172     ÀåÁ¡Àº ¸íÈ®ÇÏ´Ù. ¶óÀ̺귯¸® Äڵ尡 ¸ðµç ÇÁ·Î±×·¥¿¡ Áߺ¹Çؼ­
173     ÀúÀåµÇ´Â ´ë½Å <code>libc.so</code>¿Í °°Àº ½Ã½ºÅÛ ¶óÀ̺귯¸®¿¡
174     Çѹø¸¸ ÀúÀåµÇ±â ¶§¹®¿¡ µð½ºÅ© °ø°£ÀÌ Àý¾àµÈ´Ù.</p>
175
176     <p>µÎ¹ø° °æ¿ì DSO¸¦ º¸Åë <em>°øÀ¯°´Ã¼(shared objects)</em>
177     È¤Àº <em>DSO ÆÄÀÏ</em>À̶ó°í ºÎ¸£°í, (±ÔÄ¢»ó À̸§Àº
178     <code>foo.so</code>ÀÌÁö¸¸) ÆÄÀÏÀÇ È®ÀåÀڴ ÀÚÀ¯·Ó´Ù. ÀÌ
179     ÆÄÀϵéÀº º¸Åë ÇÁ·Î±×·¥ ÀÚü µð·ºÅ丮¿¡ À§Ä¡ÇÏ°í ½ÇÇàÇÁ·Î±×·¥¿¡
180     ÀÚµ¿À¸·Î ¿¬°áµÇÁö ¾Ê´Â´Ù. ´ë½Å ½ÇÇàÇÁ·Î±×·¥Àº ½ÇÇà½Ã
181     <code>dlopen()</code>À» »ç¿ëÇÏ¿© DSO¸¦ ÁÖ¼Ò°ø°£¿¡
182     Á÷Á¢ Àоîµé¿©¾ß ÇÑ´Ù. À̶§ ½ÇÇàÇÁ·Î±×·¥Àº DSO¿¡¼­ ½Éº¼À»
183     Ã£Áö ¾Ê´Â´Ù. ´ë½Å ¾Õ¿¡¼­ º» À¯´Ð½º ·Î´õ´Â ÀÚµ¿À¸·Î ½ÇÇàÆÄÀÏ°ú
184     ½ÇÇàÆÄÀÏÀÌ À̹̠ÀоîµéÀΠDSO ¶óÀ̺귯¸®(ƯÈ÷ Ç×»ó Á¸ÀçÇÏ´Â
185     <code>libc.so</code>ÀÇ ¸ðµç ½Éº¼)¿¡¼­ DSOÀÇ (¾ÆÁ÷ ¸øãÀº)
186     ½Éº¼À» Ã£´Â´Ù. ±×·¡¼­ DSO´Â ¸¶Ä¡ Ã³À½ºÎÅÍ ½ÇÇàÇÁ·Î±×·¥¿¡
187     Á¤ÀûÀ¸·Î ¸µÅ©µÈ°Í°ú °°ÀÌ ½ÇÇàÆÄÀÏÀÇ ½Éº¼À» ¾Ë°ÔµÈ´Ù.</p>
188
189     <p>DSOÀÇ API¸¦ ÀÌ¿ëÇϱâÀ§Çؼ­ ¸¶Áö¸·À¸·Î ½ÇÇàÇÁ·Î±×·¥Àº
190     <code>dlsym()</code>À¸·Î DSO¿¡¼­ Æ¯Á¤ ½Éº¼À» Ã£¾Æ¼­, ¾ÕÀ¸·Î
191     »ç¿ëÇϱâÀ§ÇØ µð½ºÆÐÄ¡(dispatch) Ç¥ <em>µî</em>¿¡ ÀúÀåÇÑ´Ù.
192     ´Ù¸¥ ¸»·Î ½ÇÇàÇÁ·Î±×·¥Àº »ç¿ëÇÒ ¸ðµç ½Çº¼À» Á÷Á¢ Ã£¾Æ¾ßÇÑ´Ù.
193     ÀÌ·± ±¸Á¶ÀÇ ÀåÁ¡Àº ÇÁ·Î±×·¥ÀÇ ÀϺθ¦ ÇÁ·Î±×·¥ÀÌ
194     ÇÊ¿äÇÒ¶§±îÁö ÀоîµéÀÌÁö ¾Ê¾Æµµ (±×·¡¼­ ¸Þ¸ð¸®¸¦ ³¶ºñÇÏÁö
195     ¾Ê°Ô) µÈ´Ù´Â Á¡ÀÌ´Ù. ±âº» ÇÁ·Î±×·¥ÀÇ ±â´ÉÀ» È®ÀåÇϱâÀ§ÇØ
196     ÇÊ¿äÇÑ °æ¿ì ÀÌ ºÎºÐÀ» µ¿ÀûÀ¸·Î ÀоîµéÀÏ ¼ö ÀÖ´Ù.</p>
197
198     <p>ÀÌ·± DSO ±¸Á¶°¡ ÀÚ¿¬½º·´°Ô º¸ÀÌÁö¸¸, ÃÖ¼ÒÇÑ ¾î·Á¿î Á¡ÀÌ
199     ÇÑ°¡ÁöÀÖ´Ù. ÇÁ·Î±×·¥À» È®ÀåÇϱâÀ§ÇØ DSO¸¦ »ç¿ëÇÒ¶§ DSO°¡
200     ½ÇÇàÇÁ·Î±×·¥ÀÇ ½Éº¼À» Ã£´Â ÀÏÀÌ´Ù. ¿Ö? DSO°¡ ½ÇÇàÇÁ·Î±×·¥ÀÇ
201     ½Éº¼À» "¿ªÀ¸·Î Ã£´Â °Í"Àº (¶óÀ̺귯¸®´Â ÀÚ½ÅÀ» »ç¿ëÇϴ ÇÁ·Î±×·¥¿¡
202     ´ëÇØ ¸ð¸¥´Ù´Â) ¶óÀ̺귯¸® ¼³°è¿¡ ¹ÝÇϸç, ¸ðµç Ç÷¡Æû¿¡¼­
203     Áö¿øµÇÁö¾Ê°í Ç¥ÁØÈ­µÇÁöµµ ¾Ê¾Ò±â ¶§¹®ÀÌ´Ù. ½ÇÁ¦·Î ½ÇÇàÆÄÀÏÀÇ
204     Àü¿ª½Éº¼(global symbol)Àº º¸Åë ÀͽºÆ÷Æ®(export)µÇÁö ¾Ê±â¶§¹®¿¡
205     DSO°¡ »ç¿ëÇÒ ¼ö ¾ø´Ù. DSO¸¦ »ç¿ëÇÏ¿© ½ÇÇàÁß ÇÁ·Î±×·¥À» È®ÀåÇÏ·Á¸é
206     ¸µÄ¿¿¡°Ô ¸ðµç Àü¿ª½Éº¼À» ÀͽºÆ÷Æ®Çϵµ·Ï °­Á¦Çϴ °ÍÀÌ ÁÖµÈ
207     ÇØ°áÃ¥ÀÌ´Ù.</p>
208
209     <p>°øÀ¯¶óÀ̺귯¸®´Â DSO ¹æ½ÄÀÇ ¼³°è¿øÄ¢´ë·Î ÀüÇüÀûÀ̱⶧¹®¿¡
210     ¿î¿µÃ¼Á¦°¡ Á¦°øÇϴ °ÅÀÇ ¸ðµç Á¾·ùÀÇ ¶óÀ̺귯¸®°¡ »ç¿ëÇÑ´Ù.
211     ¹Ý´ë·Î ¸¹Àº ÇÁ·Î±×·¥Àº ÇÁ·Î±×·¥À» È®ÀåÇϱâÀ§ÇØ °øÀ¯°´Ã¼¸¦
212     »ç¿ëÇÏÁö ¾Ê´Â´Ù.</p>
213
214     <p>1998³â ½ÇÇàÁß ½ÇÁ¦·Î ±â´ÉÀ» È®ÀåÇϱâÀ§ÇØ DSO ±¸Á¶¸¦ »ç¿ëÇÑ
215     ¼ÒÇÁÆ®¿þ¾î ÆÐÅ°Áö´Â (XS ±¸Á¶¿Í DynaLoader ¸ðµâÀ» »ç¿ëÇÑ)
216     Perl 5, Netscape Server <em>µî</em>À¸·Î µå¹°¾ú´Ù. ¾ÆÆÄÄ¡´Â
217     À̹̠±â´ÉÀ» È®ÀåÇϱâÀ§ÇØ ¸ðµâ °³³äÀ» »ç¿ëÇß°í ¿ÜºÎ ¸ðµâÀ»
218     ¾ÆÆÄÄ¡ Çٽɱâ´É¿¡ ¿¬°áÇϱâÀ§ÇØ ³»ºÎÀûÀ¸·Î µð½ºÆÐÄ¡¸ñ·ÏÀ»
219     ÀÌ¿ëÇÑ Á¢±Ù¹æ¹ýÀ» »ç¿ëÇ߱⶧¹®¿¡ 1.3 ¹öÀüºÎÅÍ ÀÌ ´ë¿­¿¡ ÇÕ·ùÇß´Ù.
220     ±×·¡¼­ ¾ÆÆÄÄ¡´Â ½ÇÇàÁß ¸ðµâÀ» ÀоîµéÀ̴µ¥ DSO¸¦ »ç¿ëÇϵµ·Ï
221     ¿î¸íÁö¿öÁ³´Ù.</p>
222 </div><div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
223 <div class="section">
224 <h2><a name="advantages" id="advantages">Àå´ÜÁ¡</a></h2>
225
226     <p>¾Õ¿¡¼­ ¸»ÇÑ DSO¸¦ »ç¿ëÇϸ頴ÙÀ½°ú °°Àº ÀåÁ¡ÀÌ ÀÖ´Ù:</p>
227
228     <ul>
229       <li>½ÇÁ¦ ¼­¹ö ÇÁ·Î¼¼½º°¡ ÄÄÆÄÀϽà<code>configure</code>
230       ¿É¼Ç´ë½Å <code>httpd.conf</code>ÀÇ <code class="directive"><a href="./mod/mod_so.html#loadmodule">LoadModule</a></code>À» »ç¿ëÇÏ¿© ½ÇÇàÁß¿¡
231       °áÇյǹǷΠ¼­¹ö ÆÐÅ°Áö ½ÇÇàÀÌ ´õ À¯¿¬ÇÏ´Ù. ¿¹¸¦ µé¾î ÇѹøÀÇ
232       ¾ÆÆÄÄ¡ ¼³Ä¡¸¸À¸·Î ´Ù¸¥ ¼­¹ö(Ç¥ÁØ ¹öÀü°ú SSL ¹öÀü, ÃÖ¼ÒÈ­
233       ¹öÀü°ú ±â´ÉÃß°¡ ¹öÀü [mod_perl, PHP3] <em>µî</em>)¸¦ ½ÇÇàÇÒ
234       ¼ö ÀÖ´Ù.</li>
235
236       <li>¼­¹ö´Â ¼³Ä¡ÈÄ¿¡µµ Á¦»ïÀÚ°¡ ¸¸µç ¸ðµâÀ» »ç¿ëÇÏ¿© ½±°Ô
237       È®ÀåÇÒ ¼ö ÀÖ´Ù. ÃÖ¼ÒÇÑ ±â¾÷ÀÇ ÆÐÅ°Áö Á¦ÀÛÀڴ ¾ÆÆÄÄ¡ ÇÙ½É
238       ÆÐÅ°Áö¿Í º°µµ·Î PHP3, mod_perl, mod_fastcgi <em>µî</em>À»
239       Ãß°¡ ÆÐÅ°Áö·Î ¸¸µé ¼ö À־ Å« À̵æÀÌ´Ù.</li>
240
241       <li>DSO¿Í <code>apxs</code>¸¦ °¡Áö°í ¾ÆÆÄÄ¡ ¼Ò½º Æ®¸® ¹Û¿¡¼­
242       ÀÛ¾÷ÇÏ°í <code>apxs -i</code>¿Í <code>apachectl restart</code>
243       ¸í·É¾î¸¸À¸·Î ÇöÀç °³¹ßÇÑ ¸ðµâÀÇ »õ ¹öÀüÀ» ½ÇÇàÁßÀΠ¾ÆÆÄÄ¡
244       ¼­¹ö¿¡ ¹Ý¿µÇÒ ¼ö À־ ´õ ½±°Ô ¾ÆÆÄÄ¡ ¸ðµâÀ» °³¹ßÇÒ ¼ö
245       ÀÖ´Ù.</li>
246     </ul>
247
248     <p>DSO´Â ´ÙÀ½°ú °°Àº ´ÜÁ¡ÀÌ ÀÖ´Ù:</p>
249
250     <ul>
251       <li>ÇÁ·Î±×·¥ÀÇ ÁÖ¼Ò°ø°£¿¡ Äڵ带 µ¿ÀûÀ¸·Î ÀоîµéÀ̴ ±â´ÉÀ»
252       Áö¿øÇÏÁö¾Ê´Â ¿î¿µÃ¼Á¦°¡ Àֱ⠶§¹®¿¡ ¸ðµç Ç÷¡Æû¿¡¼­ DSO¸¦
253       »ç¿ëÇÒ ¼ö ¾ø´Ù.</li>
254
255       <li>À¯´Ð½º ·Î´õ°¡ ½Éº¼À» Ã£¾Æ¾ßÇϱ⠶§¹®¿¡ ¼­¹ö ½ÃÀÛÀÌ
256       ¾à 20% Á¤µµ ´Ê¾îÁø´Ù.</li>
257
258       <li>¼­¹ö´Â À§Ä¡µ¶¸³ÄÚµå(position independent code, PIC)
259       ¶§¹®¿¡ Àý´ëÁÖ¼ÒÁöÁ¤(absolute addressing)º¸´Ù ´À¸°
260       »ó´ëÁÖ¼ÒÁöÁ¤(relative addressing)ÀÇ º¹ÀâÇÑ ¾î¼Àºí·¯ ±â¹ýÀÌ
261       ÇÊ¿äÇϹǷΠ¾î¶² Ç÷¡Æû¿¡¼­ ½ÇÇà½Ã ¾à 5% Á¤µµ ´Ê´Ù.</li>
262
263       <li>DSO ¸ðµâÀ» ´Ù¸¥ DSO±â¹Ý ¶óÀ̺귯¸®(<code>ld -lfoo</code>)¿¡
264       ¸µÅ©ÇÒ ¼ö ¾ø´Â Ç÷¡ÆûÀÌ Àֱ⶧¹®¿¡ (¿¹¸¦ µé¾î ELF±â¹Ý
265       Ç÷¡ÆûÀº Áö¿øÇÏÁö¸¸ a.out±â¹Ý Ç÷¡ÆûÀº º¸Åë ÀÌ ±â´ÉÀ»
266       Áö¿øÇÏÁö ¾Ê´Â´Ù) ¸ðµç Á¾·ùÀÇ ¸ðµâ¿¡ DSO¸¦ »ç¿ëÇÒ ¼ö ¾ø´Ù.
267       ´Ù¸¥ ¸»·Î DSO ÆÄÀϷΠÄÄÆÄÀÏÇϴ ¸ðµâÀº ¾ÆÆÄÄ¡ Çٽɰú ¾ÆÆÄÄ¡
268       ÇÙ½ÉÀÌ »ç¿ëÇϴ C ¶óÀ̺귯¸®(<code>libc</code>)¿Í ´Ù¸¥
269       µ¿Àû/Á¤Àû ¶óÀ̺귯¸®, À§Ä¡µ¶¸³Äڵ带 ´ã°í Àִ Á¤Àû ¶óÀ̺귯¸®
270       ¾ÆÄ«À̺ê(<code>libfoo.a</code>)ÀÇ ½Éº¼¸¸À» »ç¿ëÇÒ ¼ö ÀÖ´Ù.
271       ´Ù¸¥ Äڵ带 »ç¿ëÇÏ·Á¸é ¾ÆÆÄÄ¡ ÇÙ½ÉÀÌ ±×°ÍÀ» ÂüÁ¶ÇÏ´øÁö,
272       <code>dlopen()</code>À¸·Î Á÷Á¢ Äڵ带 Àоîµé¿©¾ß ÇÑ´Ù.</li>
273     </ul>
274
275 </div></div>
276 <div class="bottomlang">
277 <p><span>°¡´ÉÇÑ ¾ð¾î: </span><a href="./en/dso.html" hreflang="en" rel="alternate" title="English">&nbsp;en&nbsp;</a> |
278 <a href="./fr/dso.html" hreflang="fr" rel="alternate" title="Fran&#231;ais">&nbsp;fr&nbsp;</a> |
279 <a href="./ja/dso.html" hreflang="ja" rel="alternate" title="Japanese">&nbsp;ja&nbsp;</a> |
280 <a href="./ko/dso.html" title="Korean">&nbsp;ko&nbsp;</a> |
281 <a href="./tr/dso.html" hreflang="tr" rel="alternate" title="T&#252;rk&#231;e">&nbsp;tr&nbsp;</a></p>
282 </div><div class="top"><a href="#page-header"><img src="./images/up.gif" alt="top" /></a></div><div class="section"><h2><a id="comments_section" name="comments_section">Comments</a></h2><div class="warning"><strong>Notice:</strong><br />This is not a Q&amp;A section. Comments placed here should be pointed towards suggestions on improving the documentation or server, and may be removed again by our moderators if they are either implemented or considered invalid/off-topic. Questions on how to manage the Apache HTTP Server should be directed at either our IRC channel, #httpd, on Freenode, or sent to our <a href="http://httpd.apache.org/lists.html">mailing lists</a>.</div>
283 <script type="text/javascript"><!--//--><![CDATA[//><!--
284 var comments_shortname = 'httpd';
285 var comments_identifier = 'http://httpd.apache.org/docs/trunk/dso.html';
286 (function(w, d) {
287     if (w.location.hostname.toLowerCase() == "httpd.apache.org") {
288         d.write('<div id="comments_thread"><\/div>');
289         var s = d.createElement('script');
290         s.type = 'text/javascript';
291         s.async = true;
292         s.src = 'https://comments.apache.org/show_comments.lua?site=' + comments_shortname + '&page=' + comments_identifier;
293         (d.getElementsByTagName('head')[0] || d.getElementsByTagName('body')[0]).appendChild(s);
294     }
295     else {
296         d.write('<div id="comments_thread">Comments are disabled for this page at the moment.<\/div>');
297     }
298 })(window, document);
299 //--><!]]></script></div><div id="footer">
300 <p class="apache">Copyright 2016 The Apache Software Foundation.<br />Licensed under the <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a>.</p>
301 <p class="menu"><a href="./mod/">¸ðµâ</a> | <a href="./mod/quickreference.html">Áö½Ã¾îµé</a> | <a href="http://wiki.apache.org/httpd/FAQ">FAQ</a> | <a href="./glossary.html">¿ë¾î</a> | <a href="./sitemap.html">»çÀÌÆ®¸Ê</a></p></div><script type="text/javascript"><!--//--><![CDATA[//><!--
302 if (typeof(prettyPrint) !== 'undefined') {
303     prettyPrint();
304 }
305 //--><!]]></script>
306 </body></html>