summaryrefslogtreecommitdiff
path: root/fml/doc/ja/tutorial/internals/bootloader.sgml
blob: 9d5e10b076aa199cc1c73f6ae708a6b6ccc60c47 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
<!--
	$FML: bootloader.sgml,v 1.2 2001/04/24 06:51:59 fukachan Exp $
-->

<chapter id="bootloader">    	

<title> �С�������¸�����褹�뤿��� fml �֡��ȥ����� </title>

<para>

fml 5.0 �ˤϥ��󥹥ȡ��뤵��Ƥ��� fml �ΥС�������¸�����θ���뤿
��ˡ��¹Ի��ˤ��ܾϤǽҤ٤�褦�ʥ֡��ȥ��ȥ�åפβ���������ޤ���

<programlisting>
boot ���Ƥ������᡼��

libexec/loader -> 
     FML::Process::Switch -> 
         FML::Process::Flow -> 
              FML::Process::���줾��Υץ������Υ⥸�塼��
</programlisting>
</para>


<sect1>
<title> ��: ������ </title>

<para>
loader ���鼡���ȸƤФ�Ƥ����ͻҤϡ��㤨�����������ξ�硢���Τ褦
�ˤʤ롣

<programlisting>
libexec/loader �� FML::Process::Switch ������ɤ���
FML::Process::Distribute ��¹Ԥ���ȷ��롣

FML::Process::Flow::ProcessStart() �ϰ����Ȥ���
FML::Process::Distribute ���Ϥ��졢
FML::Process::Distribute ��¹Ԥ��Ƥ�����
</programlisting>
</para>
</sect1>


<sect1>
<title> FML::Process:: ���饹�γ��ع�¤ </title>

<para>
<programlisting>
FML::Process::Distribute >-|
FML::Process::Command    >-|-- FML::Process::Kernel
FML::Process::Mead       >-|    |   
                                |-use-a FML::Parse
                                |-use-a FML::Config
                                |-use-a FML::Log
                                |-use-a  ... ����¾ ...
</programlisting>

=&gt;
<ulink url="../../../fml/lib/FML/Process/programs.ja.html">
FML::Process::���줾��Υץ������Υ⥸�塼��ˤĤ���
</ulink>

</para>
</sect1>


<sect1>
<title> �֡��Ȥ��Ƥ������֤ˤĤ��� </title>

<itemizedlist>

   <listitem>
	<para>
	 libexec/loader (wrapper)
	Bootstrap() ��¹Ԥ��롣
	fml.pl �ʤɤϤ��� loader �ؤΥ���ܥ�å���󥯤Ǥ���
	/usr/local/libexec/fml/ �򻲾Ȥ��Ʋ�������
	</para>
   </listitem>

   <listitem>
   <itemizedlist>
	<listitem>
	<para>
	   /etc/fml/main.cf ���ɤ߹��ࡣ
		�ɤ߹���� fml �ΥС������ʬ���롣
		default_config.cf �ϥС�������¸�Ǥ���Τǡ�
		�����Ǥޤ��С�������ɾ�����ʤ���Ф����ʤ����Ȥ����ա�
	</para>
	</listitem>

	<listitem>
	<para>
	 	( fml.pl ����ˤȤ��)
		@ARGV ��ɾ������
		�ɤΣ̤ͣ� config.cf ��������ɤ���Ф����Τ���������롣
		�ѿ���ɾ����Ÿ���ˤ� libexec/Standalone.pm ���Ѥ��ޤ���

		����Ϥ��ޤ�褯�ʤ��褦�ʵ������ޤ���
		libexec/ �� @INC �˲ä��ʤ��Ȥ����ʤ����ȡ�
		libexec/loader �� libexec/Standalone.pm �Σ��Ĥ�
		���촹���ʤ��Ȥ����ʤ���ΤˤʤäƤ��ޤ��Τǡ�
	</para>
	</listitem>

	<listitem>
	<para>
		����
		FML::Process::Switch
		( �С�������¸ )�ե������
		�����ɤ��ޤ���
	</para>

	   <itemizedlist>
		<listitem>
		<para>
		Bootstrap2() ����� ProcessSwitch() ��¹Ԥ���
		�����ѡ����ޥ�ɥ⡼���Ѥʤɤγ�
		�ץ������/�ץ������ʤɤ������ܤ��ޤ�(ʬ������)��
		���λ��� $0 ���鼫ʬ��̾�����Τꡢ
		�ɤΥץ�������ʬ������Ф����Τ���Ƚ�Ǥ��Ƥ��ޤ���
		</para>
		</listitem>

		<listitem>
		<para>
		(�ݥ�⡼�ե��������)
		�⥸�塼�������ʥߥå��Х���ǥ��󥰤���
		��������ץ��������֥������Ȥ��������롣
		�����ơ��ץ������򥹥����Ȥ����ޤ���

		FML::Process::Flow ����ˡ�
		�ɤΤ褦�� fml �ץ�������¹Ԥ��뤫��
		�������Ƥ��ޤ���
<programlisting>
$process = new FML::Process::�ʤˤ�;
$process->prepare($args);
$process->run($args);
$process->finish($args);
</programlisting>
		�Τ褦�˼¹Ԥ���Ƥ��ޤ���
		�ƥץ������ϡ����줾��ˤĤ���Ŭ���ʴؿ���
		�Ѱդ��Ƥ���������
		</para>
		</listitem>
	   </itemizedlist>
	</listitem>
   </itemizedlist>
   </listitem>
</itemizedlist>
</sect1>

</chapter>