dso.html.ko.euc-kr revision b03f9485e6dfcf9326e6122f91eaa1ced8939818
<?xml version="1.0" encoding="EUC-KR"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
This file is generated from xml source: DO NOT EDIT
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
-->
<title>���������ü (DSO) ���� - Apache HTTP Server</title>
<link href="/style/css/manual.css" rel="stylesheet" media="all" type="text/css" title="Main stylesheet" />
<link href="/style/css/manual-loose-100pc.css" rel="alternate stylesheet" media="all" type="text/css" title="No Sidebar - Default font size" />
<body id="manual-page"><div id="page-header">
<p class="menu"><a href="/mod/">���</a> | <a href="/mod/directives.html">���þ��</a> | <a href="/faq/">FAQ</a> | <a href="/glossary.html">���</a> | <a href="/sitemap.html">����Ʈ��</a></p>
<p class="apache">Apache HTTP Server Version 2.3</p>
<div id="path">
<a href="http://www.apache.org/">Apache</a> > <a href="http://httpd.apache.org/">HTTP Server</a> > <a href="http://httpd.apache.org/docs/">Documentation</a> > <a href="./">Version 2.3</a></div><div id="page-content"><div id="preamble"><h1>���������ü (DSO) ����</h1>
<div class="toplang">
<p><span>������ ���: </span><a href="/en/dso.html" hreflang="en" rel="alternate" title="English"> en </a> |
<a href="/tr/dso.html" hreflang="tr" rel="alternate" title="Türkçe"> tr </a></p>
</div>
<div class="outofdate">�� ������ �ֽ��� ���� �ƴմϴ�.
�ֱٿ� ����� ������ ���� ������ ����ϼ���.</div>
<p>����ġ �������� ���ڰ� ������ �����Ͽ� ������ ������
����� ������ �� �ִ� ���ȭ�� ���α��̴�. ������ �����Ҷ�
<code>httpd</code> �������Ͽ� �������� ����� ��������
�� �ִ�. �ƴϸ� ����� <code>httpd</code> �������ϰ�
�и��Ͽ� ���������ü(Dynamic Shared Objects, DSO)�� ��������
�� �ִ�. DSO ����� ������ �������Ҷ� �������ϰų�, Apache
����Ͽ� ���߿� �������Ͽ� �߰��� �� �ִ�.</p>
<p>�� ������ DSO ��� ����� ��� �̷��� �����Ѵ�.</p>
</div>
<div id="quickview"><ul id="toc"><li><img alt="" src="/images/down.gif" /> <a href="#implementation">����</a></li>
</ul></div>
<div class="section">
<h2><a name="implementation" id="implementation">����</a></h2>
<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>
<p>����ġ �ٽɿ� �������� �������ؾ���
�о���̱����� DSO�� �����Ѵ�.
�� �� ��� ������ ����̴�. ������ �ٸ� ��� ����ġ �����
<code>configure</code>�� <code>--enable-<em>module</em>=shared</code>
�ɼ��� ����Ͽ� DSO�� �������� �� �ִ�. �����
����Ͽ� ���� ���۽� Ȥ�� ����۽� �� ����� �о���� ��
�ִ�.</p>
<p>����ġ ���(Ư�� �����ڰ� ���� ���)�� ����� DSO ������ ����
eXtenSion</em>)��� ���ο� ���� ���α��� �ִ�. �� ���α���
����ġ �ҽ� Ʈ�� <em>�ۿ���</em> DSO�� ����� �����
�������Ҷ� ����Ѵ�. ������ ����. ����ġ�� ��ġ�Ҷ�
<code>configure</code>�� <code>make install</code>��
����ġ C ��������� ��ġ�ϰ�, DSO ������ �������ϱ�����
�÷��� Ư���� �����Ϸ� �ɼǰ� ��Ŀ �ɼ��� <code>apxs</code>
���α��� ����Ѵ�. ���� <code>apxs</code>�� ����ϴ� ����ڴ�
����ġ ������ �ҽ� Ʈ������, �� DSO ������ ���� �÷��� Ư����
�����Ϸ� �ɼǿ� ��Ŀ �ɼǿ� �Ű��� �����ʰ� �ڽ��� ����ġ
��� �ҽ��� �������� �� �ִ�.</p>
<div class="section">
<h2><a name="usage" id="usage">���� ���</a></h2>
<p>Apache 2.2�� DSO ��ɿ� ���� ª�� ������ ����̴�:</p>
<ol>
<li>
<em>�������� �ִ�</em> ����ġ ����� �������ϰ� ��ġ�ϴ�
<div class="example"><p><code>
$ make install
</code></p></div>
</li>
<li>
<em>�����ڰ� ����</em> ����ġ ����� �������ϰ� ��ġ�ϴ�
<div class="example"><p><code>
$ make install
</code></p></div>
</li>
<li>
���� ����� <em>���߿� ����ϱ�����</em> ����ġ�� �����ϴ�
���:
<div class="example"><p><code>
$ /configure --enable-so<br />
$ make install
</code></p></div>
</li>
<li>
<em>�����ڰ� ����</em> ����ġ ����� �������ϰ� ��ġ�ϴ�
<div class="example"><p><code>
$ apxs -c mod_foo.c<br />
$ apxs -i -a -n foo mod_foo.la
</code></p></div>
</li>
</ol>
����Ͽ� ����ġ�� �� ����� �о���̰� �����.</p>
<div class="section">
<h2><a name="background" id="background">�������</a></h2>
<p>�������� ���н���� <em>���������ü</em> (DSO)��
����� �����ڵ� ������ ����� �������� �������α���
�ּҰ� �о���̴� ���� ����� �ִ�.</p>
<p>���� �ΰ��� ������� �о���� �� �ִ�. �ϳ��� �������α���
�о���̴� ����, �ٸ� �ϳ��� �������� ���α���
<code>dlopen()/dlsym()</code> �ý���ȣ��� ���н� �δ�(loader)��
�ý��� �������̽��� ����Ͽ� ���� �о���̴� ����.</p>
<p>ù��° ��� DSO�� ���� <em>�������̺귯��(shared libraries)</em>
Ȥ�� <em>DSO ���̺귯��</em>��� �θ���, ������
�ְ�, �����Ͻ� ��Ŀ ��ɾ <code>-lfoo</code>�� �־�
�������ϰ� �����Ѵ�. �̷��� ���� ���� ���̺귯���� �������Ͽ�
�����ǿ���, ���α��� �����Ҷ� ��Ŀ �ɼ� <code>-R</code>��
���� ������ ���, ȯ�溯�� <code>LD_LIBRARY_PATH</code>��
(���� ��ã��(unresolved)) �ɺ�(symbol)�� DSO���� ã�Եȴ�.</p>
<p>DSO�� ���� �������α��� �ɺ��� ã���ʱ� ������ (DSO��
���밡���� �Ϲ����� �ڵ� ���̺귯���̹Ƿ�) ã��� ���⼭
������. ���н� �δ��� �ɺ� ã�⸦ ������ ����ϹǷ� �������α���
�θ��� �ڵ�� ������ �ƴ� ��� �������α��� ��ũ�Ǵ� �����
�����ڵ��� �Ϻδ�.) ����� ���̺귯�� �ڵ带 �������� �о���̴�
������ ��Ȯ�ϴ�. ���̺귯�� �ڵ尡 ��� ���α��� �ߺ��ؼ�
�ѹ� ����DZ� ������ ��ũ ���� ���ȴ�.</p>
<p>�ι�° ��� DSO�� ���� <em>������ü(shared objects)</em>
Ȥ�� <em>DSO ����</em>�̶�� �θ���, (��Ģ�� �̸���
���ϵ��� ���� ���α� ��ü ���丮�� ��ġ�ϰ� �������α���
�ڵ����� ������� �ʴ´�. ��� �������α��� �����
<code>dlopen()</code>�� ����Ͽ� DSO�� �ּҰ�
���� �о�鿩�� �Ѵ�. �̶� �������α��� DSO���� �ɺ���
ã�� �ʴ´�. ��� �տ��� �� ���н� �δ��� �ڵ����� �������ϰ�
���������� �̹� �о���� DSO ���̺귯��(Ư�� �� �����ϴ�
�ɺ��� ã�´�. ���� DSO�� ��ġ ó������ �������α���
�������� ��ũ�ȰͰ� ���� ���������� �ɺ��� �˰Եȴ�.</p>
<p>DSO�� API�� �̿��ϱ����ؼ� ���������� �������α���
<code>dlsym()</code>���� DSO���� Ư�� �ɺ��� ã�Ƽ�, ������
����ϱ����� ����ġ(dispatch) ǥ <em>��</em>�� �����Ѵ�.
�ٸ� ���� �������α��� ����� ��� �Ǻ��� ���� ã�ƾ��Ѵ�.
�̷� ������ ������ ���α��� �Ϻθ� ���α���
�ʿ��Ҷ����� �о������ �ʾƵ� (���� �� ��������
�ʰ�) �ȴٴ� ���̴�. �⺻ ���α��� ����� Ȯ���ϱ�����
�ʿ��� ��� �� �κ��� �������� �о���� �� �ִ�.</p>
<p>�̷� DSO ������ �ڿ������� ��������, �ּ��� ����� ����
�Ѱ����ִ�. ���α��� Ȯ���ϱ����� DSO�� ����Ҷ� DSO��
�������α��� �ɺ��� ã�� ���̴�. ��? DSO�� �������α���
�ɺ��� "������ ã�� ��"�� (���̺귯���� �ڽ��� ����ϴ� ���α���
���� �ٴ�) ���̺귯�� ���迡 ���ϸ�, ��� �÷���
��������ʰ� ǥ��ȭ������ �ʾұ� �����̴�. ������ ����������
��ɺ�(global symbol)�� ���� �ͽ���Ʈ(export)���� �ʱ����
DSO�� ����� �� ���. DSO�� ����Ͽ� ������ ���α��� Ȯ���Ϸ���
��Ŀ���� ��� ��ɺ��� �ͽ���Ʈ�ϵ��� �����ϴ� ���� �ֵ�
�ذ�å�̴�.</p>
<p>�������̺귯���� DSO ����� �����Ģ��� �������̱����
�ü���� �����ϴ� ���� ��� ������ ���̺귯���� ����Ѵ�.
�ݴ�� ���� ���α��� ���α��� Ȯ���ϱ����� ������ü��
������� �ʴ´�.</p>
<p>1998�� ������ ������ ����� Ȯ���ϱ����� DSO ������ �����
����Ʈ���� ��Ű���� (XS ������ DynaLoader ����� �����)
Perl 5, Netscape Server <em>��</em>���� �幰���. ����ġ��
�̹� ����� Ȯ���ϱ����� ��� ������ ����߰� �ܺ� �����
����ġ �ٽɱ�ɿ� �����ϱ����� ���������� ����ġ�����
�̿��� ���ٹ���� ����߱���� 1.3 ������� �� �뿭�� �շ��ߴ�.
���� ����ġ�� ������ ����� �о���̴µ� DSO�� ����ϵ���
�����������.</p>
<div class="section">
<h2><a name="advantages" id="advantages">�����</a></h2>
<p>�տ��� ���� DSO�� ����ϸ� ������ ���� ������ �ִ�:</p>
<ul>
<li>���� ���� ���μ����� �����Ͻ� <code>configure</code>
�ɼǴ�� <code>httpd.conf</code>�� <code class="directive"><a href="/mod/mod_so.html#loadmodule">LoadModule</a></code>�� ����Ͽ� �����߿�
���յǹǷ� ���� ��Ű�� ������ �� �����ϴ�. ���� ��� �ѹ���
����ġ ��ġ������ �ٸ� ����(ǥ�� ����� SSL ����, �ּ�ȭ
����� ����߰� ���� [mod_perl, PHP3] <em>��</em>)�� ������
�� �ִ�.</li>
<li>������ ��ġ�Ŀ��� �����ڰ� ���� ����� ����Ͽ� ����
Ȯ���� �� �ִ�. �ּ��� ����� ��Ű�� �����ڴ� ����ġ �ٽ�
������ ������ PHP3, mod_perl, mod_fastcgi <em>��</em>��
�߰� ��Ű���� ���� �� �־ ū �̵��̴�.</li>
<li>DSO�� <code>apxs</code>�� ������ ����ġ �ҽ� Ʈ�� �ۿ���
�۾��ϰ� <code>apxs -i</code>�� <code>apachectl restart</code>
��ɾ���� ���� ������ ����� �� ������ �������� ����ġ
������ �ݿ��� �� �־ �� ���� ����ġ ����� ������ ��
�ִ�.</li>
</ul>
<p>DSO�� ������ ���� ������ �ִ�:</p>
<ul>
<li>���α��� �ּҰ� �ڵ带 �������� �о���̴� �����
���������ʴ� �ü���� �ֱ� ������ ��� �÷��� DSO��
����� �� ���.</li>
<li>���н� �δ��� �ɺ��� ã�ƾ��ϱ� ������ ���� ������
�� 20% ���� �ʾ����.</li>
<li>������ ��ġ�����ڵ�(position independent code, PIC)
������ ����ּ�����(absolute addressing)���� ����
����ּ�����(relative addressing)�� ������ ����? �����
�ʿ��ϹǷ� � �÷��� ����� �� 5% ���� �ʴ�.</li>
<li>DSO ����� �ٸ� DSO��� ���̺귯��(<code>ld -lfoo</code>)��
��ũ�� �� ��� �÷����� �ֱ���� (���� ��� ELF���
�÷����� ���������� a.out��� �÷����� ���� �� �����
�������� �ʴ´�) ��� ������ �� DSO�� ����� �� ���.
�ٸ� ���� DSO ���Ϸ� �������ϴ� ����� ����ġ �ٽɰ� ����ġ
�ٽ��� ����ϴ� C ���̺귯��(<code>libc</code>)�� �ٸ�
����/���� ���̺귯��, ��ġ�����ڵ带 ��� �ִ� ���� ���̺귯��
�ٸ� �ڵ带 ����Ϸ��� ����ġ �ٽ��� �װ��� �����ϴ���,
<code>dlopen()</code>���� ���� �ڵ带 �о�鿩�� �Ѵ�.</li>
</ul>
</div></div>
<div class="bottomlang">
<p><span>������ ���: </span><a href="/en/dso.html" hreflang="en" rel="alternate" title="English"> en </a> |
<a href="/tr/dso.html" hreflang="tr" rel="alternate" title="Türkçe"> tr </a></p>
</div><div id="footer">
<p class="apache">Copyright 2010 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>
<p class="menu"><a href="/mod/">���</a> | <a href="/mod/directives.html">���þ��</a> | <a href="/faq/">FAQ</a> | <a href="/glossary.html">���</a> | <a href="/sitemap.html">����Ʈ��</a></p></div>
</body></html>