<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
  <channel>
    <title>kkamagui&#51032; &#54532;&#47196;&#44536;&#47000;&#48141; &#51089;&#50629;&#49892;</title>
    <link>http://kkamagui.springnote.com/pages</link>
    <description>kkamagui&#51032; &#54532;&#47196;&#44536;&#47000;&#48141; &#51089;&#50629;&#49892;</description>
    <language>ko-KR</language>
    <item>
      <title>04 NDS &#54856;&#48652;&#47336;(Homebrew) - NDS &#52964;&#45328;(Kernel) &#47564;&#46308;&#44592;</title>
      <description>&lt;h1&gt;04&amp;nbsp;NDS &#54856;&#48652;&#47336;(Homebrew) - NDS&amp;nbsp;&#52964;&#45328;(Kernel) &#47564;&#46308;&#44592;&lt;/h1&gt;
&lt;p&gt;&lt;strong&gt;&#50896;&#47928; :&lt;/strong&gt; &lt;a href="/pages/432888"&gt;&lt;strong&gt;http://kkamagui.springnote.com/pages/432888&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2&gt;&#46308;&#50612;&#44032;&#44592; &#51204;&#50640;...&lt;/h2&gt;
&lt;div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;&#51060; &#44544;&#51008;&amp;nbsp;kkamagui&#50640; &#51032;&#54644; &#51089;&#49457;&#46108; &#44544;&#51077;&#45768;&#45796;.&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&#47560;&#51020;&#44751; &#51064;&#50857;&#54616;&#49884;&#44144;&#45208; &#49324;&#50857;&#54616;&#49492;&#46020; &#46121;&#45768;&#45796;. &#45800; &#52636;&#52376;(&lt;a href="http://kkamagui.tistory.com/"&gt;&lt;span style="color: rgb(128, 0, 128);"&gt;http://kkamagui.tistory.com&lt;/span&gt;&lt;/a&gt;, &lt;a href="/pages/404250#"&gt;&lt;span style="color: rgb(128, 0, 128);"&gt;http://kkamagui.springnote.com&lt;/span&gt;&lt;/a&gt;)&#45716; &#48157;&#54784; &#51452;&#49901;&#49884;&#50724;.&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&#44592;&#53440; &#49324;&#54637;&#51008;&amp;nbsp;kkakkunghehe at daum.net &#51060;&#45208;&lt;/strong&gt; &lt;a href="http://kkamagui.tistory.com/"&gt;&lt;strong&gt;&lt;span style="color: rgb(128, 0, 128);"&gt;http://kkamagui.tistory.com&lt;/span&gt;&lt;/strong&gt;&lt;/a&gt;&lt;strong&gt;&#51004;&#47196; &#48372;&#45236;&#51452;&#49884;&#47732; &#48152;&#50689;&#54616;&#44192;&#49845;&#45768;&#45796;.&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2&gt;0.&#49884;&#51089;&#54616;&#47732;&#49436;...&lt;/h2&gt;
&lt;div&gt;
&lt;p&gt;&lt;img class="attachment" title="&#51060;&#48120;&#51648;.PNG" src="/pages/432888/attachments/207611" alt="&#51060;&#48120;&#51648;.PNG" /&gt;&lt;/p&gt;
&lt;ul class="noindent"&gt;
&lt;li&gt;&lt;strong&gt;&amp;nbsp;&lt;a href="/pages/432888/attachments/264943" class="attachment" title="NDSKernelPlay-small.avi"&gt;NDSKernelPlay-small.avi&lt;/a&gt;&lt;/strong&gt;&lt;strong&gt;&amp;nbsp;: NDS Kernel Play &#46041;&#50689;&#49345;&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;libnds&#47484; &#51060;&#50857;&#54644;&#49436; &#54532;&#47196;&#44536;&#47016;&#51012; &#51089;&#49457;&#54616;&#45716; &#50696;&#51228;&#45716; &#52649;&#48516;&#55176; &#47566;&#51060; &#51080;&#45796;. &#54616;&#51648;&#47564; &#51060;&#44163;&#47564; &#44032;&#51648;&#44256;&#45716; &#47924;&#50631;&#51064;&#44032; &#48512;&#51313;&#54616;&#45796;. NDS&#50640;&#49436; &#47680;&#54000; &#53468;&#49828;&#53433;&#51012; &#51648;&#50896;&#54624; &#49688; &#45716; &#50630;&#51012;&#44620;? NDS&#45716; &#53440;&#51060;&#47672;&#47484; 4&#44060;&#45208; &#44032;&#51648;&#44256; &#51080;&#44592; &#46412;&#47928;&#50640; &#49884;&#48516;&#54624; &#47680;&#54000; &#53468;&#49828;&#53433;&#51012; &#54616;&#45716;&#45936; &#51204;&#54784; &#47928;&#51228;&#44032; &#50630;&#45796;.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&#52964;&#45328;&#51060; &#46104;&#44592;&#50948;&#54644;&#49436;&#45716; &#48736;&#51656; &#49688; &#50630;&#45716; &#44592;&#45733;&#51060; &#47680;&#54000; &#53468;&#49828;&#53433;&#51060;&#44256; &#54616;&#45768;, NDS&#50640; &#53468;&#49828;&#53356; &#49828;&#50948;&#52845;(Task&amp;nbsp;Swithcing)&amp;nbsp;&#44592;&#45733;&#51012; &#45347;&#50612;&#48372;&#46020;&#47197; &#54616;&#51088;. &#52968;&#53581;&#49828;&#53944; &#51200;&#51109;&#50640; &#49324;&#50857;&#46104;&#45716; &#44275;&#51008; OS &#54532;&#47112;&#51076;&#50892;&#53356;&#50752; &#46041;&#51068;&#54616;&#44172; &#44033; &#53468;&#49828;&#53356; &#49828;&#53469;&#51032; &#44032;&#51109; &#50500;&#47000;&#48512;&#48516;(0 &#51901;&#50640; &#44032;&#44620;&#50868; &#48512;&#48516;)&#50640; &#51200;&#51109;&#46104;&#44256; &#50500;&#47000;&#51032; &#49692;&#49436;&#47196; &#52509; 16&#44060;&#51032; &#44050;&#51060; &#51200;&#51109;&#46108;&#45796;.&lt;/p&gt;
&lt;p style="text-align: center;"&gt;&lt;img class="attachment" title="Interrupt2.PNG" src="/pages/432888/attachments/184348" alt="Interrupt2.PNG" /&gt;&lt;/p&gt;
&lt;p style="text-align: center;"&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style="text-align: center;"&gt;&lt;strong&gt;&amp;nbsp;&amp;lt;&#49828;&#53469;&#50640; &#51200;&#51109;&#46104;&#45716; &#47112;&#51648;&#49828;&#53552;&#51032; &#45236;&#50857;&#46308;&amp;gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&#50948;&#51032; &#44536;&#47548;&#51008; &#50500;&#47000;&#50640;&#49436; &#49444;&#47749;&#54624; &#49548;&#49828;&#53076;&#46300;&#47484; &#51060;&#54644;&#54616;&#45716;&#45936; &#46020;&#50880;&#51060; &#46104;&#48064;&#47196; &#44845; &#48400;&#46160;&#46020;&#47197; &#54616;&#51088;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2&gt;1.System/User &#47784;&#46300;&#50640;&#49436; &#53468;&#49828;&#53356; &#49828;&#50948;&#52845;(Task Switching)&lt;/h2&gt;
&lt;p&gt;&amp;nbsp;&#50976;&#51200;&#47784;&#46300;&#50640;&#49436; &#44036;&#45800;&#55176;&amp;nbsp;&#53468;&#49828;&#53356; &#49828;&#50948;&#52845; &#54616;&#45716; &#48169;&#48277;&#51008; &#49828;&#53469;&#50640;&#45796;&#44032;&amp;nbsp;&#47112;&#51648;&#49828;&#53552;&#47484; &#51204;&#48512; &#45347;&#44256;&amp;nbsp;&#49828;&#53469;&#51012; &#49828;&#50948;&#52845; &#54620; &#46244;&#50640; &#51204;&#48512; &#48764;&#47732;&#46108;&#45796;. &#51200;&#51109;&#54616;&#45716; &#48169;&#49885;&#51008; &#49828;&#53469;&#51032; Bottom&#50640;&#49436; &#47112;&#51648;&#49828;&#53552;&#51032; &#44079;&#49688;&#47564;&#53372;&#51012; &#51200;&#51109;&#54616;&#44256; &#45796;&#49884; &#48373;&#50896;&#54616;&#47732; &#44036;&#45800;&#55176; &#54644;&#44208;&#54624; &#49688; &#51080;&#45796;.&lt;/p&gt;
&lt;ol class="code"&gt;
&lt;li&gt;&amp;nbsp;@ &#53468;&#49828;&#53356; &#49828;&#50948;&#52824;&#47484; &#49688;&#54665;&#54616;&#45716; &#54632;&#49688;&lt;br /&gt;
&lt;strong&gt;SwitchTask:&lt;/strong&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; // 0x0000 -&amp;gt; 0xFFFF&#47196; &#50732;&#46972;&#44032;&#45768;&#44620; &#45347;&#44256; &#51613;&#44032;&#49884;&#53020;&#50556; &#54620;&#45796;.&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; STMIA R0, { R0-R14 }&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; LDMIA R1, { R0-R13, pc}&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2&gt;2.&#53440;&#51060;&#47672; &#51064;&#53552;&#47101;&#53944;(Timer Interrupt)&#47484; &#53685;&#54620; &#53468;&#49828;&#53356; &#49828;&#50948;&#52845;(Task Swithcing)&lt;/h2&gt;
&lt;h3&gt;2.1 &#51064;&#53552;&#47101;&#53944; &#54648;&#46308;&#47084;(Interrupt Handler) &#53076;&#46300;&#50752; &#49828;&#53469;(Stack)&lt;/h3&gt;
&lt;p&gt;&amp;nbsp;&#53440;&#51060;&#47672; &#51064;&#53552;&#47101;&#53944;&#47484; &#53685;&#54644; &#53468;&#49828;&#53944;&#49828;&#50948;&#52845;&#51012; &#54624;&#46412; User/System &#47784;&#46300;&#50752; &#45796;&#47480; &#51216;&#51008; &#47784;&#46300;&#44032; User/System &#47784;&#46300;&#50640;&#49436; IRQ &#47784;&#46300;&#47196; &#48148;&#45072;&#45796;&#45716; &#44163;&#51060;&#45796;. &#54532;&#47196;&#49464;&#49436;&#51032; &#47784;&#46300;&#50640; &#45824;&#54620; &#45236;&#50857;&#51008; &lt;a href="/pages/search?q=%EC%B0%B8%EA%B3%A0.%20ARM%20Processor%20Overview&amp;amp;amp;parent_id=432888" class="wiki" title="&#52280;&#44256;. ARM Processor Overview"&gt;&lt;strong&gt;&#52280;&#44256;. ARM Processor Overview&lt;/strong&gt;&lt;/a&gt;&#51032; &#45236;&#50857;&#51012; &#52280;&#44256;&#54616;&#46020;&#47197; &#54616;&#44256; &#49892;&#51656;&#51201;&#51064; &#47928;&#51228;&#50640; &#45824;&#54644;&#49436; &#50508;&#50500;&#48372;&#51088;.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&#44032;&#51109; &#53360; &#47928;&#51228;&#45716;&amp;nbsp;&#47112;&#51648;&#49828;&#53552;&#44032;&amp;nbsp;&#48197;&#53356;&#46104;&#50612; IRQ &#47784;&#46300;&#51032; &lt;strong&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;R13(sp)&lt;/span&gt;&lt;/strong&gt;&#50752; &lt;strong&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;R14(lr)&lt;/span&gt;&lt;/strong&gt;, &#44536;&#47532;&#44256; &lt;strong&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;SPSR&lt;/span&gt;&lt;/strong&gt;&#51012; &#44032;&#51652;&#45796;&#45716; &#44163;&#51060;&#45796;.&amp;nbsp;&#46384;&#46972;&#49436; &#51221;&#49345;&#51201;&#51064; &#53468;&#49828;&#53944; &#49828;&#50948;&#52845;&#51012; &#50948;&#54644;&#49436;&#45716;&amp;nbsp;&#54788;&#51116; &#53468;&#49828;&#53356;&#47484; &#51200;&#51109;&#54624; &#46412;&amp;nbsp;User/System &#47784;&#46300;&#51032; &#47112;&#51648;&#49828;&#53552; &#48143; SPSR&#51012; &#51200;&#51109;&#54644;&#50556; &#54616;&#47728; &#48373;&#50896;&#54624; &#53468;&#49828;&#53356; &#46608;&#54620; &#50976;&#51200;&#47784;&#46300;&#51032; &lt;strong&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;R13&lt;/span&gt;&lt;/strong&gt;&#44284; &lt;strong&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;R14&lt;/span&gt;&lt;/strong&gt;&lt;span style="color: rgb(0, 0, 0);"&gt;&#47484;&amp;nbsp;&#51096; &#48373;&#50896;&#54644;&#51452;&#44256;&amp;nbsp;&#50976;&#51200;&#47784;&#46300;&#51032; CPSR&lt;/span&gt;&lt;span style="color: rgb(0, 0, 0);"&gt;&#50640;&lt;/span&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;SPSR&lt;/span&gt;&#50640; &#45347;&#50612;&#51456; &#45796;&#51020;&amp;nbsp;&lt;span style="color: rgb(0, 0, 0);"&gt;&#47532;&#53556;&#54644;&#50556; &#54620;&#45796;.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&#47928;&#51228;&#45716; &#51060;&#44163;&#47564;&#51060; &#50500;&#45768;&#45796;. &#45908; &#53360; &#47928;&#51228;&#45716; NDS BIOS &#46972;&#51060;&#48652;&#47084;&#47532;&#50640; &#51080;&#45716; &#51064;&#53552;&#47101;&#53944; &#52376;&#47532; &#47336;&#54004;&#51012; &#53685;&#44284;&#54620; &#54980;&#50640; &#45236;&#44032; &#51228;&#50612;&#47484; &#51060;&#50612;&#48155;&#45716; &#45796;&#45716; &#44163;&#51064;&#45936;, NDS&amp;nbsp;BIOS&#50640;&#49436; &#51064;&#53552;&#47101;&#53944; &#49440;&#54665; &#52376;&#47532;&#47484; &#50948;&#54644; &#47924;&#49832; &#51068;&#51012;&amp;nbsp;&#54616;&#45716;&#51648; &#47784;&#47476;&#47732;&amp;nbsp;&#52968;&#53581;&#49828;&#53944;(Context)&#47484; &#51221;&#54869;&#54616;&#44172;&amp;nbsp;&#51200;&#51109;&#54624; &#49688; &#50630;&#45796;.&amp;nbsp;&#49345;&#45817;&#55176; &#52649;&#44201;&#51201;&#51064; &#45236;&#50857;&#51064;&#45936;... BIOS&#50752; &#46041;&#51089; &#54840;&#54872;&#51012; &#50948;&#54644;&#49436;&#45716; &#51060; &#48512;&#48516;&#50640; &#45824;&#54620; &#52376;&#47532;&#47484; &#54644;&#51480;&#50556;.. &#12636;_&#12636;...&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&#51068;&#45800; NDS&#51032; &#51064;&#53552;&#47101;&#53944; &#46356;&#49828;&#54056;&#52376;(Interrupt Dispatcher) &#49548;&#49828;&#45716; &lt;strong&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;\devkitPro\libnds\source\source\common&lt;/span&gt; &lt;span style="color: rgb(0, 0, 0);"&gt;&#54260;&#45908;&#51032;&lt;/span&gt;&lt;/strong&gt; &amp;nbsp;&lt;span style="color: rgb(0, 0, 255);"&gt;&lt;strong&gt;interruptDispatcher.s&lt;/strong&gt; &lt;span style="color: rgb(0, 0, 0);"&gt;&#54028;&#51068;&#50640;&#49436; &#52286;&#51012; &#49688; &#51080;&#44256; &#50500;&#47000;&#50752; &#44057;&#45796;.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;ol class="code"&gt;
&lt;li&gt;&lt;br /&gt;
#ifdef ARM7&lt;br /&gt;
&amp;nbsp;.text&lt;br /&gt;
#endif&lt;/li&gt;
&lt;li&gt;#ifdef ARM9&lt;br /&gt;
&amp;nbsp;.section&amp;nbsp;.itcm,"ax",%progbits&lt;br /&gt;
#endif&lt;/li&gt;
&lt;li&gt;&amp;nbsp;.extern&amp;nbsp;irqTable&lt;br /&gt;
&amp;nbsp;.code 32&lt;/li&gt;
&lt;li&gt;&amp;nbsp;.global&amp;nbsp;IntrMain&lt;/li&gt;
&lt;li&gt;@---------------------------------------------------------------------------------&lt;br /&gt;
&lt;strong&gt;IntrMain:&lt;/strong&gt;@---------------------------------------------------------------------------------&lt;br /&gt;
&amp;nbsp;mov&amp;nbsp;r3, #0x4000000&amp;nbsp;&amp;nbsp;@ REG_BASE&lt;/li&gt;
&lt;li&gt;&amp;nbsp;ldr&amp;nbsp;r1, [r3, #0x208]&amp;nbsp;@ r1 = IME&lt;br /&gt;
&amp;nbsp;str&amp;nbsp;r3, [r3, #0x208]&amp;nbsp;@ disable IME&lt;br /&gt;
&amp;nbsp;mrs&amp;nbsp;r0, spsr&lt;br /&gt;
&lt;strong&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;&amp;nbsp;stmfd&amp;nbsp;sp!, {r0-r1,r3}&amp;nbsp;&amp;nbsp;@ {spsr, IME, REG_BASE}&lt;/span&gt;&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&amp;nbsp;ldr&amp;nbsp;r1, [r3,#0x210]&amp;nbsp;&amp;nbsp;@ REG_IE&lt;br /&gt;
&amp;nbsp;ldr&amp;nbsp;r2, [r3,#0x214]&amp;nbsp;&amp;nbsp;@ REG_IF&lt;br /&gt;
&amp;nbsp;and&amp;nbsp;r1,r1,r2&lt;/li&gt;
&lt;li&gt;&amp;nbsp;ldr&amp;nbsp;r0,=__irq_flags&amp;nbsp;&amp;nbsp;@ defined by linker script&lt;/li&gt;
&lt;li&gt;&amp;nbsp;ldr&amp;nbsp;r2,[r0]&lt;br /&gt;
&amp;nbsp;orr&amp;nbsp;r2,r2,r1&lt;br /&gt;
&amp;nbsp;str&amp;nbsp;r2,[r0]&lt;/li&gt;
&lt;li&gt;&amp;nbsp;ldr&amp;nbsp;r2,=irqTable&lt;/li&gt;
&lt;li&gt;@---------------------------------------------------------------------------------&lt;br /&gt;
findIRQ:&lt;br /&gt;
@---------------------------------------------------------------------------------&lt;br /&gt;
&amp;nbsp;ldr r0, [r2, #4]&lt;br /&gt;
&amp;nbsp;cmp&amp;nbsp;r0,#0&lt;br /&gt;
&amp;nbsp;beq&amp;nbsp;no_handler&lt;br /&gt;
&amp;nbsp;ands&amp;nbsp;r0, r0, r1&lt;br /&gt;
&amp;nbsp;bne&amp;nbsp;jump_intr&lt;br /&gt;
&amp;nbsp;add&amp;nbsp;r2, r2, #8&lt;br /&gt;
&amp;nbsp;b&amp;nbsp;findIRQ&lt;/li&gt;
&lt;li&gt;@---------------------------------------------------------------------------------&lt;br /&gt;
no_handler:&lt;br /&gt;
@---------------------------------------------------------------------------------&lt;br /&gt;
&amp;nbsp;str&amp;nbsp;r1, [r3, #0x0214]&amp;nbsp;@ IF Clear&lt;br /&gt;
&amp;nbsp;ldmfd&amp;nbsp;&amp;nbsp; sp!, {r0-r1,r3}&amp;nbsp;&amp;nbsp;@ {spsr, IME, REG_BASE}&lt;br /&gt;
&amp;nbsp;str&amp;nbsp;r1, [r3, #0x208]&amp;nbsp;@ restore REG_IME&lt;br /&gt;
&amp;nbsp;mov&amp;nbsp;pc,lr&lt;/li&gt;
&lt;li&gt;@---------------------------------------------------------------------------------&lt;br /&gt;
jump_intr:&lt;br /&gt;
@---------------------------------------------------------------------------------&lt;br /&gt;
&amp;nbsp;ldr&amp;nbsp;r1, [r2]&amp;nbsp;&amp;nbsp;@ user IRQ handler address&lt;br /&gt;
&amp;nbsp;cmp&amp;nbsp;r1, #0&lt;br /&gt;
&amp;nbsp;bne&amp;nbsp;got_handler&lt;br /&gt;
&amp;nbsp;mov&amp;nbsp;r1, r0&lt;br /&gt;
&amp;nbsp;b&amp;nbsp;no_handler&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;@---------------------------------------------------------------------------------&lt;br /&gt;
got_handler:&lt;br /&gt;
@---------------------------------------------------------------------------------&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&amp;nbsp;mrs&amp;nbsp;r2, cpsr&lt;br /&gt;
&amp;nbsp;&lt;span style="color: rgb(255, 0, 0);"&gt;bic&amp;nbsp;r2, r2, #0xdf&amp;nbsp;&amp;nbsp;@ \__&lt;br /&gt;
&amp;nbsp;orr&amp;nbsp;r2, r2, #0x1f&amp;nbsp;&amp;nbsp;@ /&amp;nbsp; --&amp;gt; Enable IRQ &amp;amp; FIQ. Set CPU mode to System.&lt;br /&gt;
&amp;nbsp;msr&amp;nbsp;cpsr,r2&lt;/span&gt;&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&amp;nbsp;str&amp;nbsp;r0, [r3, #0x0214]&amp;nbsp;@ IF Clear&lt;/strong&gt;&amp;nbsp;&lt;br /&gt;
&lt;strong&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;&amp;nbsp;&lt;span style="color: rgb(0, 0, 255);"&gt;push&amp;nbsp;{lr}&lt;/span&gt;&amp;nbsp;adr&amp;nbsp;lr, IntrRet&lt;br /&gt;
&amp;nbsp;bx&amp;nbsp;r1&lt;/span&gt;&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;@---------------------------------------------------------------------------------&lt;br /&gt;
IntrRet:&lt;br /&gt;
@---------------------------------------------------------------------------------&lt;br /&gt;
&lt;span style="color: rgb(255, 0, 0);"&gt;&amp;nbsp;pop&amp;nbsp;{lr}&lt;/span&gt;&lt;br /&gt;
&amp;nbsp;mov&amp;nbsp;r3, #0x4000000&amp;nbsp;&amp;nbsp;@ REG_BASE&lt;br /&gt;
&amp;nbsp;str&amp;nbsp;r3, [r3, #0x208]&amp;nbsp;@ disable IME&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&amp;nbsp;mrs&amp;nbsp;r3, cpsr&lt;br /&gt;
&amp;nbsp;&lt;span style="color: rgb(255, 0, 0);"&gt;bic&amp;nbsp;r3, r3, #0xdf&amp;nbsp;&amp;nbsp;@ \__&lt;br /&gt;
&amp;nbsp;orr&amp;nbsp;r3, r3, #0x92&amp;nbsp;&amp;nbsp;@ /&amp;nbsp; --&amp;gt; Disable IRQ. Enable FIQ. Set CPU mode to IRQ.&lt;br /&gt;
&amp;nbsp;msr&amp;nbsp;cpsr, r3&lt;/span&gt;&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&amp;nbsp;&lt;span style="color: rgb(0, 0, 255);"&gt;ldmfd&amp;nbsp;&amp;nbsp; sp!, {r0-r1,r3}&amp;nbsp;&amp;nbsp;@ {spsr, IME, REG_BASE}&lt;/span&gt;&amp;nbsp;str&amp;nbsp;r1, [r3, #0x208]&amp;nbsp;@ restore REG_IME&lt;br /&gt;
&amp;nbsp;msr&amp;nbsp;spsr, r0&amp;nbsp;&amp;nbsp;@ restore spsr&lt;br /&gt;
&amp;nbsp;mov&amp;nbsp;pc,lr&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&amp;nbsp;.pool&lt;br /&gt;
&amp;nbsp;.end&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;&amp;nbsp;&#53076;&#46300;&#51032; &#51473;&#50836;&#48512;&#48516;&#51008; IRQ Table&#50640;&#49436; &#54644;&#45817; &#52376;&#47532; &#47336;&#54004;&#51012; &#52286;&#50500;&#49436; IRQ &#47784;&#46300;&#50640;&#49436; System &#47784;&#46300;&#47196; &#48320;&#44221;&#54620; &#45796;&#51020; &#54632;&#49688;&#47484; &#54840;&#52636;&#54616;&#45716; &#48512;&#48516;&#51060;&#45796;. &#51593; &#53440;&#51060;&#47672; &#51064;&#53552;&#47101;&#53944;&#44032; &#48156;&#49373;&#54616;&#47732; &#45236;&#44032; &#47564;&#46304;&amp;nbsp;&#53440;&#48120;&#50612; &#54648;&#46308;&#47084;&#47484; &#54840;&#52636;&#54616;&#44256; &#51060; &#53440;&#51060;&#47672; &#54648;&#46308;&#47084;&#50640;&#49436; &#47532;&#53556;&#51012; &#54616;&#47732; &#51221;&#49345;&#51201;&#51064; &#47336;&#53944;&#47484; &#53685;&#54644; &#45796;&#49884; &#48373;&#44396;&#54616;&#46020;&#47197; &#46104;&#50612;&#51080;&#45796;.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&#44536;&#47111;&#45796;&#47732;&amp;nbsp;IntrMain &#51060;&#46972;&#45716;&amp;nbsp;&#53076;&#46300;&#45716; NDS&#51032; BIOS&#44032; &#48520;&#47084;&#51456;&#45796;&#45716; &#51060;&#50556;&#44596;&#45936;... &#50612;&#46523;&#44172; &#52286;&#50500;&#49436; &#51200; &#54632;&#49688;&#47484; &#48520;&#47084;&#51452;&#45716; &#44163;&#51068;&#44620;?&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&#45813;&#51008;&amp;nbsp;&#50500;&#47000;&#45716;&amp;nbsp;&lt;strong&gt;\devkitPro\libnds\source\source\common&lt;/strong&gt; &#54260;&#45908;&#50640; &#51080;&#45716; &lt;strong&gt;Interrupts.c&lt;/strong&gt; &#49548;&#49828;&#50640;&#49436; &#52286;&#51012; &#49688; &#51080;&#45796;.&amp;nbsp;&lt;strong&gt;irqInit()&lt;/strong&gt; &#54632;&#49688;&#50640;&#49436;&amp;nbsp;&#50948;&#51032; IntrMain &#54632;&#49688;&#47484; BIOS&#50640;&#49436; &#54840;&#52636;&#54644; &#51460; &#54648;&#46308;&#47084;&#47196; &#46321;&#47197;&#54620;&#45796;.&lt;/p&gt;
&lt;ol class="code"&gt;
&lt;li style="text-align: center;"&gt;........ &#49373;&#47029; ........&lt;/li&gt;
&lt;li&gt;//---------------------------------------------------------------------------------&lt;br /&gt;
void irqInit() {&lt;br /&gt;
//---------------------------------------------------------------------------------&lt;br /&gt;
&amp;nbsp;int i;&lt;/li&gt;
&lt;li&gt;&amp;nbsp;// Set all interrupts to dummy functions.&lt;br /&gt;
&amp;nbsp;for(i = 0; i &amp;lt; MAX_INTERRUPTS; i ++)&lt;br /&gt;
&amp;nbsp;{&lt;br /&gt;
&amp;nbsp;&amp;nbsp;irqTable[i].handler = irqDummy;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;irqTable[i].mask = 0;&lt;br /&gt;
&amp;nbsp;}&lt;/li&gt;
&lt;li&gt;&amp;nbsp;&lt;strong&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;IRQ_HANDLER = IntrMain;&lt;/span&gt;&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&amp;nbsp;REG_IE&amp;nbsp;= 0;&amp;nbsp;&amp;nbsp;&amp;nbsp;// disable all interrupts&lt;br /&gt;
&amp;nbsp;REG_IF&amp;nbsp;= IRQ_ALL;&amp;nbsp;&amp;nbsp;// clear all pending interrupts&lt;br /&gt;
&amp;nbsp;REG_IME = 1;&amp;nbsp;&amp;nbsp;&amp;nbsp;// enable global interrupt&lt;/li&gt;
&lt;li&gt;}&lt;/li&gt;
&lt;li style="text-align: center;"&gt;........ &#49373;&#47029; ........&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&#50668;&#44592;&#49436; &#51104;&#44624;.... &#47956;&#44032; &#51060;&#49345;&#54620; &#51216;&#51060; &#45712;&#44788;&#51648;&#51648; &#50506;&#45716;&#44032;? &#48372;&#53685; &#51064;&#53552;&#47101;&#53944;&#44032; &#48156;&#49373;&#54616;&#47732; &#52968;&#53581;&#49828;&#53944;(Context)&#47484; &#45796; &#51200;&#51109;&#54644; &#51452;&#44256; &#51064;&#53552;&#47101;&#53944; &#52376;&#47532; &#54632;&#49688;&#47484; &#54840;&#52636;&#54616;&#50668; &#51064;&#53552;&#47101;&#53944;&#50640; &#45824;&#54620; &#52376;&#47532;&#47484; &#54620;&#45796;&#51020; &#45796;&#49884; &#52968;&#53581;&#49828;&#53944;&#47484; &#48373;&#44396;&#54616;&#45716; &#51208;&#52264;&#47484; &#44144;&#52828;&#45796;. &#44536;&#47088;&#45936; &#50948;&#51032; InterruptDispatcher.s &#49548;&#49828;&#50640;&#49436;&#45716; &#44536;&#47088; &#47336;&#54004;&#51060; &#48372;&#51060;&#51648; &#50506;&#45716;&#45796;.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;ARM &#44057;&#51008; &#44221;&#50864;&#46972;&#47732;&amp;nbsp;ldmfd sp!, {r0-r13} &#46321;&#44284; &#44057;&#51008; &#53076;&#46300;&#44032; &#51080;&#50612;&#50556; &#54624;&#53552;&#51064;&#45936;... &lt;strong&gt;&#51060;&#47196;&#48372;&#50500; IntrMain &#53076;&#46300;&#45716; NDS&#51032; BIOS&#50640; &#51032;&#54644; &#48520;&#47140;&#51648;&#45716; &#53076;&#46300;&#51076;&#51012; &#52628;&#52769;&#54624; &#49688; &#51080;&#45796;.&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&#44208;&#44397; BIOS&#51032; &#51064;&#53552;&#47101;&#53944; &#54648;&#46308;&#47084; &#54632;&#49688;(&#51064;&#53552;&#47101;&#53944; &#52376;&#47532;&#51032; &#52572;&#44256; &#50526;&#45800;)&#50640; &#45824;&#54644;&#49436; &#50508;&#50500;&#50556; &#53468;&#49828;&#53356; &#49828;&#50948;&#52845;&#44057;&#51008; &#47928;&#51228;&#47484; &#54644;&#44208;&#54624; &#49688; &#51080;&#45796;&#45716; &#44163;&#51064;&#45936;...&amp;nbsp;ARM9 BIOS&#51032; &#51064;&#53552;&#47101;&#53944;&amp;nbsp;&#52376;&#47532; &#53076;&#46300;&#45716; &#50612;&#46500; &#54805;&#53468;&#51068;&#44620;? &#54620;&#52280;&#51012; &#46244;&#51201;&#51060;&#45796;&#44032; &lt;a href="http://www.bottledlight.com/ds/index.php/Main/Interrupts"&gt;&lt;strong&gt;http://www.bottledlight.com/ds/index.php/Main/Interrupts&lt;/strong&gt;&lt;/a&gt;&amp;nbsp;&#50640;&#49436; &#44536; &#45236;&#50857;&#51012; &#52286;&#50520;&#45796;.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p class="vspace"&gt;&lt;strong&gt;&lt;span class="wikiword"&gt;ARM7&lt;/span&gt; Interrupt handler:&lt;/strong&gt;&lt;/p&gt;
&lt;p class="vspace"&gt;&amp;nbsp;&lt;/p&gt;
&lt;ol class="code"&gt;
&lt;li&gt;
&lt;div&gt;
&lt;p&gt;&lt;strong&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;stmdb&amp;nbsp;&amp;nbsp; sp!, {r0-r3, r12, lr}&lt;/span&gt;&lt;/strong&gt;mov&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; r0, #0x04000000&lt;br /&gt;
add&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; lr, pc, #0x0&lt;br /&gt;
&lt;strong&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;ldr&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;pc, [r0, #-0x4]&lt;/span&gt;&lt;/strong&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;&lt;strong&gt;ldmia&amp;nbsp;&amp;nbsp; sp!, {r0-r3, r12, lr}&lt;/strong&gt;&lt;/span&gt;subs&amp;nbsp;&amp;nbsp;&amp;nbsp; pc, lr, #0x4&lt;/p&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;p class="vspace"&gt;The user &lt;span class="wikiword"&gt;ARM7&lt;/span&gt; interrupt vector is thus &lt;strong&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;0x03FFFFFC&lt;/span&gt;&lt;/strong&gt; (mirrors down into &lt;span class="wikiword"&gt;ARM7&lt;/span&gt; work RAM)&lt;/p&gt;
&lt;p class="vspace"&gt;&amp;nbsp;&lt;/p&gt;
&lt;p class="vspace"&gt;&amp;nbsp;&lt;/p&gt;
&lt;p class="vspace"&gt;&lt;strong&gt;&lt;span class="wikiword"&gt;ARM9&lt;/span&gt; Interrupt handler:&lt;/strong&gt;&lt;/p&gt;
&lt;p class="vspace"&gt;&amp;nbsp;&lt;/p&gt;
&lt;div class="code" style="margin-left: 2em;"&gt;
&lt;ul class="noindent"&gt;
&lt;li class="vspace"&gt;&lt;strong&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;stmdb&amp;nbsp;&amp;nbsp; sp!, {r0-r3, r12, lr}&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;
mrc&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; p15, 0, r0, c9, c1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; @ r0 = DTCM_BaseAddress + 0x4000&lt;br /&gt;
mov&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; r0, r0, lsr #12&lt;br /&gt;
mov&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; r0, r0, lsl #12&lt;br /&gt;
add&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; r0, r0, #0x4000&lt;br /&gt;
add&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; lr, pc, #0x0&lt;br /&gt;
&lt;strong&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;ldr&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; pc, [r0, #-0x4]&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; @ bl [DTCM_BaseAddress + 0x3FFC]&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;
&lt;strong&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;ldmia&amp;nbsp;&amp;nbsp; sp!, {r0-r3, r12, lr}&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;
subs&amp;nbsp;&amp;nbsp;&amp;nbsp; pc, lr, #0x4&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;p class="vspace"&gt;The user &lt;span class="wikiword"&gt;ARM9&lt;/span&gt; interrupt vector is thus at &lt;strong&gt;DTCM+0x3FFC&lt;/strong&gt;&lt;/p&gt;
&lt;p class="vspace"&gt;&lt;strong&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;In both cases, the BIOS flag word used in&lt;/span&gt;&lt;/strong&gt; &lt;a href="http://www.bottledlight.com/ds/index.php/Main/BIOS" class="wikilink"&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;&lt;strong&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;swi&lt;/span&gt;&lt;/strong&gt;&lt;/span&gt;&lt;/a&gt; &lt;strong&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;0x4 and 0x5 is 4 bytes before the interrupt vector.&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p class="vspace"&gt;&amp;nbsp;&#50948;&#50640;&#49436; &#48372;&#47732; &#50508; &#49688; &#51080;&#46319;&#51060;&amp;nbsp;R0, R1, R2, R3, R12,&amp;nbsp;lr&#51012; &#51200;&#51109;&#54616;&#44256; &#54648;&#46308;&#47084;&#47484; &#48512;&#47480;&#45796;&#51020;&amp;nbsp;&lt;strong&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;IntrMain&lt;/span&gt;&lt;/strong&gt;(&#48521;&#51008; &#49353;&#51004;&#47196; &#54364;&#49884;&#46108; &#48512;&#48516;)&#51012; &#48512;&#47476;&#45716; &#44163;&#51012; &#50508; &#49688; &#51080;&#45796;. &#44536; &#46244; &#45796;&#49884; &#49828;&#53469;&#50640;&#49436;&amp;nbsp;&#47112;&#51648;&#49828;&#53552;&#47484; &#45796; &#48373;&#50896;&#54620; &#45796;&#51020; &#47532;&#53556;&#54620;&#45796;. &#47784;&#46300; &#51204;&#54872;&#44284; &#44057;&#51008; &#53076;&#46300;&#44032; &#50630;&#45716; &#44152; &#48400;&#49436; libnds&#51032; &lt;strong&gt;interruptDispatcher.s&lt;/strong&gt; &#54028;&#51068;&#50640; &#51080;&#45716; &lt;strong&gt;IntrMain&lt;/strong&gt; &#54632;&#49688;&#47484; &#54840;&#52636;&#54624;&#46412;&#45716; IRQ &#49828;&#53469;&#51012;&amp;nbsp;&#49324;&#50857;&#54616;&#45716; &#49345;&#53468;&#51060;&#45796;.&lt;/p&gt;
&lt;p class="vspace"&gt;&amp;nbsp;System &#47784;&#46300;&#51032; &#49828;&#53469;&#51008; &#53468;&#49828;&#53356;&#47560;&#45796; &#48516;&#47532;&#46104;&#50612;&#51080;&#44592; &#46412;&#47928;&#50640;&amp;nbsp;&#51200;&#51109;&#54644;&#46020;&amp;nbsp;&#48324; &#47928;&#51228;&#44032; &#50630;&#51648;&#47564;&amp;nbsp;IRQ &#47112;&#48296;&#51032; &#49828;&#53469;&#51008; &#44277;&#53685;&#51201;&#51004;&#47196; &#49324;&#50857;&#54616;&#44592; &#46412;&#47928;&#50640; &#47564;&#50557; &#53440;&#51060;&#47672; IRQ&#50640;&#49436; &#45796;&#49884; &#45796;&#47480; IRQ&#44032; &#48156;&#49373;&#54616;&#50668; IRQ &#49828;&#53469;&#50640; &#45936;&#51060;&#53552;&#47484; PUSH&#45208; POP&#54616;&#47732; &#47928;&#51228;&#44032; &#48156;&#49373;&#54620;&#45796;.&lt;/p&gt;
&lt;p class="vspace"&gt;&amp;nbsp;&lt;/p&gt;
&lt;p class="vspace"&gt;&amp;nbsp;&#51068;&#45800; &#50948;&#54744;&#50640; &#45824;&#54644;&#49436;&#45716; &#50948;&#50640;&#49436; &#47566;&#51060; &#49444;&#47749;&#54664;&#51004;&#45768; Interrupt&#44032; &#48156;&#49373;&#54616;&#50668;&amp;nbsp;&lt;strong&gt;BIOS -&amp;gt; libnds&#51032; IntrMain -&amp;gt; MyTimerHandler&lt;/strong&gt; &#49692;&#49436;&#47196; &#54840;&#52636;&#46104;&#50632;&#51012; &#46412; System&#47784;&#46300;&#51032; &#49828;&#53469;&#44284;&amp;nbsp;IRQ&amp;nbsp;&#47784;&#46300;&#51032; &#49828;&#53469;&amp;nbsp;&#45236;&#50857;&#51012; &#54620;&#48264; &#48372;&#51088;.&lt;/p&gt;
&lt;p class="vspace" style="text-align: center;"&gt;&amp;nbsp;&lt;/p&gt;
&lt;p class="vspace" style="text-align: center;"&gt;&lt;img class="attachment" title="interrupt1.PNG" src="/pages/432888/attachments/183727" height="488" alt="interrupt1.PNG" width="720" /&gt;&amp;nbsp;&lt;/p&gt;
&lt;p class="vspace" style="text-align: center;"&gt;&lt;strong&gt;&amp;lt;&#49324;&#50857;&#51088; &#51064;&#53552;&#47101;&#53944; &#52376;&#47532; &#54632;&#49688;&#44620;&#51648; &#50772;&#51012; &#46412;&#51032; &#49828;&#53469;&#51032; &#47784;&#49845;&amp;gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p class="vspace" style="text-align: center;"&gt;&amp;nbsp;&lt;/p&gt;
&lt;p class="vspace" style="text-align: center;"&gt;&amp;nbsp;&lt;/p&gt;
&lt;p class="vspace"&gt;&amp;nbsp;&#50948;&#50640;&#49436; IRQ &#49828;&#53469;&#44284; System &#49828;&#53469; 2&#44060;&#47196; &#45208;&#45572;&#50612; &#51652; &#44163;&#51008;&amp;nbsp;&lt;strong&gt;libnds&lt;/strong&gt;&#51032; &lt;strong&gt;Handler&#54632;&#49688;(IntrMain)&lt;/strong&gt;&#50640; &#51032;&#54644;&#49436;&amp;nbsp;System &#47784;&#46300;&#47196; &#51204;&#54872;&#46104;&#44592; &#46412;&#47928;&#51060;&#45796;.&lt;/p&gt;
&lt;p class="vspace"&gt;&amp;nbsp;&#49324;&#50857;&#51088; &#54648;&#46308;&#47084; &#54632;&#49688;(My Handler)&#44032; &#48520;&#47536; &#49884;&#51216;&#51008; &#51060;&#48120; System &#47784;&#46300;&#47196; &#51204;&#54872;&#46108; &#49345;&#53468;&#51060;&#47728; &#49828;&#53469;&#50640;&amp;nbsp;System &#47784;&#46300;&#51032;&amp;nbsp;LR(R14) &#47112;&#51648;&#49828;&#53552;&#51032; &#44050;&#51060; &#49828;&#53469;&#50640; &#51200;&#51109;&#46104;&#50612;&#51080;&#45796;. &#53468;&#49828;&#53356; &#49828;&#50948;&#52845;&#51012; &#51060; &#49345;&#54889;&#50640;&#49436; &#49688;&#54665;&#54616;&#47140;&#47732; &#51200;&#51109;&#54616;&#45716; &#52968;&#53469;&#49828;&#53944;&#45716; IRQ&amp;nbsp;&#49828;&#53469;&#50640;&#49436; SPSR&#44284; R0~R3, R12, IRQ_LR&#51012; &#48764;&#49436; &#51200;&#51109;&#54644;&#50556; &#54616;&#44256; System &#49828;&#53469;&#50640;&#49436;&#45716; SYSEM_LR&#51012; &#48764;&#49436; &#51200;&#51109;&#54644;&#50556; &#54620;&#45796;.&lt;/p&gt;
&lt;p class="vspace"&gt;&amp;nbsp;&lt;/p&gt;
&lt;p class="vspace"&gt;&amp;nbsp;&lt;/p&gt;
&lt;p class="vspace"&gt;&amp;nbsp;&lt;/p&gt;
&lt;p class="vspace"&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 class="vspace"&gt;2.2&amp;nbsp;ARM&amp;nbsp;&#47784;&#46300;&#50752; THUMB &#47784;&#46300;&lt;/h3&gt;
&lt;p class="vspace"&gt;&amp;nbsp;&lt;/p&gt;
&lt;p class="vspace"&gt;&amp;nbsp;&lt;/p&gt;
&lt;p class="vspace"&gt;&amp;nbsp;&#44536;&#47088;&#45936; &#51060;&#44163;&#51060; &#45149;&#51060;&amp;nbsp;&#50500;&#45768;&#50632;&#45796;.&amp;nbsp;&#44540; 3&#51068; &#51221;&#46020;&#47484; &#49828;&#53469;&#51012; &#44228;&#49549; &#48372;&#47732;&#49436; &#44256;&#48124;&#54664;&#45716;&#45936;, &#44536;&#45285; &#47532;&#53556;&#51012; &#54644;&#49436;&#45716; &#51221;&#49345;&#51201;&#51004;&#47196; &#46041;&#51089;&#54616;&#51648;&amp;nbsp;&#50506;&#50520;&#45796;.&lt;/p&gt;
&lt;p class="vspace"&gt;&amp;nbsp;&#47952;&#44032; &#47928;&#51228;&#51068;&#44620;?&amp;nbsp;&#44536;&#47111;&#44172; 3&#51068;&#51012; &#44256;&#48124;&#54620; &#45149;&#50640;&amp;nbsp;ARM &#47784;&#46300;&#50752; THUMB &#47784;&#46300;&#51032; &#51204;&#54872;... &#51060;&#46972;&#45716; &#45236;&#50857;&#51060; &#47672;&#47532;&#47484; &#49828;&#52452;&#45796;.&amp;nbsp;&#52980;&#54028;&#51068; &#50741;&#49496;&#51012; &#48372;&#47732;&amp;nbsp;&#50864;&#47532;&#44032;&amp;nbsp;C&#47196; &#47564;&#46304; &#53468;&#49828;&#53356;&#45716; &#52980;&#54028;&#51068; &#50741;&#49496;&#50640; &#51032;&#54644; THUMB &#47784;&#46300;&#47196; &#46041;&#51089;&#54616;&#44172; &#46104;&#50612;&#51080;&#45796;. &#44536;&#47532;&#44256; ARM &#47784;&#46300;&#47196; &#52980;&#54028;&#51068;&#46108; &#53076;&#46300;&#47484; &#54840;&#52636;&#54624; &#49688; &#51080;&#46020;&#47197; Interwork &#46972;&#45716; &#50741;&#49496;&#46020; &#44057;&#51060; &#46308;&#50612;&#51080;&#45796;. &#51060; &#47568;&#51008; ARM&amp;nbsp;&#47784;&#46300;&#50752; THUMB &#47784;&#46300;&#47484; &#45336;&#45208;&#46308;&#47728; &#54632;&#49688;&#47484; &#54840;&#52636;&#54624; &#46412; &#51473;&#44036;&#50640; Proxy &#54632;&#49688;&#47484; &#51060;&#50857;&#54644;&#49436; &#54840;&#52636;&#54644;&#49436; &#51088;&#46041;&#51004;&#47196; &#52376;&#47532;&#54644; &#51456;&#45796;&#45716; &#51060;&#50556;&#44596;&#45936;.... &#51068;&#48152;&#51201;&#51064; &#54632;&#49688; &#54840;&#52636;&#50640;&#45716; &#53360; &#47928;&#51228;&#44032; &#50630;&#45716; &#44163; &#44057;&#50520;&#45796;. &#54616;&#51648;&#47564;... &#52968;&#53581;&#49828;&#53944; &#49828;&#50948;&#52845;&#51032; &#44221;&#50864;&#50640;&#45716; &#45796;&#47476;&#45796;. &#47112;&#51648;&#49828;&#53552; &#54616;&#45208;&#46972;&#46020; &#48373;&#44396;&#44032; &#51096;&#47803;&#46104;&#47732; &#44536;&#45285; &#53356;&#47000;&#49772;.. &#12636;_&#12636;...&lt;/p&gt;
&lt;p class="vspace"&gt;&amp;nbsp;&#51452;&#51032;&#54624; &#51216;&#51012; &#54616;&#45208;&#54616;&#45208; &#51665;&#50612;&#48372;&#46020;&#47197; &#54616;&#51088;.&lt;/p&gt;
&lt;p class="vspace"&gt;&amp;nbsp;&lt;/p&gt;
&lt;p class="vspace"&gt;&amp;nbsp;&lt;/p&gt;
&lt;p class="vspace"&gt;&amp;nbsp;&lt;/p&gt;
&lt;p class="vspace"&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 class="vspace"&gt;2.2.1&amp;nbsp;CPSR&#51032; &#49444;&#51221;&lt;/h3&gt;
&lt;p class="vspace"&gt;&amp;nbsp;C &#53076;&#46300;&#47196;&amp;nbsp;&#53468;&#49828;&#53356; &#54632;&#49688;&#47484; &#51089;&#49457;&#54624; &#44221;&#50864;&#45716; THUMB&amp;nbsp;&#47784;&#46300; &#53076;&#46300;&#44032; &#45208;&#50724;&#48064;&#47196; &#53468;&#49828;&#53356;&#47484; &#49892;&#54665;&#54624;&#46412; &#45817;&#50672;&#55176; CPU&#44032; THUMB &#47784;&#46300;&#47196; &#49444;&#51221;&#46104;&#50612;&#50556; &#54620;&#45796;.&amp;nbsp;&#46384;&#46972;&#49436;&amp;nbsp;&#48373;&#50896;&#54624; CPSR&#51032; &#49345;&#53468;&#47484; &lt;span style="color: rgb(0, 0, 255);"&gt;&lt;strong&gt;THUMB Bit&lt;/strong&gt;&lt;/span&gt;&#47484; &lt;strong&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;1&lt;/span&gt;&lt;/strong&gt;&#51012; &#53412;&#44256;&amp;nbsp;&lt;strong&gt;SYSTEM&amp;nbsp;&#47784;&#46300;(0x1F)&lt;span style="color: rgb(0, 0, 0);"&gt;&#47196; &#49444;&#51221;&#54644;&#50556; &#54620;&#45796;. &#44536;&#47088;&#45936; &#47564;&#50557; &#50612;&#49480;&#48660;&#47532;&#50612; &#53076;&#46300;&#47196; &#53468;&#49828;&#53356; &#54632;&#49688;&#47484; &#51089;&#49457;&#54616;&#45716; &#44221;&#50864;&#45716; &#50612;&#49480;&#48660;&#47532;&#50612; &#53076;&#46300;&#51032; &#49373;&#49457; &#50741;&#49496;(.ARM or .THUMB) &#44057;&#51008; &#50741;&#49496;&#50640; &#47582;&#44172; &#49444;&#51221;&#54644; &#51452;&#50612;&#50556; &#54620;&#45796;.&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p class="vspace"&gt;&amp;nbsp;&lt;/p&gt;
&lt;p class="vspace"&gt;&amp;nbsp;&lt;/p&gt;
&lt;p class="vspace"&gt;&amp;nbsp;&lt;/p&gt;
&lt;p class="vspace"&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 class="vspace"&gt;2.2.2&amp;nbsp;ARM &#47784;&#46300; &#53076;&#46300;&#50752; THUMB &#47784;&#46300; &#53076;&#46300;&lt;/h3&gt;
&lt;p class="vspace"&gt;&amp;nbsp;C &#53076;&#46300;(THUMB &#53076;&#46300;)&#50640;&#49436; &#50612;&#49480;&#48660;&#47532;&#50612; &#53076;&#46300;(ARM &#53076;&#46300;)&#47484; &#54840;&#52636;&#54616;&#47732; &#50612;&#46523;&#44172; &#46112;&#44620;? &#52980;&#54028;&#51068;&#47084;&#44032; &#51088;&#46041;&#51201;&#51004;&#47196; Proxy &#54632;&#49688;&#47484; &#49373;&#49457;&#54616;&#50668; &lt;strong&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;C &#54632;&#49688; &#53076;&#46300;(THUMB &#53076;&#46300;) -&amp;gt; THUMB/ARM &#48320;&#44221; &#53076;&#46300; -&amp;gt; &#50612;&#49480;&#48660;&#47532;&#50612; &#53076;&#46300;(ARM &#53076;&#46300;)&lt;/span&gt;&lt;/strong&gt;&#51032; &#49692;&#49436;&#47196; &#54840;&#52636;&#46104;&#44172; &#46108;&#45796;. &#50668;&#44592;&#49436; &#51104;&#44624; &#49373;&#44033;&#54644; &#48380; &#44163;&#51060; Proxy &#54632;&#49688;&#47484; &#44144;&#52824;&#47732; &#49345;&#53468; &#44050;&#51060; &#49332;&#51677; &#48148;&#45072;&#45796;&#45716; &#44163;&#51060;&#45796;.&amp;nbsp; &#50668;&#44592;&#50640; &#45824;&#54620; &#51088;&#49464;&#54620; &#45236;&#50857;&#51008;&amp;nbsp;&lt;a href="/pages/437975" class="wiki" title="&#52280;&#44256;. THUMB &#53076;&#46300;&#50752; ARM &#53076;&#46300; &#48143; &#49345;&#54840; &#54840;&#52636;(Interwork)"&gt;&lt;strong&gt;&#52280;&#44256;. THUMB &#53076;&#46300;&#50752; ARM &#53076;&#46300; &#48143; &#49345;&#54840; &#54840;&#52636;(Interwork)&lt;/strong&gt;&lt;/a&gt;&amp;nbsp;&#48512;&#48516;&#51012; &#52280;&#44256; &#54616;&#46020;&#47197; &#54616;&#51088;. &#46384;&#46972;&#49436; &#51060; &#48512;&#48516;&#50640; &#45824;&#54620; &#52376;&#47532;&#46020; &#54644;&#51480;&#50556; &#54616;&#48064;&#47196; &#49345;&#45817;&#55176; &#48373;&#51105;&#54644; &#51652;&#45796;.&lt;/p&gt;
&lt;p class="vspace"&gt;&amp;nbsp;&lt;/p&gt;
&lt;p class="vspace"&gt;&amp;nbsp;&lt;/p&gt;
&lt;p class="vspace"&gt;&amp;nbsp;&#50612;&#49480;&#48660;&#47532;&#50612; &#53076;&#46300;&#45716; .ARM &#47784;&#46300;&#50640;&#49436; &#51089;&#49457;&#46104;&#50612; &#47784;&#46304; &#47112;&#51648;&#49828;&#53552;&#47484; &#45796; &#51200;&#51109;&#54616;&#44256; &#48373;&#44396;&#54616;&#46020;&#47197; &#46104;&#50612;&#51080;&#45796;. &#54616;&#51648;&#47564; &#53440;&#51060;&#47672; &#51064;&#53552;&#47101;&#53944;&#50640; &#51032;&#54644; &#48520;&#47532;&#50612;&#51648;&#45716; C &#54632;&#49688;&#45716; THUMB &#47784;&#46300;&#47196; &#52980;&#54028;&#51068; &#46104;&#50632;&#44256;, &#51060; C &#54632;&#49688;&#47484; &#48520;&#47084;&#51452;&#45716; &#51064;&#53552;&#47101;&#53944; &#54632;&#49688;&#45716; ARM &#47784;&#46300;&#50640;&#49436; &#52980;&#54028;&#51068; &#46108; &#54648;&#46308;&#47084; &#47336;&#54004;&#51060;&#45796;.&lt;/p&gt;
&lt;p class="vspace"&gt;&amp;nbsp;&lt;/p&gt;
&lt;p class="vspace"&gt;&amp;nbsp;&lt;/p&gt;
&lt;p class="vspace"&gt;&amp;nbsp;&lt;/p&gt;
&lt;p class="vspace"&gt;&amp;nbsp;&#51060;&#52196;&#46104;&#47732; &#44264;&#52824;&#44032; &#51648;&#45128; &#50500;&#54028;&#51648;&#44256; &#49789;&#51648; &#50506;&#51012;&#44732;&#46972;&#45716; &#49373;&#44033;&#51060; &#46308;&#53584;&#45936;... &#51060; &#47928;&#51228; &#46412;&#47928;&#50640; 3&#51068;&#51012; &#44256;&#49373;&#54664;&#45796;. &#44208;&#44397;&#51008; &#50836;&#47161;&#51004;&#47196; &#54644;&#44208;&#54616;&#44596; &#54664;&#51648;&#47564;... ARM&amp;nbsp;&#47784;&#46300;&#50752; THUMB &#47784;&#46300;&#47484; &#48264;&#44040;&#50500;&#44032;&#47728; &#49324;&#50857;&#54624; &#46412; &#53468;&#49828;&#53356; &#49828;&#50948;&#52845;&#51060; &#51060;&#47111;&#44172; &#55192;&#46304; &#51460; &#47792;&#46992;&#45796;.&lt;/p&gt;
&lt;p class="vspace"&gt;&amp;nbsp;&lt;/p&gt;
&lt;p class="vspace"&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 class="vspace"&gt;2.2.3&amp;nbsp;&#53468;&#49828;&#53356; &#49828;&#50948;&#52845;(Task Switching)&amp;nbsp;&#53076;&#46300;&lt;/h3&gt;
&lt;p class="vspace"&gt;&#54620;&#52280;&#51012; &#44256;&#49373;&#54620; &#46244;&#50640; &#45208;&#50728; &#49548;&#49828;&#44032; &#50500;&#47000;&#51032; &#53468;&#49828;&#53356; &#49828;&#50948;&#52845; &#53076;&#46300;&#51060;&#45796;.&lt;/p&gt;
&lt;ol class="code"&gt;
&lt;li&gt;
&lt;p&gt;@---------------------------------------------------------------------------------&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; .section ".text"&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; .global SwitchTask&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; .global SwitchTask2&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; .global isrTimerInAsm&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; .extern isrTimerInC&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; .global g_dwCurTask&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; .global g_dwNextTask&lt;br /&gt;
@---------------------------------------------------------------------------------&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; .align&amp;nbsp; 4&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; .arm&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;@ Timer Interrupt&#50640;&#49436; &#48148;&#47196; &#54840;&#52636;&#54644; &#51452;&#45716; &#54632;&#49688;&lt;br /&gt;
isrTimerInAsm:&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; PUSH { LR }&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;strong&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;BL isrTimerInC&lt;/span&gt;&lt;/strong&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br /&gt;
&lt;strong&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; LDR R0, g_dwCurTask&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; LDR R1, g_dwNextTask&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; CMP R1, #0&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; BEQ TIMEREND&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ADD R2, SP, #0x04&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; bl SwitchTask2&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; TIMEREND:&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; POP { LR }&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; BX LR&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;/*&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; Switch Task&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; SYSTEM_R0-R14(LR), IRQ_R14, SPSR &#49692;&#49436;&#47196; &#51200;&#51109;&#54620;&#45796;.&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; IME&#44032; &#48520;&#44032;&#46108; &#49345;&#53468;&#50640;&#49436; &#54840;&#52636;&#54616;&#47732; &#50504;&#46108;&#45796;.&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &#51060; &#54632;&#49688;&#44032; &#45149;&#45208;&#47732; &#44032;&#45733;&#49345;&#53468;&#47196; &#48148;&#45068;&#44592; &#46412;&#47928;&#51060;&#45796;.&amp;nbsp;&amp;nbsp;&lt;br /&gt;
*/&lt;br /&gt;
&lt;strong&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;SwitchTask2:&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; // &#51064;&#53552;&#47101;&#53944; &#48520;&#44032; &#49444;&#51221;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; MOV R3, #0x4000000&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; STR R3, [ R3, #0x208 ]&amp;nbsp;&amp;nbsp;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; MOV SP, R2&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; POP { LR }&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; // System &#47784;&#46300; &#47112;&#51648;&#49828;&#53552;&#47484; &#51200;&#51109;&#54620;&#45796;.&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; // R4-R14 &#51200;&#51109;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; ADD R3, R0, #16&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; STMIA R3, { R4-R14 }^&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; MRS R3, CPSR&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; BIC R3, R3, #0xDF&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; ORR R3, R3, #0x92&amp;nbsp;&amp;nbsp; // ISR &#47784;&#46300;&#47196; &#48320;&#44221;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; MSR CPSR, R3&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; LDMFD SP!, { R5-R6, R7 }&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; //STR R6, [ R7, #0x208 ]&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; // SPSR &#51200;&#51109;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; //MSR SPSR, R0&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; STR R5, [ R0, #64 ]&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; // R0-R3, R12, IRQ_LR &#51200;&#51109;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; LDMFD SP!, { R5-R8, R12, LR }&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; STMIA R0, { R5-R8 }&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; STR R12, [ R0, #48 ]&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; SUB LR, LR, #0x04&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; STR LR, [ R0, #60 ]&lt;br /&gt;
&lt;strong&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; // &#50668;&#44592;&#44620;&#51648; &#50724;&#47732; &#51200;&#51109; &#45149;...&lt;/strong&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;strong&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; // &#50668;&#44592;&#49436; &#48512;&#53552;&#45716; &#48373;&#50896; &#49884;&#51089;..&lt;/span&gt;&lt;/strong&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; // SPSR &#48373;&#50896;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; LDR R5, [ R1, #64 ]&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; MSR SPSR, R5&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; LDR LR, [ R1, #60 ]&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; // &#51064;&#53552;&#47101;&#53944; &#44032;&#45733; &#49444;&#51221;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; MOV R3, #0x4000001&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; STR R3, [ R3, #0x207 ]&amp;nbsp;&amp;nbsp;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br /&gt;
&amp;nbsp;&lt;strong&gt;&amp;nbsp;&amp;nbsp; &lt;span style="color: rgb(0, 0, 255);"&gt;LDMIA R1, { R0-R14 }^&lt;/span&gt;&lt;/strong&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; //SUBS PC, LR, #0x00&amp;nbsp;&amp;nbsp;&lt;br /&gt;
&lt;strong&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; MOVS PC, LR&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;&lt;br /&gt;
/**&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; Task Switch&#50857; &#45936;&#51060;&#53552;&#47484; &#51200;&#51109;&#54616;&#45716; &#44277;&#44036;&lt;br /&gt;
*/&lt;br /&gt;
&lt;strong&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;g_dwCurTask:&lt;/span&gt;&lt;/strong&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; nop&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; nop&lt;br /&gt;
&lt;strong&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;g_dwNextTask:&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; nop&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; nop&lt;/li&gt;
&lt;/ol&gt;
&lt;p class="vspace"&gt;&amp;nbsp; &#44036;&#45800;&#54620; &#50500;&#51060;&#46356;&#50612;&#45716; &#50500;&#47000;&#50752; &#44057;&#45796;.&lt;/p&gt;
&lt;ul style="margin-left: 1em;"&gt;
&lt;li&gt;libnds&#50640; &#51032;&#54644; &#54840;&#52636;&#46104;&#45716; &lt;strong&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;&#53440;&#51060;&#47672; &#51064;&#53552;&#47101;&#53944; &#54648;&#46308;&#47084;&lt;/span&gt;&lt;/strong&gt;&#45716; &lt;strong&gt;ARM &lt;span style="color: rgb(0, 0, 255);"&gt;&#53076;&#46300;&lt;/span&gt;&lt;/strong&gt;&#47196; &#51089;&#49457;&#54620;&#45796;.&lt;/li&gt;
&lt;li&gt;&#49828;&#52992;&#51460;&#47553;&#51012; &#53685;&#54644; &#49828;&#50948;&#52845;&#54624; &#53468;&#49828;&#53356;&#51032; &#48320;&#49688;&#47484; &#49444;&#51221;&#54616;&#44256; &#44592;&#53440; &#52376;&#47532;&#47484;&#54616;&#45716; &#54632;&#49688;&#45716; C&#47196; &#51089;&#49457;&#54620;&#45796;.(&lt;strong&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;THUMB&amp;nbsp;&#53076;&#46300;&lt;/span&gt;&lt;/strong&gt;&#44032; &#46108;&#45796;.)&lt;/li&gt;
&lt;li&gt;&#49828;&#52992;&#51460;&#47553; &#54632;&#49688;&#50640;&#49436;&#45716; &#51204;&#50669; &#48320;&#49688; &lt;strong&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;g_dwCurTask, g_dwNextTask&lt;/span&gt;&lt;/strong&gt;&amp;nbsp;&#48320;&#49688;&#50640; &#53468;&#49828;&#53356; &#49828;&#50948;&#52845;&#54624; &#53468;&#49828;&#53356; &#44396;&#51312;&#52404;&#47484; &#45347;&#50612;&#49436; &#47532;&#53556;&#54620;&#45796;.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;&#53440;&#51060;&#47672;&amp;nbsp;&#54648;&#46308;&#47084; &#54632;&#49688;(ARM &#53076;&#46300;)&lt;/span&gt;&lt;/strong&gt;&#50640;&#49436;&#50640;&amp;nbsp;&#51204;&#50669; &#48320;&#49688; &lt;span style="color: rgb(0, 0, 255);"&gt;&lt;strong&gt;g_dwCurTask, g_dwNextTask&lt;/strong&gt;&lt;span style="color: rgb(0, 0, 0);"&gt;&#47484;&amp;nbsp;&#51060;&#50857;&#54616;&#50668;&lt;strong&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;&amp;nbsp;&#53468;&#49828;&#53356; &#49828;&#50948;&#52845; &#54632;&#49688;(ARM&amp;nbsp;&#53076;&#46300;)&lt;/span&gt;&lt;/strong&gt;&#47484; &#54840;&#52636;&#54620;&#45796;.&amp;nbsp;&lt;/span&gt;&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;&#53468;&#49828;&#53356; &#49828;&#50948;&#52845; &#54632;&#49688;&#47196; &#46308;&#50612;&#50724;&#47732; &#49828;&#53469; &#44396;&#51312;&#45716; &#50948; &#44536;&#47548;&#50640;&#49436;&amp;nbsp;&#48372;&#45716; &#44163;&#44284; &#44057;&#51008; &#54805;&#53468;&#47196; &#46104;&#50612;&#51080;&#51004;&#48064;&#47196;&amp;nbsp;IRQ &#47784;&#46300; &#48143;&amp;nbsp;SYSTEM &#47784;&#46300;&#47484; &#50724;&#44032;&#47732;&#49436; &#53468;&#49828;&#53356;&#47484;&amp;nbsp;&#51200;&#51109;&#54616;&#44256; &#48373;&#50896;&#54620;&#45796;.&lt;/li&gt;
&lt;li&gt;THUMB &#47784;&#46300;&#50640;&#49436; &#51060; &#54632;&#49688;&#47484; &#54840;&#52636; &#54624; &#44221;&#50864;&#50640;&#45716; Proxy &#54632;&#49688;(THUMB&#50640;&#49436; ARM &#47784;&#46300;&#47196;&amp;nbsp;&#48320;&#44221;&#54616;&#45716; &#54632;&#49688;)&#47484; &#53685;&#54644; &#54840;&#52636;&#46104;&#48064;&#47196;&amp;nbsp;&#47784;&#46300;&#44032; &#48320;&#44221;&#46104;&#50612; &#54840;&#52636;&#46108;&#45796;. &#46384;&#46972;&#49436; &#51060; THUMB &#47784;&#46300; &#54632;&#49688;&#50640;&#49436; &#53468;&#49828;&#53356; &#49828;&#50948;&#52845; &#54632;&#49688;(ARM &#53076;&#46300;)&#47484; &#48512;&#47476;&#44172; &#46104;&#47732; &#47784;&#46300; &#51204;&#54872;&#44057;&#51008; &#44260;&#46976;&#54620; &#47928;&#51228;&#44032; &#49373;&#44592;&#48064;&#47196; &#50557;&#44036; &#44260;&#46976;&#54616;&#45796;. &#51060;&#47484; &#54588;&#54616;&#44592; &#50948;&#54644; &#45236;&#44032; &#47564;&#46304; &#53440;&#51060;&#47672; &#51064;&#53552;&#47101;&#53944; &#54648;&#46308;&#47084; &#54632;&#49688;(&lt;strong&gt;ARM &#53076;&#46300;&lt;/strong&gt;)&#50640;&#49436; &#53468;&#49828;&#53356; &#49828;&#50948;&#52845; &#54632;&#49688;&#47484; &#54840;&#52636;&#54616;&#50668;&#51456;&#45796;.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&#47564;&#50557; &#49828;&#52992;&#51460;&#47084;&#44032; NULL &#44050;&#51012; &#51204;&#50669; &#48320;&#49688; &lt;strong&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;g_dwNextTask&lt;/span&gt;&lt;/strong&gt;&#47196;&amp;nbsp;&#49444;&#51221;&#54616;&#47732;&amp;nbsp;&#53468;&#49828;&#53356; &#49828;&#50948;&#52845;&#51012; &#54840;&#52636;&#54616;&#51648; &#50506;&#44256; &#51221;&#49345;&#51201;&#51064; &#47336;&#53944;&#47196; &#47532;&#53556;&#51012; &#54616;&#50668; &#46028;&#50500;&#44036;&#45796;.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;THUMB &#47784;&#46300;&#50640;&#49436; ARM &#47784;&#46300;&#47196; &#51060;&#46041;&#54664;&#51012;&#46412; Proxy&#47484; &#49324;&#50857;&#54620;&#45796;&#45716; &#44163;&#51008; &#50508;&#44256; &#51080;&#50632;&#51648;&#47564;... &#44536;&#44172; &#51060;&#47111;&#44172; &#53360; &#47928;&#51228;&#47484; &#51068;&#51004;&#53420;&#51460;&#51008; &#47792;&#46992;&#45796;. &#45800;&#49692;&#54620; &#54632;&#49688;&#51032; &#54840;&#52636;&#44057;&#51008; &#47928;&#51228;&#45716; &#53356;&#44172; &#44288;&#44228; &#50630;&#51648;&#47564;... &#52968;&#53581;&#49828;&#53944; &#49828;&#50948;&#52845;&#51032; &#44221;&#50864;&#45716; &#49464;&#49464;&#54620; &#48512;&#48516;&#44620;&#51648; &#49888;&#44221;&#51012; &#50024;&#51480;&#50556; &#54616;&#45716; &#48512;&#48516;&#51064;&#45936;... &#51060;&#47111;&#44172; &#46104;&#45768; &#50756;&#51204; &#45576;&#47932;&#51060; &#45208;&#45716;... &#12636;_&#12636;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2&gt;3.&#49828;&#52992;&#51460;&#47084;(Scheduler) &#48143; &#53468;&#49828;&#53356;(Task) &#54632;&#49688;&#46308;...&lt;/h2&gt;
&lt;p&gt;&amp;nbsp;&#49828;&#52992;&#51460;&#47084;&#51032; &#44592;&#48376;&#54805;&#53468;&#45716;&amp;nbsp;OS &#54532;&#47112;&#51076;&#50892;&#53356;&#51032; &#49548;&#49828;&#47484; &#44536;&#45824;&#47196; &#46384;&#47476;&#44256; &#51080;&#45796;. &#49828;&#52992;&#51460;&#47553; &#50508;&#44256;&#47532;&#51608;&#51008; &#46972;&#50868;&#46300; &#47196;&#48712;&#51032; &#54805;&#53468;&#47484; &#46916;&#44256; &#51080;&#44256; &#51648;&#44552; &#52572;&#45824;&amp;nbsp;5&#44060;&#44620;&#51648; &#49373;&#49457; &#44032;&#45733;&#54616;&#46020;&#47197; &#46104;&#50612;&#51080;&#45796;. &#49828;&#52992;&#51460;&#47084;&#50640; &#45824;&#54620; &#51088;&#49464;&#54620; &#45236;&#50857;&#51008;&amp;nbsp;&lt;a href="/pages/355562" class="wiki" title="Part14. Tutorial2-&#47680;&#54000; &#53468;&#49828;&#53433;(Multi Tasking) &#44592;&#45733;&#51012; &#52628;&#44032;&#54644; &#48372;&#51088;"&gt;&lt;strong&gt;Part14. Tutorial2-&#47680;&#54000; &#53468;&#49828;&#53433;(Multi Tasking) &#44592;&#45733;&#51012; &#52628;&#44032;&#54644; &#48372;&#51088;&lt;/strong&gt;&lt;/a&gt;&#51032; &amp;nbsp;&#45236;&#50857;&#51012; &#49332;&#54196;&#48372;&#47732; &#46108;&#45796;.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3&gt;3.1&amp;nbsp;&#53468;&#49828;&#53356; &#46321;&#47197;&amp;nbsp;&#48143; &#53440;&#51060;&#47672;&#51032; &#52376;&#47532;&lt;/h3&gt;
&lt;p&gt;&amp;nbsp;ARM9&#51032; main.cpp &#54028;&#51068;&#51012; &#48372;&#47732; &#53440;&#51060;&#47672;&#47484; &#49444;&#51221;&#54616;&#44256; &#53440;&#51060;&#47672; &#54648;&#46308;&#47084;&#47484; &#46321;&#47197;&#54616;&#45716; &#48512;&#48516;&#51060; &#51080;&#45796;.&lt;/p&gt;
&lt;ol class="code"&gt;
&lt;li&gt;// Timer&#51032; Tick Interval 20ms&lt;br /&gt;
&lt;strong&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;#define TIMER_TICKINTERVAL_MS&amp;nbsp;20&lt;/span&gt;&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;/**&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; Timer&#51032; &#54648;&#46308;&#47084;&lt;br /&gt;
*/&lt;br /&gt;
extern "C" DWORD isrTimerInC( void )&lt;br /&gt;
{&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; char vcBuffer[ 2 ];&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; REG_IF |= IRQ_TIMER0;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; VBLANK_INTR_WAIT_FLAGS |= IRQ_TIMER0;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br /&gt;
&lt;strong&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; g_uiTimerCount++;&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; vcBuffer[ 1 ] = 0;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; vcBuffer[ 0 ] = g_uiTimerCount &amp;amp; 0x7F;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; // &#53440;&#51060;&#47672;&#44032; &#46028;&#50500;&#44032;&#44256; &#51080;&#45796;&#45716; &#44163;&#51012; &#54364;&#49884;&#54620;&#45796;.&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; SUBPRINT( 41, 0, vcBuffer );&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; // &#49828;&#52992;&#51460;&#47084;&#47484; &#54840;&#52636;&#54620;&#45796;.&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; Scheduler();&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; return 0;&lt;br /&gt;
}&lt;/li&gt;
&lt;li&gt;&lt;br /&gt;
/**&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; IRQ&#47484; &#49444;&#51221;&#54620;&#45796;.&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &#49888;&#48260;&#51204;.. libnds&#51032; &#47336;&#54004;&#51012; &#49324;&#50857;&#54616;&#46020;&#47197; &#49688;&#51221;&lt;br /&gt;
*/&lt;br /&gt;
void SetIrq( void )&lt;br /&gt;
{&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; // &#51064;&#53552;&#47101;&#53944; &#48520;&#44032; &#49444;&#51221;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; REG_IME = 0;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; irqInit();&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; irqSet( IRQ_VBLANK, isrVBlank );&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; irqEnable( IRQ_VBLANK );&lt;br /&gt;
&lt;strong&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; irqSet( IRQ_TIMER0, isrTimerInAsm );&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; irqEnable( IRQ_TIMER0 );&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/strong&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br /&gt;
&lt;strong&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; // 20 ms &#47560;&#45796; &#54620;&#48264;&#50473; &#53888;&#46020;&#47197; &#54620;&#45796;.&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; TIMER0_DATA = TIMER_FREQ_256( 1000 / TIMER_TICKINTERVAL_MS );&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; // &#53580;&#49828;&#53944; &#50857;&#51004;&#47196; &#48516;&#51452;&#47484; &#51328; &#45720;&#47140;&#49436; &#52380;&#52380;&#55176; &#53888;&#44172; &#54664;&#45796;.&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; TIMER0_CR = TIMER_ENABLE | TIMER_IRQ_REQ | TIMER_DIV_256;&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; REG_IF |= 0xFFFFFFFF;&lt;br /&gt;
&lt;strong&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; REG_IME = 1;&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;
}&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;&amp;nbsp;&#45800;&#49692;&#55176; &#53440;&#51060;&#47672;&#47484;&amp;nbsp;20ms &#47560;&#45796; &#53888;&#46020;&#47197; &#49444;&#51221;&#54644; &#45459;&#44256;&amp;nbsp;isrTimerInC &#54632;&#49688;&#50640;&#49436; &#49828;&#52992;&#51460;&#47084; &#54632;&#49688;&#47484; &#48512;&#47476;&#45716; &#44163;&#51012; &#48380; &#49688; &#51080;&#45796;. &#49828;&#52992;&#51460;&#47084; &#54632;&#49688;&#45716; g_dwCurTask &#48143; g_dwNextTask &#50640; &#49828;&#50948;&#52845; &#54624; &#53468;&#49828;&#53356;&#46308;&#51012; &#49444;&#51221;&#54644;&#49436; &#47532;&#53556;&#54620;&#45796;. &lt;strong&gt;isrTimerInC&lt;/strong&gt; &#54632;&#49688;&#44032; &#47532;&#53556;&#46104;&#44256; &#45208;&#47732; &#50948;&#50640;&#49436; &#49444;&#47749;&#54664;&#45912; &lt;strong&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;isrTimerInAsm&lt;/span&gt;&lt;/strong&gt; &#54632;&#49688;&#50640;&#49436; &#49892;&#51228;&#47196; &#49828;&#50948;&#52845;&#54616;&#45716; &#54632;&#49688;&#47484; &#48512;&#47476;&#44172; &#46108;&#45796;.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3&gt;3.2&amp;nbsp;Snake &#44172;&#51076;&lt;/h3&gt;
&lt;p&gt;&amp;nbsp;&#50896;&#47000; Snake &#44172;&#51076;&#51008; &#44844;&#47532;&#44032; &#44600;&#50612;&#51648;&#44256; &#51216;&#51216; &#49324;&#44284;&#44032; &#45720;&#50612;&#45208;&#44256; &#44536;&#47000;&#50556; &#54616;&#51648;&#47564;.... &#45236;&#44032; &#47564;&#46304; Snake &#44172;&#51076;&#51008;... &#44844;&#47532;&#46020; &#50504; &#44600;&#50612;&#51648;&#44256; &#49324;&#44284;&#47564; &#47673;&#51004;&#47732; &#46108;&#45796;. &#49324;&#44284;(&#45433;&#49353; &lt;strong&gt;&lt;span style="color: rgb(153, 204, 102);"&gt;&lt;span style="color: rgb(0, 128, 0);"&gt;$&lt;/span&gt;&lt;/span&gt;&lt;/strong&gt; &#54364;&#49884;)&#47484; &#45796; &#47673;&#51004;&#47732; &#47673;&#51008; &#49324;&#44284;&#51032; &#44060;&#49688;&#50752; Play&#54616;&#45716;&#45936; &#44152;&#47536; &#49884;&#44036;&#51060; &#54364;&#49884;&#46108;&#45796;. &#49324;&#44284;&#47484; &#45796; &#47673;&#44592; &#51204;&#50640; &#48317;(&#54616;&#50560;&#49353; #)&#50640; &#48512;&#46378;&#55176;&#44172;&#46104;&#47732; &#44172;&#51076;&#51060; &#51333;&#47308;&#46104;&#48064;&#47196; &#51452;&#51032;&#54644;&#50556; &#54620;&#45796;. &#44172;&#51076;&#51060; &#51333;&#47308;&#46104;&#47732; A &#48260;&#53948;&#51012; &#45572;&#47476;&#47732; &#45796;&#49884; &#44172;&#51076;&#51012; &#51228;&#44060;&#54624; &#49688; &#51080;&#45796;.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&#51228;&#51068; &#51452;&#51032;&#54624; &#51216;&#51008;.... &lt;strong&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;&#51473;&#46021;&#49457;&#51060; &#51080;&#51004;&#45768; &#51088;&#51228;&#47484; &#54644;&#50556;&#54620;&#45796;&#45716; &#44163;&#51060;&#45796;.&amp;nbsp;&#49884;&#44036; &#44081;&#49888;&#50640; &#55192;&#50416;&#45796;&#48372;&#47732; &#53360;&#51068;&#51060; &#49373;&#44592;&#45768; &#51201;&#45817;&#55176; &#54616;&#46020;&#47197; &#54616;&#51088;. @0@)/~~&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3&gt;3.3 &#44592;&#53440; &#53580;&#49828;&#53356;&lt;/h3&gt;
&lt;p&gt;&amp;nbsp;&#45796;&#47480; &#53580;&#49828;&#53356;&#46308;&#51008; &#47588;&#50864; &#44036;&#45800;&#54620; &#51068;&#47564; &#54616;&#45716; &#53580;&#49828;&#53356;&#51060;&#48064;&#47196; &#44403;&#51060; &#49444;&#47749;&#51012; &#54616;&#51648; &#50506;&#44192;&#45796;. &#49548;&#49828;&#47484; &#48372;&#47732; &#49789;&#44172; &#51060;&#54644;&#44032; &#46112;&#53552;&#51060;&#45768;...(&#54616;&#45716; &#51068;&#46020; &#48324;&#47196; &#50630;&#44256;.. &#12641;_&#12641;;;;)&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2&gt;4.&#49892;&#54665;&#54868;&#47732;&lt;/h2&gt;
&lt;p style="text-align: center;"&gt;&amp;nbsp;&lt;img class="attachment" title="NDSKernel1.png" src="/pages/432888/attachments/184350" alt="NDSKernel1.png" /&gt;&amp;nbsp; &lt;img class="attachment" title="NDSKernel2.png" src="/pages/432888/attachments/184351" alt="NDSKernel2.png" /&gt;&lt;/p&gt;
&lt;p style="text-align: center;"&gt;&lt;strong&gt;&amp;lt;NDS&amp;nbsp;&#52964;&#45328;&#51032; &#49892;&#54665;&#54868;&#47732;&amp;gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;NDS &#52964;&#45328;&#51012; &#49892;&#54665;&#54616;&#47732; &#50948;&#50752; &#44057;&#51008; &#54868;&#47732;&#51060;&amp;nbsp;&#45208;&#50728;&#45796;. &#52509;&amp;nbsp;5&#44060;&#51032; &#53468;&#49828;&#53356;&#44032; &#46028;&#50500;&#44032;&#45716; &#54868;&#47732;&#51060;&#47728; &#44033; &#53468;&#49828;&#53356;&#45716; &#50500;&#47000;&#50752; &#44057;&#51008; &#50948;&#52824;&#50640; &#51080;&#45796;.&lt;/p&gt;
&lt;p style="text-align: center;"&gt;&lt;img class="attachment" title="NDSKernel3.png" src="/pages/432888/attachments/184352" alt="NDSKernel3.png" /&gt;&lt;/p&gt;
&lt;p style="text-align: center;"&gt;&lt;strong&gt;&amp;lt;NDS &#52964;&#45328;&#51032; &#44033; &#53468;&#49828;&#53356;&amp;gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&#50948;&#51032; &#48521;&#51008; &#49353; &#49324;&#44033;&#54805; &#54616;&#45208;&#54616;&#45208;&#44032; &#45796; &#44060;&#48324;&#51201;&#51064; &#53468;&#49828;&#53356;&#47196; &#46041;&#51089;&#54616;&#47728; &#49884;&#48516;&#54624; &#49828;&#52992;&#51460;&#47553; &#44592;&#48277;&#51012; &#51060;&#50857;&#54616;&#50668; &#46041;&#49884;(??)&#50640; &#46041;&#51089;&#54620;&#45796;. &#53945;&#55176; Task3&#48264;&#51032; &#44221;&#50864;&#45716; 2&#52488;&#47560;&#45796; &#49324;&#50868;&#46300;&#47484; &#52636;&#47141;&#54616;&#46020;&#47197; &#46104;&#50612;&#51080;&#44592; &#46412;&#47928;&#50640; &#51452;&#44592;&#51201;&#51004;&#47196; &#50872;&#47532;&#45716; &#49548;&#47532;&#47484; &#46308;&#51012; &#49688; &#51080;&#45796;.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2&gt;5.&#52628;&#44032;&#49324;&#54637;&lt;/h2&gt;
&lt;h3&gt;5.1&amp;nbsp;2007/08/29 &#52628;&#44032; &#49324;&#54637;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Snake &#44172;&#51076;&#50640;&amp;nbsp;&#48372;&#44544;&#48372;&#44544; &#48176;&#44221;&#51020;&#50501; &#52628;&#44032;&lt;/li&gt;
&lt;li&gt;Task3&#51008; &#48176;&#44221;&#51020;&#50501;&#51012; &#48152;&#48373;&#54616;&#45716; &#51452;&#44592;&#47484; 50&#52488;&#47196; &#49444;&#51221;&#54632;. &#48372;&#44544; &#48372;&#44544; &#48176;&#44221;&#51020;&#50501;&#51060; 47&#52488; &#44032;&#47049;&#51060;&#46972;&#49436; 2~3&#52488;&amp;nbsp;Delay&#44032; &#49373;&#44608;&lt;/li&gt;
&lt;li&gt;Snake&#44032; &#50880;&#51649;&#51068; &#46412; &#50880;&#51649;&#51060;&#45716; &#49548;&#47532; &#52628;&#44032;&lt;/li&gt;
&lt;li&gt;Snake&#44032; &#51453;&#51012; &#46412; &#51453;&#45716; &#49548;&#47532; &#52628;&#44032;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2&gt;5.&#52392;&#48512;&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="/pages/432888/attachments/186343" class="attachment" title="NDSKernel.zip"&gt;&lt;strong&gt;NDSKernel.zip&lt;/strong&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="/pages/432888/attachments/185395" class="attachment" title="nds_interrupt.ppt"&gt;&lt;strong&gt;nds_interrupt.ppt&lt;/strong&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;&lt;a href="/pages/432888/attachments/264943" class="attachment" title="NDSKernelPlay-small.avi"&gt;NDSKernelPlay-small.avi&lt;/a&gt;&amp;nbsp;: NDS Kernel Play &#46041;&#50689;&#49345;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
</description>
      <pubDate>Tue, 25 Nov 2008 18:20:58 +0900</pubDate>
      <link>http://kkamagui.springnote.com/pages/432888</link>
      <guid>http://kkamagui.springnote.com/pages/432888</guid>
    </item>
    <item>
      <title>00 KKAMAGUI &#49548;&#44060;</title>
      <description>&lt;h2&gt;&#51060;&#49324;&#54620; &#49548;&#44048;&lt;/h2&gt;
&lt;p&gt;&#50504;&#45397;&#54616;&#49464;&#50836; &#44620;&#47560;&#44396;&#51077;&#45768;&#45796;. ^&#12641;^&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&#51648;&#51064;&#46308;&#51032;&amp;nbsp;&#48660;&#47196;&#44536;&#47484; &#46168;&#47084;&#48372;&#45796;&#44032; &#50668;&#44592;&#44620;&#51648; &#50724;&#44172; &#46104;&#50632;&#45348;&#50836;.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&#50715;&#45216; &#54924;&#49324;&#50640;&#49436;&amp;nbsp;&#50948;&#53412;&#47484; &#51060;&#50857;&#54644;&#49436;&amp;nbsp;&#51648;&#49885;&#44288;&#47532;&#49884;&#49828;&#53596;&#51012; &#44396;&#52629;&#54664;&#50632;&#45716;&#45936;, &#44536;&#44144;&#46993; &#45712;&#45196;&#51060; &#48708;&#49847; @0@.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&#50500;&#51452; &#47564;&#51313;&#49828;&#47101;&#49845;&#45768;&#45796;. &#51060;&#51228;&#45716; &#51060;&#51901;&#51004;&#47196; &#50734;&#44200;&#50732;&#44620;&amp;nbsp;&#54616;&#45716; &#51600;&#44144;&#50868;&amp;nbsp;&#44256;&#48124;&#51060;...&amp;nbsp;&#12619;&#12619; &amp;nbsp;^&#12641;^)/~~&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;ps) &#50500;&#51649; &#44596;&#44544; &#50416;&#44592;&#45208;&amp;nbsp;&#46104;&#46028;&#47532;&#44592; &#44592;&#45733;&#51008; &#50557;&#44036; &#47928;&#51228;&#44032; &#51080;&#45716; &#46319;... &#12641;_&#12641;a... &#51060;&#47088;.. &#12619;&#12619;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2&gt;KKAMAGUI&amp;nbsp; &#49548;&#44060;&lt;/h2&gt;
&lt;p&gt;&#50612;&#47160;&#51012; &#46412;&#48512;&#53552; &#54532;&#47196;&#44536;&#47000;&#48141;&#50640; &#44288;&#49900;&#51060; &#47566;&#50520;&#45912; &#52384;&#50630;&#45912; &#44844;&#47560;...&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&#45208;&#51060;&#44032;&amp;nbsp;&#46308;&#50612;&#46020; &#52384;&#51060;&amp;nbsp;&#50630;&#44592;&#45716; &#47560;&#52268;&#44032;&#51648;&#51648;&#47564; &#54532;&#47196;&#44536;&#47000;&#48141;&#50640; &#45824;&#54620; &#50676;&#51221;&#51008; &#45208;&#45216;&#51060; &#52964;&#51256;&#49436; &#51060;&#51228; &#48324;&#47196; &#50504;&#54644;&#48376;&#44172; &#50630;&#45716; &#44163; &#44057;&#49845;&#45768;&#45796;. &#12622;&#12622;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&#51453;&#51088;&#49332;&#51088; OS&#46020; &#47564;&#46308;&#50612;&#48372;&#44256; &#50952;&#46020;&#50864; &#49884;&#49828;&#53596; &#54532;&#47196;&#44536;&#47000;&#48141;&#46020; &#54644;&#48372;&#44256;, &#44033;&#51333; &#45348;&#53944;&#50892;&#53356; &#50612;&#54540;&#47532;&#52992;&#51060;&#49496;&#46020; &#47564;&#46308;&#50612;&#48372;&#44256;... &#44536;&#47084;&#45796;&#44032; &#51339;&#51008; &#49324;&#46988;&#46308;... &#51339;&#51008; &#49828;&#49849;&#45784;&#46020; &#47564;&#45208;&#44256; &#12622;&#12622;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&#51648;&#44552;&#52376;&#47100;&#47564; &#49332; &#49688; &#51080;&#45796;&#47732; &#50620;&#47560;&#45208; &#54665;&#48373;&#54624;&#44620;&#50836;?&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&#51328;&#45908; &#49884;&#44036;&#51060; &#51648;&#45208;&#49436; &#54924;&#49324;&#50640; &#51077;&#49324;&#54616;&#44256; &#51221;&#49888;&#50630;&#51060; &#48148;&#49240;&#47732; &#50668;&#47084;&#44032;&#51648;&#44032; &#49548;&#55128;&#54644; &#51648;&#44192;&#51648;&#47564;... &#44536;&#47000;&#46020; &#54532;&#47196;&#44536;&#47000;&#48141;&#50640; &#45824;&#54620; &#50676;&#51221;&#47564;&#53372;&#51008;&amp;nbsp;&#51075;&#51648; &#50506;&#44256; &#49332;&#50500;&#44040;&#44161;&#45768;&#45796;.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style="text-align: right;"&gt;Written By KKAMAGUI&lt;/p&gt;
&lt;p style="text-align: right;"&gt;kkakkunghehe AT daum.net&lt;/p&gt;
&lt;p style="text-align: center;"&gt;&lt;img class="attachment" title="b0033111.jpg" src="/pages/339551/attachments/139989" alt="b0033111.jpg" /&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style="text-align: center;"&gt;&#45796;&#46308; &#54868;&#51060;&#54021;&#51077;&#45768;&#45796;. @0@)/~&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style="text-align: center;"&gt;&amp;nbsp;&lt;/p&gt;
&lt;h1&gt;&#45208;&#51032; &#54665;&#51201;...&lt;/h1&gt;
&lt;h2&gt;&#48337;&#50669; &#53945;&#47168; &#54980;(2006 ~ &#54788;&#51116;)&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&#50952;&#46020;&#50864; &#49884;&#49828;&#53596; &#54532;&#47196;&#44536;&#47000;&#48141; &#49884;&#51089;.&amp;nbsp;2006&#45380;&amp;nbsp;&#54980;&#48152; &#52376;&#51020;&#51004;&#47196; &#46356;&#48148;&#51060;&#49828; &#46300;&#46972;&#51060;&#48260; &#54028;&#51068;&#51012; &#51089;&#49457;&#54644; &#48376; &#44163;&#51060; &#49884;&#52488;&#50688;&#51020;&lt;/li&gt;
&lt;li&gt;&#50952;&#46020;&#50864;&#46020;&amp;nbsp;&#46356;&#48148;&#51060;&#49828; &#46300;&#46972;&#51060;&#48260;&#47484; &#51060;&#50857;&#54616;&#47732; &#47803;&#54616;&#45716; &#44172; &#50630;&#51020;&#51012; &#50508;&#44172;&#46120;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;SDT &#54981;&#51012; &#51060;&#50857;&#54620; &#49884;&#49828;&#53596; &#44048;&#49884; &#54532;&#47196;&#44536;&#47016;&lt;/strong&gt; &#51089;&#49457;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;TDI &#54981;&#51012; &#51060;&#50857;&#54620; &#45348;&#53944;&#50892;&#53356; &#47784;&#45768;&#53552;&#47553; &#48143; &#54056;&#53431; &#49569;&#49888; &#54532;&#47196;&#44536;&#47016;&lt;/strong&gt; &#51089;&#49457;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&#53412;&#48372;&#46300;/&#47560;&#50864;&#49828; &#54596;&#53552; &#46300;&#46972;&#51060;&#48260;&lt;/strong&gt; &#51089;&#49457;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;PE &#54028;&#51068;&#51012; &#48372;&#54840;&#54616;&#44592;&#50948;&#54620; PE &#54028;&#51068; &#50516;&#54840;&#54868; &#54532;&#47196;&#44536;&#47016;&lt;/strong&gt; &#51089;&#49457;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&#48372;&#50504; &#54532;&#47196;&#44536;&#47016; &#48516;&#49437; &#48143;&amp;nbsp;Bypass &#54532;&#47196;&#44536;&#47016;&lt;/strong&gt; &#51089;&#49457;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&#50976;&#54008;&#47532;&#54000; &#54532;&#47196;&#44536;&#47016; &#51089;&#49457;( &#53664;&#49692;&#51060;, &#51068;&#51221;&#44288;&#47532; &#54532;&#47196;&#44536;&#47016;, &#45800;&#52629;&#53412; &#54532;&#47196;&#44536;&#47016; )&lt;/strong&gt;.&amp;nbsp;&lt;strong&gt;&lt;a href="/pages/389813" class="wiki" title="00 &#54252;&#53944;&#54260;&#47532;&#50724;(Portfolio) "&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;00 &#54252;&#53944;&#54260;&#47532;&#50724;(Portfolio)&lt;/span&gt;&lt;/a&gt;&lt;/strong&gt;&#52280;&#44256;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;FAT &#54028;&#51068; &#49884;&#49828;&#53596;&amp;nbsp;&#54252;&#47607; &#54532;&#47196;&#44536;&#47016;&lt;/strong&gt; &#51089;&#49457;&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&#44033;&#51333; &lt;strong&gt;&#54028;&#51060;&#50028; &#54532;&#47196;&#44536;&#47016;&lt;/strong&gt; &#51089;&#49457;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&#44036;&#45800;&#54620; &#50976;&#54008;&#47532;&#54000; &#54532;&#47196;&#44536;&#47016;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;NDSL &#50857; &#54856;&#48652;&#47336;&lt;/strong&gt; &#51089;&#49457;.&amp;nbsp;&#44536;&#47548;&#54032; &#44057;&#51008; &#44036;&#45800;&#54620; &#47700;&#47784; &#54532;&#47196;&#44536;&#47016;. &lt;strong&gt;&lt;a href="/pages/339826" class="wiki" title="02 NDS &#48143; ARM"&gt;02 NDS &#48143; ARM&lt;/a&gt;&lt;/strong&gt; &#52280;&#44256;&lt;/li&gt;
&lt;li&gt;"&lt;strong&gt;&#47560;&#51060;&#53356;&#47196; &#49548;&#54532;&#53944;&#50920;&#50612;&lt;/strong&gt;"&#51648;&#50640; &lt;strong&gt;2008&#45380;&amp;nbsp;1&#50900;&#48512;&#53552; 4&#50900;&lt;/strong&gt;&#44620;&#51648;&amp;nbsp;"&lt;span style="color: rgb(254, 0, 0);"&gt;&lt;strong&gt;&#54532;&#47112;&#51076;&#50892;&#53356;&#47196; &#45796;&#49884;&#48372;&#45716; OS &#44060;&#48156;&lt;/strong&gt;&lt;/span&gt;" &#44592;&#49324; &#50672;&#51116;&amp;nbsp;&lt;/li&gt;
&lt;li&gt;&#50620;&#47560;&#51204;(2008&#45380; 4&#50900;)&#50640; &#44396;&#47588;&#54620; PSP &#55152;&#46181;&#51060;&#47484; &#44032;&#51648;&#44256; &#54856;&#48652;&#47336; &#44060;&#48156; &#51456;&#48708;&#51473;&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;&#54788;&#51116;(2008&#45380; 1&#50900;~) S&#49324;&#50640; &#44540;&#47924;&#51473;&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;SD/MMC &#52852;&#46300; &#44060;&#48156; &#54016;&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;MINT64 OS(Multicore Intelligent 64bit OS) &#44060;&#48156; &#48143; &#51088;&#47308; &#51221;&#47532; &#51473;&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2&gt;&#48337;&#53945; &#49884;&#51208;(2002 ~ 2006 &#52488;)&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&#51204;&#44397; &#49548;&#48169;&#48376;&#48512;&#51032; &#51204;&#54868; &#52376;&#47532; &#49436;&#48260; &#54532;&#47196;&#44536;&#47016; &#51228;&#51089;. 2005&#45380; &#47568;&#44620;&#51648; &#49436;&#50872; &#49548;&#48169;&#48376;&#48512; &#48764;&#44256; &#44144;&#51032; &#47784;&#46304; &#51648;&#50669;&#51060; &#45236;&#44032; &#47564;&#46304; &#51204;&#54868; &#52376;&#47532; &#54532;&#47196;&#44536;&#47016;&#51004;&#47196; &#50629;&#47924; &#49688;&#54665;.(&#49345;&#45817;&#55176; &#48512;&#45812;.. &#12641;_&#12641;;;;;)&lt;/li&gt;
&lt;li&gt;&#44368;&#54872;&#44592; &#51228;&#50612; &#54532;&#47196;&#53664;&#53084;&#51064;&amp;nbsp;CSTA II &#54532;&#47196;&#53664;&#53084; &#54617;&#49845;.&amp;nbsp;CSTA II &#54532;&#47196;&#53664;&#53084; &#51204;&#47928; &#50629;&#52404;&#44032; &#48260;&#44536;&#47484; &#49549;&#52636;&#49884;&#53020;&#49436; &#45208;&#46020; &#47784;&#47476;&#44172; &#54616;&#44172;&#46124;&#51020;( &#12641;_&#12641;;;;; &#50780; &#51088;&#44984; &#51453;&#45716;&#44144;&#50556;... &#12640;_&#12640;)&lt;/li&gt;
&lt;li&gt;&#44536;&amp;nbsp;&#50808; &#47924;&#49440; &#51109;&#48708; &#48143; &#48169;&#49569;&amp;nbsp;&#51109;&#48708;&amp;nbsp;&#51228;&#50612; &#54532;&#47196;&#44536;&#47016; &#51228;&#51089;. &#49436;&#48260; &#54532;&#47196;&#44536;&#47016;&#51032; &#50669;&#54624;&lt;/li&gt;
&lt;li&gt;&#49548;&#48169;&#50629;&#47924; &#53945;&#49457;&#49345; &#47924;&#55092;&#50688;&#44592; &#46412;&#47928;&#50640;&amp;nbsp;&#49436;&#48260; &#54532;&#47196;&#44536;&#47016;&#46020; &#51453;&#51004;&#47732; &#50504;&#46124;&#51020;. &#51060;&#46412; &#44204;&#44256;&#54620; &#54532;&#47196;&#44536;&#47016;&#51012; &#51676;&#45716;&amp;nbsp;&#44048;&#51012; &#47566;&#51060; &#46308;&#50688;&#51020;.&lt;/li&gt;
&lt;li&gt;TCP/IP &#54532;&#47196;&#44536;&#47000;&#48141;&#50640; &#45824;&#54644;&#49436;&#45716;&amp;nbsp;&#50808;&#50872;&#47564;&#53372; &#54632;&lt;/li&gt;
&lt;li&gt;&#53945;&#47168; &#44592;&#44036; &#46041;&#50504; &#44284;&#46020;&#54620; &#54532;&#47196;&#44536;&#47000;&#48141;&#51004;&#47196; &#49884;&#49828;&#53596; &#51204;&#48152;&#50640; &#45824;&#54620; &#51060;&#54644;&#44032; &#45458;&#50500;&#51256;&#49436; OS &#54532;&#47196;&#44536;&#47000;&#48141;&#50640; &#46020;&#51204;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;"KKAMA OS"&lt;/span&gt;&lt;/strong&gt; &#46972;&#44256; &#51060;&#47492;&#48537;&#51060;&#44256; &#44536;&#54980; 2&#45380; &#46041;&#50504; OS &#54532;&#47196;&#44536;&#47016; &#51228;&#51089;.&amp;nbsp;&#50640;&#46300;&#50892;&#46300; &#54805;&#51032; &#49548;&#44060;&#47484; &#48155;&#50500;&#49436; kkamagui.osx86.org &#46020;&#47700;&#51064;&#51012; &#49324;&#50857;&#54616;&#44172; &#46120;.&lt;/li&gt;
&lt;li&gt;OS &#54532;&#47196;&#44536;&#47000;&#48141;&#51012;&amp;nbsp;&#54616;&#47732;&#49436; &#49884;&#49828;&#53596; &#54532;&#47196;&#44536;&#47000;&#48141;&#50640; &#45824;&#54620; &#44048;&#51012; &#51105;&#51020;&lt;/li&gt;
&lt;li&gt;KKAMAGUI OS&#50640; &#45824;&#54620; &#45236;&#50857;&#51008;&amp;nbsp;&lt;a href="http://kkamagui.egloos.com/3071201"&gt;http://kkamagui.egloos.com/3071201&lt;/a&gt;&amp;nbsp;&#44536;&#47548; &#48143;&amp;nbsp;&lt;a href="/pages/339535" class="wiki" title="01 OS &#54532;&#47112;&#51076;&#50892;&#53356;"&gt;01 OS &#54532;&#47112;&#51076;&#50892;&#53356;&lt;/a&gt;&amp;nbsp;&#45236;&#50857; &#52280;&#51312;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2&gt;&#48337;&#53945; &#49884;&#51208; &#51060;&#51204;(&amp;nbsp;~2002)&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&#50728; &#44054;&amp;nbsp;&#51105;&#45796;&#54620; &#54532;&#47196;&#44536;&#47000;&#48141;&lt;/li&gt;
&lt;li&gt;DOS&amp;nbsp;&amp;nbsp;&#49884;&#51208; BIOS Interrupt&#47484; &#51060;&#50857;&#54616;&#50668; 320 * 200 &#47784;&#46300;&#47196; &#48148;&#45012;&#45459;&#44256; PCX &#54028;&#51068;&#51012; &#54868;&#47732;&#50640; &#49100;&#47532;&#45716; &#49341;&#51656;&lt;/li&gt;
&lt;li&gt;640 * 480 &#47784;&#46300; &#44172;&#51076;&#50857; &#46972;&#51060;&#48652;&#47084;&#47532; &#47564;&#46304;&#45813;&#49884;&#44256; &#52293;(Include)&#50640; &#51080;&#45716; &#53076;&#46300; &#45796; &#49552;&#51004;&#47196; &#52824;&#44256; &#44256;&#52824;&#44256; &#45212;&#47532;&#46020; &#50500;&#45768;&#50632;&#51020;&lt;/li&gt;
&lt;li&gt;&#45824;&#54617;&#44368;&#50640; &#51077;&#54617;&#54616;&#50668;&amp;nbsp;&#53080;&#49556; &#54868;&#47732;&#50857;&amp;nbsp;&#46972;&#51064; &#50640;&#46356;&#53552; &#44060;&#48156;(&#51060;&#46412;&#44620;&#51648; &#47564;&#46304; &#44163; &#51473;&#50640; &#44032;&#51109;&amp;nbsp;&#50756;&#49457;&#46020;&#44032; &#45458;&#50520;&#51020;)&lt;/li&gt;
&lt;li&gt;&#52712;&#48120;&#49340;&#50500;&amp;nbsp;&#47564;&#46308;&#45912;&amp;nbsp;MUD(Multi&amp;nbsp;User&amp;nbsp;Dungeon &#51060;&#50632;&#45912;&#44032;...)... &#50668;&#53948; &#53080;&#49556;&#50857; &#44172;&#51076; &#51089;&#49457;.&amp;nbsp;Linux&#51032; TCP/IP &#49436;&#48260;/&#53364;&#46972;&#51060;&#50616;&#53944;&#47196; &#46041;&#51089;(&#51060;&#46412; &#51060; &#53360; &#54532;&#47196;&#44536;&#47016;&#51012; &#54844;&#51088; &#51676;&#47732;&#49436; &#45236;&#44032; &#49548;&#51656;&#51080;&#45716; &#44152; &#50508;&#50520;&#45796;.. &#12619;&#12619;)&lt;/li&gt;
&lt;li&gt;MUD&#47484;&amp;nbsp;Windows API &#44277;&#48512;&#54616;&#47732;&#49436; MFC&#47196; &#52968;&#48260;&#54021;. &#51060;&#46412;&#45716; GUI &#54868;&#47732;&#51004;&#47196; &#44396;&#49457;&#46104;&#50632;&#51020;. &#44060;&#48156;&#54616;&#45796;&#44032;&amp;nbsp;&#46608; &#54616;&#45716;&#44172; &#44480;&#52270;&#50500;&#49436; &#44536;&#47564;&#46176;&lt;/li&gt;
&lt;li&gt;MFC&#47484; &#48176;&#50864;&#47732;&#49436; &#44057;&#51008; &#44284;&#50640; &#48124;&#51333;&#51060; &#54805;&#50640;&#44172; &#51088;&#44537;&#48155;&#50500; &#47700;&#49888;&#51256; &#54532;&#47196;&#44536;&#47016; &#44060;&#48156;.&#48516;&#50640; &#45336;&#52824;&#45716; &#44284;&#46020;&#54620; &#54532;&#47196;&#44536;&#47000;&#48141;&#51004;&#47196; &#48260;&#44536;&#44032; &#45336;&#52840;. &#12636;_&#12636; &#46356;&#48260;&#44613;&#51060; &#49789;&#51648; &#50506;&#45796;&#45716; &#44163;&#51012; &#44648;&#45804;&#50520;&#51020;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
</description>
      <pubDate>Tue, 25 Nov 2008 18:17:49 +0900</pubDate>
      <link>http://kkamagui.springnote.com/pages/339551</link>
      <guid>http://kkamagui.springnote.com/pages/339551</guid>
    </item>
    <item>
      <title>02 &#44036;&#45800;&#54620; Make &#49324;&#50857;&#48277;</title>
      <description>&lt;h1&gt;02 &#44036;&#45800;&#54620; Make &#49324;&#50857;&#48277;&lt;/h1&gt;
&lt;p&gt;&lt;strong&gt;&#50896;&#47928; :&lt;/strong&gt; &lt;a href="/pages/359124"&gt;&lt;strong&gt;http://kkamagui.springnote.com/pages/359124&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2&gt;&#46308;&#50612;&#44032;&#44592; &#51204;&#50640;...&lt;/h2&gt;
&lt;div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;&#51060; &#44544;&#51008;&amp;nbsp;kkamagui&#50640; &#51032;&#54644; &#51089;&#49457;&#46108; &#44544;&#51077;&#45768;&#45796;.&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&#47560;&#51020;&#44751; &#51064;&#50857;&#54616;&#49884;&#44144;&#45208; &#49324;&#50857;&#54616;&#49492;&#46020; &#46121;&#45768;&#45796;. &#45800; &#52636;&#52376;(&lt;a href="http://kkamagui.tistory.com/"&gt;&lt;span style="color: rgb(128, 0, 128);"&gt;http://kkamagui.tistory.com&lt;/span&gt;&lt;/a&gt;, &lt;a href="/pages/404250#"&gt;&lt;span style="color: rgb(128, 0, 128);"&gt;http://kkamagui.springnote.com&lt;/span&gt;&lt;/a&gt;)&#45716; &#48157;&#54784; &#51452;&#49901;&#49884;&#50724;.&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&#44592;&#53440; &#49324;&#54637;&#51008;&amp;nbsp;kkakkunghehe at daum.net &#51060;&#45208;&lt;/strong&gt; &lt;a href="http://kkamagui.tistory.com/"&gt;&lt;strong&gt;&lt;span style="color: rgb(128, 0, 128);"&gt;http://kkamagui.tistory.com&lt;/span&gt;&lt;/strong&gt;&lt;/a&gt;&lt;strong&gt;&#51004;&#47196; &#48372;&#45236;&#51452;&#49884;&#47732; &#48152;&#50689;&#54616;&#44192;&#49845;&#45768;&#45796;.&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2&gt;0.&#49884;&#51089;&#54616;&#47732;&#49436;...&lt;/h2&gt;
&lt;p&gt;&amp;nbsp;&#53685;&#54633; &#44060;&#48156;&#53812;(IDE)&#47484; &#51060;&#50857;&#54644;&#49436; &#44060;&#48156;&#54616;&#45716; &#44221;&#50864;&#50640; &#44403;&#51060; Makefile&#51012; &#49373;&#49457;&#54624; &#54596;&#50836;&#45716; &#50630;&#51648;&#47564;&amp;nbsp;IDE&#47484; &#49324;&#50857;&#54616;&#51648; &#50506;&#44256; &#44060;&#48156;&#54624; &#44221;&#50864;, &#47566;&#51008; &#49548;&#49828;&#54028;&#51068;&#51012; &#44288;&#47532;&#54616;&#44592;&#50948;&#54644;&#49436; makefile&#51060; &#54596;&#49688;&#51060;&#45796;.&amp;nbsp;make&#45716; &#49892;&#51228;&#47196; &#44361;&#51109;&#55176; &#47566;&#51008; &#44592;&#45733;&#51012;&amp;nbsp;&#44032;&#51648;&#44256; &#51080;&#51648;&#47564;,&amp;nbsp;&#44536;&#51473; &#47751;&#44032;&#51648; &#50976;&#50857;&#54620; &#44592;&#45733;&#47564; &#50508;&#50500;&#46020; &#55016;&#50476; &#53076;&#46300; &#44288;&#47532;&#44032; &#54200;&#47532;&#54644; &#51652;&#45796;.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&#51060;&#51228; &#44536; &#47751;&#44032;&#51648;&#50640; &#45824;&#54644;&#49436; &#50508;&#50500;&#48372;&#51088;. @0@)/~&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2&gt;1.makefile&#51032;&amp;nbsp;&#44592;&#48376; &#54805;&#49885;&lt;/h2&gt;
&lt;p&gt;&amp;nbsp;makefile&#51008; &#44592;&#48376;&#51201;&#51004;&#47196; &#50500;&#47000;&#50752; &#44057;&#51008; &#54805;&#49885;&#51004;&#47196; &#51060;&#47336;&#50612;&#51652;&#45796;.&lt;/p&gt;
&lt;ol class="code"&gt;
&lt;li&gt;Target File :&amp;nbsp;Source&amp;nbsp;File(Dependency)&amp;nbsp;
&lt;ol&gt;
&lt;li&gt;&amp;lt;tab&amp;gt;&amp;nbsp;command&lt;/li&gt;
&lt;/ol&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;&amp;nbsp;&#51340;&#52769;&#51032; Target File&#51008; make command&#51032; &#49892;&#54665; &#44208;&#44284;&#47196; &#49373;&#49457;&#54624; &#54028;&#51068;&#51060;&#44256; Source File&#51008; make command&#50640; &#49324;&#50857;&#46112; &#54028;&#51068;&#51060;&#45796;.&amp;nbsp;&#50500;&#47000;&#51032;&amp;nbsp;command&#45716; &#53485;&#51004;&#47196; &#54620;&#52856; &#46916;&#50864;&#45716;&#45936; &#51060; &#53485;&#51060; command&#51032;&amp;nbsp;&#44396;&#48516;&#51088;&#51032;&amp;nbsp;&#50669;&#54624;&#51012; &#54620;&#45796;.&amp;nbsp;&#47564;&#50557; Abc.c &#54028;&#51068;&#51012; gcc -c&#47196; &#52980;&#54028;&#51068; &#54644;&#49436; Abc.o &#54028;&#51068;&#51012; &#49373;&#49457;&#54620;&#45796;&#47732; &#50500;&#47000;&#50752; &#44057;&#51060; &#46108;&#45796;(&#51452;&#51032;-&#45824;&#49548;&#47928;&#51088; &#44396;&#48516;&#54632;).&lt;/p&gt;
&lt;ol class="code"&gt;
&lt;li&gt;Abc.o : Abc.c&amp;nbsp;
&lt;ol&gt;
&lt;li&gt;&amp;lt;tab&amp;gt; gcc -c&amp;nbsp;Abc.o&amp;nbsp;Abc.c&lt;/li&gt;
&lt;/ol&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&#49892;&#51228;&#47196; &#50668;&#47084; &#54028;&#51068;&#51012; &#49373;&#49457;&#54620;&#45796;&#44256;&amp;nbsp;&#44032;&#51221;&#54616;&#47732; &#50948;&#50752; &#44057;&#51008; &#53076;&#46300;&#46308;&#51060; &#50500;&#47000;&#50752; &#44057;&#51060; &#45208;&#50676;&#46108;&#45796;.&lt;/p&gt;
&lt;ol class="code"&gt;
&lt;li&gt;# &#51060;&#44148; &#51452;&#49437;&#51077;&#45768;&#45796;.&lt;/li&gt;
&lt;li&gt;Abc.o : Abc.c&amp;nbsp;
&lt;ol&gt;
&lt;li&gt;&amp;lt;tab&amp;gt; &lt;strong&gt;gcc -c&amp;nbsp;Abc.o&amp;nbsp;\&lt;/strong&gt;&amp;nbsp;&amp;nbsp; &amp;lt;- &#47680;&#54000;&#46972;&#51064; &#49324;&#50857;&#48277;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Abc.c&lt;/strong&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Abb.o : Abb.c&amp;nbsp;&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&amp;lt;tab&amp;gt; gcc -c&amp;nbsp;Abb.o&amp;nbsp;Abb.c&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;A.exe : Abc.o&amp;nbsp;Abb.o&amp;nbsp;&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&amp;lt;tab&amp;gt; gcc -o&amp;nbsp;A.exe Abb.o&amp;nbsp;Abc.o&lt;/li&gt;
&lt;/ol&gt;
&lt;/li&gt;
&lt;li&gt;...... &#48152;&#48373;.....&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;&amp;nbsp; &#51452;&#49437;&#51008; #&#47196; &#49884;&#51089;&#54616;&#44256; &#47680;&#54000;&#46972;&#51064;&#51008; \&#47484; &#47560;&#51648;&#47561; &#46972;&#51064;&#50640; &#52628;&#44032;&#54616;&#47732; &#46108;&#45796;. &#50500;&#51452; &#44036;&#45800;&#54616;&#51648; &#50506;&#45716;&#44032;? &#50948;&#50752; &#44057;&#51060; &#54028;&#51068;&#51012; &#49373;&#49457;&#54616;&#50668; makefile&#51012; &#47564;&#46304; &#54980;, make.exe&#47484; &#49892;&#54665;&#54616;&#47732; &#51088;&#46041;&#51004;&#47196; makefile&#51012; &#51069;&#50612;&#49436; &#50948;&#51032; &#51312;&#44148;&#50640; &#46384;&#46972; &#54028;&#51068;&#51012; &#49373;&#49457;&#54644; &#51456;&#45796;.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&#47564;&#50557; &#50612;&#46500; Target File&#51060; &#49373;&#49457;&#46104;&#44592; &#50948;&#54644; &#45796;&#47480; &#54028;&#51068;&#51060; Target File&#51060; &#54596;&#50836;&#54620; &#44221;&#50864; makefile&#51060; &#50508;&#50500;&#49436; &#54596;&#50836;&#54620; &#54028;&#51068; &#49692;&#49436;&#45824;&#47196; &#44208;&#44284; &#54028;&#51068;&#51012; &#47564;&#46304; &#54980; &#52572;&#51333; &#44208;&#44284;&#47932;&#51012; &#47564;&#46308;&#50612; &#51456;&#45796;. &#50948;&#51032; makefile&#51012; &#49688;&#54665;&#54616;&#47732; A.exe&#50752; &#44033;&#51333; .o &#54028;&#51068;&#46308;&#51060; &#49373;&#44596;&#45796;.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2&gt;2.&#47588;&#53356;&#47196;(Macro)&#51032; &#49324;&#50857;&lt;/h2&gt;
&lt;p&gt;&amp;nbsp;&#47564;&#50557;&amp;nbsp;&#49548;&#49828;&#54028;&#51068;&#51060; &#49552;&#51004;&#47196; &#52832; &#49688; &#50630;&#51012; &#47564;&#53372; &#47566;&#45796;&#47732;? &#46608;&#45716;&amp;nbsp;&#50612;&#46500; Target&amp;nbsp;File&#51012; &#49373;&#49457;&#54616;&#45716;&#45936; &#44508;&#52825;&#51060; &#51068;&#51221;&#54616;&#45796;&#47732;?(.c &#54028;&#51068;&#51012;&amp;nbsp;.o &#54028;&#51068;&#47196; &#48148;&#44984;&#45716;&amp;nbsp;&#44163;&#44284; &#44057;&#51008; &#44221;&#50864;)&amp;nbsp;&#44284;&#50672; &#51060;&#47088; &#44221;&#50864;&#50640;&#46020; &#51068;&#51068;&#51060; &#45796; &#49552;&#51004;&#47196; &#50024;&#51480;&#50556; &#54624;&#44620;?&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&#47588;&#53356;&#47196;&#47484; &#51060;&#50857;&#54616;&#47732; &#51060;&#44163;&#51012; &#54200;&#47532;&#54616;&#44172; &#54624; &#49688; &#51080;&#45796;. GNU-Make&#50640;&#49436; &#47588;&#53356;&#47196;&#45716; &#50500;&#47000;&#50752; &#44057;&#51060; &#51221;&#51032;&#54616;&#44256; &#49324;&#50857;&#54620;&#45796;.&lt;/p&gt;
&lt;ol class="code"&gt;
&lt;li&gt;&lt;strong&gt;OBJECT =&amp;nbsp;A.o B.o C.o&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;CC = gcc&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;A.exe :&amp;nbsp;&lt;strong&gt;$(OBJECT)&lt;/strong&gt;&amp;nbsp;
&lt;ol&gt;
&lt;li&gt;&amp;lt;tab&amp;gt;&amp;nbsp;&lt;strong&gt;$(CC)&lt;/strong&gt;&amp;nbsp;-o&amp;nbsp;A.exe&amp;nbsp;&lt;strong&gt;$(OBJECT)&lt;/strong&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;&amp;nbsp;&lt;strong&gt;OBJECT&lt;/strong&gt;&amp;nbsp;&#47588;&#53356;&#47196;&#44032; &#50630;&#45796;&#47732; &#51068;&#51068;&#51060; &#49552;&#51004;&#47196; &#51200; &#54028;&#51068;&#46308;&#51012; &#45796; &#52432;&#51480;&#50556; &#54624; &#44163;&#51012;&amp;nbsp;&lt;strong&gt;OBJECT&lt;/strong&gt; &#47588;&#53356;&#47196;&#47484; &#51221;&#51032;&#54632;&#51004;&#47196;&#50024; &#54200;&#47532;&#54616;&#44172; &#54644;&#44208;&#54664;&#45796;.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&#44536;&#47100; &#51060;&#51228; &#51328;&#45908;&amp;nbsp;&#51060;&#44163;&#51012; &#54869;&#51109;&#54644; &#48372;&#51088;. &#51068;&#48152;&#51201;&#51004;&#47196;&amp;nbsp;.c &#54028;&#51068;&#51012;&amp;nbsp;.o &#54028;&#51068;&#47196; &#47564;&#46300;&#45716; &#44508;&#52825;&#51008; &#44144;&#51032; &#46041;&#51068;&#54616;&#45796;. &#52980;&#54028;&#51068; &#50741;&#49496;&#50640;&amp;nbsp;-c &#50741;&#49496;&#51012; &#51460; &#44163;&#51060;&#47728; A.o A.c&#50752;&amp;nbsp;&#44057;&#51008;&amp;nbsp;&#44057;&#51008; &#54028;&#51068;&#47749;&#51012; &#49324;&#50857;&#54616;&#44256; &#54869;&#51109;&#51088;&#47564; &#45796;&#47476;&#45796;.&amp;nbsp;&#51060;&#44163;&#51012; &#50612;&#46523;&#44172; &#44036;&#45800;&#54616;&#44172; &#54624; &#49688; &#51080;&#51012;&#44620;? &#45813;&#51008; &#54056;&#53556; &#44508;&#52825;&#51012; &#51060;&#50857;&#54616;&#45716; &#44163;&#51060;&#45796;.&amp;nbsp;%&#47484; &#49324;&#50857;&#54616;&#45716; &#50500;&#47000;&#47484; &#48372;&#51088;.&lt;/p&gt;
&lt;ol class="code"&gt;
&lt;li&gt;
&lt;p&gt;%.o : %.c&amp;nbsp;&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&amp;lt;tab&amp;gt;&amp;nbsp;gcc -c&amp;nbsp;$@&amp;nbsp;$&amp;lt;&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;&amp;nbsp;&#50948;&#50752; &#44057;&#51060; &#54616;&#47732;,&amp;nbsp;.c&#44032;&amp;nbsp;&#46308;&#50612;&#44036; &#54028;&#51068;&#51008;&amp;nbsp;.o&#47196; &#48148;&#44984;&#50612; &#51452;&#45716;&#45936; gcc -c &#50741;&#49496;&#51012; &#51201;&#50857;&#54616;&#50668; .o &#54028;&#51068;&#51012; &#49373;&#49457;&#54620;&#45796;.&amp;nbsp;&#51593; %&#45716; &#54869;&#51109;&#51088;&#47484; &#51228;&#50808;&#54620; &#54028;&#51068;&#47749;&#51012; &#51032;&#48120;&#54620;&#45796;. $@&#50752; &#44057;&#51008; &#49373;&#49548;&#54620; &#47928;&#51088;&#47484; &#48380; &#49688; &#51080;&#45716;&#45936;, &#51060;&#44163;&#51008; make&#50640;&#49436; &#48120;&#47532; &#51221;&#51032;&#54644;&#46164; &#47588;&#53356;&#47196;&#47196; &#50500;&#47000;&#50752; &#44057;&#51008; &#44163;&#46308;&#51060; &#51080;&#45796;.&lt;/p&gt;
&lt;div&gt;
&lt;ul&gt;
&lt;li&gt;$@ : Target File. &#54028;&#51068;&#47749;&amp;nbsp;&#48143; &#54869;&#51109;&#51088;&amp;nbsp;&#54252;&#54632;.&amp;nbsp;&#50812;&#51901; &#51204;&#52404; &#54056;&#53556;&#51012; &#52824;&#54872;&lt;/li&gt;
&lt;li&gt;$&amp;lt; :&amp;nbsp;Source&amp;nbsp;File. &#54028;&#51068;&#47749; &#48143; &#54869;&#51109;&#51088; &#54252;&#54632;. &#50724;&#47480;&#51901;&amp;nbsp;&#52395;&#48264;&#51704; &#54056;&#53556;&#51012; &#52824;&#54872;&lt;/li&gt;
&lt;li&gt;$* : &#54028;&#51068;&#47749;&#47564; &#54252;&#54632;&lt;/li&gt;
&lt;li&gt;$^ :&amp;nbsp;Source File. &#50724;&#47480;&#51901; &#51204;&#52404; &#47532;&#49828;&#53944;&#47484; &#52824;&#54872;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;p&gt;&amp;nbsp;&#44536;&#47100;&amp;nbsp;&#54056;&#53556; &#44508;&#52825;&#51012;&amp;nbsp;&#51060;&#50857;&#54624;&#46412; &#54028;&#51068;&#47749; &#44536;&#45824;&#47196;&#47564; &#49324;&#50857; &#44032;&#45733;&#54624;&#44620;? &#45813;&#51008; "&#44536;&#47111;&#51648; &#50506;&#45796;"&amp;nbsp;&#51060;&#45796;. &#50500;&#47000;&#50752; &#44057;&#51008; &#49324;&#50857;&#46020; &#44032;&#45733;&#54616;&#45796;.&lt;/p&gt;
&lt;ol class="code"&gt;
&lt;li&gt;
&lt;p&gt;&amp;nbsp;%_debug.o : %.c&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&amp;lt;tab&amp;gt;&amp;nbsp;gcc -c&amp;nbsp;$@&amp;nbsp;$&amp;lt;&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;&amp;nbsp;&#50948;&#52376;&#47100;&#54616;&#47732; &#54028;&#51068;&#51060;&#47492;&#50640;&amp;nbsp;_debug&#44032; &#48537;&#51008; &#54028;&#51068;&#51012; &#49373;&#49457;&#54624; &#49688; &#51080;&#45796;.&amp;nbsp;&#51200; &#44508;&#52825;&#51012; &#51096; &#51060;&#50857;&#54616;&#47732; &#50668;&#47084;&#44032;&#51648; &#51333;&#47448;&#51032; &#54028;&#51068;&#51012; &#49373;&#49457;&#54624; &#49688; &#51080;&#45796;.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp; &#51088; &#44536;&#47084;&#47732; &#47588;&#53356;&#47196;&#47196; &#51221;&#51032;&#54620; &#45236;&#50857; &#51473;&#50640; &#54596;&#50836;&#54620; &#45236;&#50857;&#47564; &#46384;&#47196; &#52824;&#54872;&#54624; &#49688; &#45716; &#50630;&#51012;&#44620;? &#47932;&#47200; &#44032;&#45733;&#54616;&#45796;. &#50500;&#47000;&#45716; .o&#47484; .c&#47196; &#52824;&#54872;&#54616;&#45716; &#47928;&#51109;&#51060;&#45796;.&lt;/p&gt;
&lt;ol class="code"&gt;
&lt;li&gt;OBJECT =&amp;nbsp;a.o b.o c.o d.o&lt;/li&gt;
&lt;li&gt;SOURCE =&amp;nbsp;&lt;strong&gt;$(OBJECT:.o=.c)&lt;/strong&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;&amp;nbsp;&#50500;&#51452;&amp;nbsp;&#44036;&#45800;&#54616;&#51648; &#50506;&#51008;&#44032;? @0@)/~&amp;nbsp;&#51221;&#47568; &#45440;&#46989;&#45796;. @0@)/~~!!!!&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&#44536;&#47100; &#47564;&#50557;&amp;nbsp;target&#50640;&#49436; &#49324;&#50857;&#46112; &#51060;&#47492;&#44284; &#46041;&#51068;&#54620; &#54028;&#51068;&#47749;&#51060; &#51316;&#51116;&#54620;&#45796;&#47732;? &#51593; make clean&#44284; &#44057;&#51060; clean&#51012; &#49324;&#50857;&#54644;&#50556; &#54616;&#45716;&#45936; &#47560;&#52840; clean&#51032; &#51060;&#47492;&#51012; &#44032;&#51648;&#45716;&amp;nbsp;&#54637;&#47785;&#51060; &#51080;&#45796;&#47732; &#50612;&#46523;&#44172; &#54624;&#44620;? make clean&#51012;&amp;nbsp;&#54616;&#47732; &#54644;&#45817; &#54637;&#47785;&#51060; &#52980;&#54028;&#51068;&amp;nbsp;&#46112; &#44163;&#51064;&#45936;... &#50864;&#47532;&#44032; &#50896;&#54616;&#45716; &#44163;&#51008; &#44536;&#44163;&#51060; &#50500;&#45768;&#45796;...&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&#51060;&#47088; &#44221;&#50864; &#50500;&#47000;&#50752; &#44057;&#51060; &#49324;&#50857;&#54616;&#47732; &#46108;&#45796;.&lt;/p&gt;
&lt;ol class="code"&gt;
&lt;li&gt;.PHONY : clean&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;&amp;nbsp;.PHONY&#44032; &#51032;&#48120;&#54616;&#45716; &#44163;&#51008; clean&#51060;&amp;nbsp;build&#51032; &#45824;&#49345;&#51060; &#50500;&#45784;&#51012; &#47568;&#54620;&#45796;.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&#51060;&#48264;&#50640;&#45716;&amp;nbsp;make &#49892;&#54665; &#49884; &#51077;&#47141;&#44050;&#50640; &#51032;&#54644;&amp;nbsp;Active&#54616;&#44172;&amp;nbsp;&#54540;&#47000;&#44536;&#47484; &#48320;&#44221;&#54644;&#49436;&amp;nbsp;&#49892;&#54665;&#54644; &#48372;&#51088;. makefile&#50504;&#50640; &#50668;&#47084; &#47784;&#46300;&#47196; &#52980;&#54028;&#51068;&#54616;&#45716;&amp;nbsp;&#44592;&#45733;&#46020; &#45347;&#50612;&#48372;&#51088;. &#50500;&#47924;&#50741;&#49496;&#51060; &#50630;&#51060; &#44536;&#45285; make&#47564; &#49892;&#54665;&#46104;&#50632;&#51012; &#46412;, &#46356;&#54260;&#53944;&#47196; &#44032;&#45716; &#47112;&#51060;&#48660;&#51008; all &#51060;&#45796;.&amp;nbsp;&#51060; &#44592;&#45733;&#51012; &#51060;&#50857;&#54644;&#49436; &#46356;&#54260;&#53944;&amp;nbsp;Target &#54028;&#51068;&#51012; &#51648;&#51221;&#54644;&#48372;&#44256;&amp;nbsp;clean &#44592;&#45733;&#51012; &#45347;&#50612;&#49436;&amp;nbsp;.o &#54028;&#51068;&#51012; &#47784;&#46160; &#51648;&#50864;&#44172; &#54616;&#51088;.&lt;/p&gt;
&lt;ol class="code"&gt;
&lt;li&gt;&lt;strong&gt;all :&amp;nbsp;A.exe&amp;nbsp;&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;.... &#50612;&#51788;&#44396; &#51200;&#51788;&#44396; ...&lt;/li&gt;
&lt;li&gt;A.exe :&amp;nbsp;$(OBJ)&amp;nbsp;
&lt;ol&gt;
&lt;li&gt;&amp;lt;tab&amp;gt; $(CC)&amp;nbsp;$(FLAG) $(OBJ)&lt;/li&gt;
&lt;/ol&gt;
&lt;/li&gt;
&lt;li&gt;.... &#50612;&#51788;&#44396; &#51200;&#51788;&#44396; ...&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;clean :&amp;nbsp;&lt;/strong&gt;
&lt;ol&gt;
&lt;li&gt;&amp;lt;tab&amp;gt;&amp;nbsp;del *.o&lt;/li&gt;
&lt;/ol&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;&amp;nbsp;&#50948; &#52376;&#47100;&amp;nbsp;Source File &#51593; Dependency&#50640; &#50500;&#47924;&#44163;&#46020; &#45347;&#51648; &#50506;&#44144;&#45208; &#47564;&#46308;&amp;nbsp;Target File &#47749;&#51012; &#45347;&#51004;&#47732; &#46108;&#45796;. A.exe&#47484; &#47564;&#46308;&#44256; &#49910;&#51004;&#47732; "make"&#46972;&#44256; &#51077;&#47141;&#54616;&#45912;&#51648; "make all"&#51060;&#46972;&#44256; &#51077;&#47141;&#54616;&#47732; &#46104;&#44256; clean &#44592;&#45733;&#51012; &#46041;&#51089; &#49884;&#53412;&#47140;&#47732; "make clean"&#51060;&#46972;&#44256; &#51077;&#47141;&#54616;&#47732; &#46108;&#45796;.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&#51312;&#44552; &#45908; &#51025;&#50857;&#54644;&#49436; make &#49884;&#50640;&amp;nbsp;&#52980;&#54028;&#51068; &#54540;&#47000;&#44536;&#47484; &#51312;&#51208;&#54616;&#46020;&#47197; &#54644;&#48372;&#51088;&lt;/p&gt;
&lt;ol class="code"&gt;
&lt;li&gt;ifdef&amp;nbsp;FULL&lt;/li&gt;
&lt;li&gt;FLAG =&amp;nbsp;-f -c&lt;/li&gt;
&lt;li&gt;endif&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;&amp;nbsp; &#50948;&#50752; &#44057;&#51060; &#54620; &#46244;&#50640; "&lt;strong&gt;make FULL=yes"&lt;/strong&gt; &#46972;&#44256;&amp;nbsp;&#49892;&#54665;&#54616;&#47732; FULL &#54540;&#47000;&#44536;&#47484; &#49444;&#51221;&#54616;&#50668; FLAG&#47484; &#54876;&#49457;&#54868; &#49884;&#53420; &#49688; &#51080;&#45796;.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2&gt;3.&#46356;&#47113;&#53664;&#47532;&#51032; &#48320;&#44221;&lt;/h2&gt;
&lt;p&gt;&amp;nbsp;makefile&#51012; &#49373;&#49457;&#54616;&#50668; &#49324;&#50857;&#54624;&#46412; &#50668;&#47084;&#44060;&#51032; &#54532;&#47196;&#51229;&#53944;&#47484; &#46041;&#49884;&#50640; &#48716;&#46300;&#54616;&#50668; &#54616;&#45208;&#51032;&amp;nbsp;output&#51060; &#45208;&#50752;&#50556; &#54624; &#44221;&#50864;&#44032; &#51080;&#45796;. &#51060;&#47088; &#44221;&#50864; &#54616;&#50948; &#54260;&#45908;&#50640; &#54532;&#47196;&#51229;&#53944;&#46308;&#51012; &#45347;&#50612;&#46160;&#44256; &#49345;&#50948; &#54260;&#45908;&#50640; &#54616;&#50948; &#54260;&#45908;&#47484; &#45796; make &#54616;&#45716; &#54805;&#49885;&#51012;&amp;nbsp;&#49324;&#50857;&#54616;&#45716;&#45936;, &#51060;&#46412;&amp;nbsp;&#44033; &#54532;&#47196;&#51229;&#53944; &#54260;&#45908;&#47196; &#51060;&#46041;&#54644;&#49436; &#54644;&#45817;&amp;nbsp;&#54260;&#45908;&#51032; makefile&#51012; &#49892;&#54665;&#54644;&#50556;&#54620;&#45796;.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&#51060;&#46412; &#49324;&#50857;&#54616;&#45716; &#50741;&#49496;&#51060;&amp;nbsp;&lt;strong&gt;-C&lt;/strong&gt; &#51060;&#44256; make&#47484; &#49892;&#54665;&#54616;&#44592; &#51204;&#50640; &#54260;&#45908;&#47484; &#48320;&#44221;&#54616;&#46972;&#45716; &#50741;&#49496;&#51060;&#45796;.&lt;/p&gt;
&lt;ol class="code"&gt;
&lt;li&gt;&lt;strong&gt;make -C&amp;nbsp;"Boot"&amp;nbsp;-f makefile&lt;/strong&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;&#50948;&#51032; &#47749;&#47161;&#51008;&amp;nbsp;Boot &#54260;&#45908;&#47196; &#54260;&#45908;&#47484; &#51060;&#50857;&#54644;&#49436; make&#47484; &#49688;&#54665;&#54616;&#46972;&#45716; &#47749;&#47161;&#51060;&#45796;.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2&gt;4.&#52636;&#47141; &#47700;&#49884;&#51648;&lt;/h2&gt;
&lt;p&gt;&amp;nbsp;make &#46020;&#51473;&#50640; &#47700;&#49884;&#51648;&#47484; &#54868;&#47732;&#50640; &#52636;&#47141;&#54616;&#44256; &#49910;&#51004;&#47732; @echo "&#47700;&#49884;&#51648;" &#51032; &#54805;&#53468;&#47196; &#49324;&#50857;&#54616;&#47732; &#46108;&#45796;.&lt;/p&gt;
&lt;ol class="code"&gt;
&lt;li&gt;&lt;strong&gt;@echo "&#48716;&#46300;&#51473;&#51077;&#45768;&#45796;..."&lt;/strong&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2&gt;5.&#47560;&#47924;&#47532;-makefile &#51201;&#50857;&lt;/h2&gt;
&lt;h3&gt;5.1&amp;nbsp;Build &#54028;&#51068;&#51012; &#51649;&#51217; &#49440;&#53469;&lt;/h3&gt;
&lt;p&gt;&amp;nbsp;&#51088; &#51060;&#51228; &#51060;&#44163;&#51012; &#49892;&#51228;&#47196; &#51201;&#50857;&#54644;&amp;nbsp;&#48372;&#51088;. &#50500;&#47000;&#51032; makefile&#51008;&amp;nbsp;make&#50640; &#45824;&#54644;&#49436; &#51096; &#47792;&#46992;&#51012; &#46412;, &#45432;&#44032;&#45796;&#47196; &#51089;&#49457;&#54620; &#54028;&#51068;&#51060;&#45796;.&amp;nbsp;&#49345;&#45817;&#55176; &#48520;&#54788;&#54616;&#44256; &#53945;&#55176; &#51088;&#51452; &#54028;&#51068;&#51060; &#52628;&#44032;&#46104;&#44144;&#45208; &#48320;&#44221;&#46104;&#45716; Custom &#54260;&#45908;&#51032; &#44221;&#50864; &#54028;&#51068;&#51060; &#52628;&#44032;&#46112;&#46412; &#47560;&#45796; &#51068;&#51068;&#51060; &#47749;&#47161;&#51012; &#52628;&#44032;&#54644;&#51480;&#50556;&#54616;&#45716; &#45800;&#51216;&#51060; &#51080;&#50632;&#45796;.&lt;/p&gt;
&lt;ol class="code"&gt;
&lt;li&gt;#&amp;nbsp;&amp;nbsp; Kernel Make File&lt;br /&gt;
#&lt;br /&gt;
#&amp;nbsp;&amp;nbsp; Written KKAMAGUI, &lt;a href="http://kkamagui.egloos.com/"&gt;http://kkamagui.egloos.com&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;all: Kkernel&lt;/li&gt;
&lt;li&gt;# Compile &#50741;&#49496;&lt;br /&gt;
GCC = gcc -ffreestanding -c&lt;br /&gt;
NASM = nasm -f coff&lt;br /&gt;
FWDIR = FW/&lt;br /&gt;
CUSTOMDIR = Custom/&lt;/li&gt;
&lt;li&gt;# Frame Work &#54028;&#51068;&lt;br /&gt;
# Compile&#54624; &#54028;&#51068; &#51060;&#47492; &#45796; &#51201;&#44592;&lt;br /&gt;
A.o: $(FWDIR)Asm.asm&lt;br /&gt;
&amp;nbsp;$(NASM) -o A.o $(FWDIR)Asm.asm&lt;br /&gt;
Is.o: $(FWDIR)Isr.asm&lt;br /&gt;
&amp;nbsp;$(NASM) -o Is.o $(FWDIR)Isr.asm&lt;br /&gt;
K.o: $(FWDIR)Kernel.c&lt;br /&gt;
&amp;nbsp;$(GCC) -o K.o $(FWDIR)Kernel.c&lt;br /&gt;
D.o: $(FWDIR)Descriptor.c&lt;br /&gt;
&amp;nbsp;$(GCC) -o D.o $(FWDIR)Descriptor.c&lt;br /&gt;
Int.o: $(FWDIR)Interrupt.c&lt;br /&gt;
&amp;nbsp;$(GCC) -o Int.o $(FWDIR)Interrupt.c&lt;br /&gt;
Key.o: $(FWDIR)Keyboard.c&lt;br /&gt;
&amp;nbsp;$(GCC) -o Key.o $(FWDIR)Keyboard.c&lt;br /&gt;
Stdlib.o : $(FWDIR)stdlib.c&lt;br /&gt;
&amp;nbsp;$(GCC) -o Stdlib.o $(FWDIR)Stdlib.c&lt;br /&gt;
Task.o : $(FWDIR)Task.c&lt;br /&gt;
&amp;nbsp;$(GCC) -o Task.o $(FWDIR)Task.c&lt;/li&gt;
&lt;li&gt;# &#51025;&#50857; &#54532;&#47196;&#44536;&#47016; &#54028;&#51068;&lt;br /&gt;
FW.o : $(CUSTOMDIR)Framework.c&lt;br /&gt;
&amp;nbsp;$(GCC) -o FW.o $(CUSTOMDIR)FrameWork.c&lt;br /&gt;
KShell.o : $(CUSTOMDIR)KShell.c&lt;br /&gt;
&amp;nbsp;$(GCC) -o KShell.o $(CUSTOMDIR)KShell.c&lt;br /&gt;
Sched.o : $(CUSTOMDIR)Scheduler.c&lt;br /&gt;
&amp;nbsp;$(GCC) -o Sched.o $(CUSTOMDIR)Scheduler.c&lt;/li&gt;
&lt;li&gt;#Object &#54028;&#51068; &#51060;&#47492; &#45796; &#51201;&#44592;&lt;br /&gt;
#&#50500;&#47000;&#51032; &#49692;&#49436;&#45824;&#47196; &#47553;&#53356;&#46108;&#45796;.&lt;br /&gt;
OBJ = A.o K.o Is.o D.o Int.o Key.o Stdlib.o Task.o FW.o KShell.o Sched.o&lt;/li&gt;
&lt;li&gt;Kkernel: $(OBJ)&lt;br /&gt;
&amp;nbsp;ld $(OBJ) -o kkernel.bin --oformat binary -Ttext 0x100000&lt;/li&gt;
&lt;li&gt;clean:&lt;br /&gt;
&amp;nbsp;del *.o&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&#50948;&#51032;&amp;nbsp;makefile&#51012; &#48176;&#50868; &#44163;&#51012; &#51060;&#50857;&#54616;&#50668; &#44036;&#45800;&#54616;&#44172; &#51221;&#47532;&#54616;&#47732; &#50500;&#47000;&#50752; &#44057;&#51060; &#50424; &#49688; &#51080;&#45796;.&lt;/p&gt;
&lt;ol class="code"&gt;
&lt;li&gt;#&amp;nbsp;&amp;nbsp; Kernel Make File&lt;br /&gt;
#&lt;br /&gt;
#&amp;nbsp;&amp;nbsp; Written KKAMAGUI, &lt;a href="http://kkamagui.egloos.com/"&gt;http://kkamagui.egloos.com&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;all: kernel&lt;/li&gt;
&lt;li&gt;# Compile &#50741;&#49496; &#48143; &#54260;&#45908; &#49444;&#51221;&lt;br /&gt;
GCC = gcc -ffreestanding -c&lt;br /&gt;
NASM = nasm -f coff&lt;br /&gt;
FWDIR = FW/&lt;br /&gt;
CUSTOMDIR = Custom/&lt;/li&gt;
&lt;li&gt;#Object &#54028;&#51068; &#51060;&#47492; &#45796; &#51201;&#44592;&lt;br /&gt;
#&#50500;&#47000;&#51032; &#49692;&#49436;&#45824;&#47196; &#47553;&#53356;&#46108;&#45796;. &#49352;&#47196;&#50868; &#54028;&#51068;&#51060; &#49373;&#44592;&#47732; &#46244;&#50640;&#45796; &#52628;&#44032;&#54616;&#51088;&lt;br /&gt;
OBJ = Asm.o Kernel.o Isr.o Descriptor.o Interrupt.o Keyboard.o StdLib.o Task.o \&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; FrameWork.o KShell.o Scheduler.o&lt;/li&gt;
&lt;li&gt;#&#52980;&#54028;&#51068;&#54624; &#54028;&#51068;&#51032; &#54869;&#51109;&#51088;&#50640; &#46384;&#47480; &#44508;&#52825;&lt;/li&gt;
&lt;li&gt;# FW &#54260;&#45908; &#48145;&#51032; &#54028;&#51068;&#46308; &#52980;&#54028;&#51068;&lt;/li&gt;
&lt;li&gt;%.o: $(FWDIR)%.asm&lt;br /&gt;
&amp;nbsp;$(NASM) -o $@ $&amp;lt;&lt;br /&gt;
%.o: $(FWDIR)%.c&lt;br /&gt;
&amp;nbsp;$(GCC) -o $@ $&amp;lt;&lt;/li&gt;
&lt;li&gt;# Custom &#54260;&#45908; &#48145;&#51032; &#54028;&#51068;&#46308; &#52980;&#54028;&#51068;&lt;br /&gt;
%.o : $(CUSTOMDIR)%.c&lt;br /&gt;
&amp;nbsp;$(GCC) -o $@ $&amp;lt;&lt;/li&gt;
&lt;li&gt;# &#52572;&#51333; &#47553;&#53356;&lt;br /&gt;
kernel: $(OBJ)&lt;br /&gt;
&amp;nbsp;ld $(OBJ) -o kkernel.bin --oformat binary -Ttext 0x100000&lt;/li&gt;
&lt;li&gt;clean:&lt;br /&gt;
&amp;nbsp;del *.o&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;&amp;nbsp; &#50864;&#50752;~ &#51221;&#47568; &#44628;&#45140;&#54644;&#51276;&#45796;. &#54869;&#51109; &#46608;&#54620; &#54620;&#48512;&#48516;&#47564; &#52628;&#44032;&#54616;&#47732; &#46104;&#45768;&#44620; &#55016;&#50476; &#44036;&#45800;&#54644; &#51276;&#45796;. makefile &#49324;&#50857;&#54644;&#49436; &#54952;&#50984;&#51201;&#51064; &#54532;&#47196;&#51229;&#53944; &#44288;&#47532;&#47484; &#54644;&#48372;&#51088;.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3&gt;5.2&amp;nbsp;&#53945;&#51221; &#54260;&#45908;&#51032;&amp;nbsp;&#53945;&#51221; &#54869;&#51109;&#51088;&#51032; &#54028;&#51068;&#51012; &#47784;&#46160; &#48716;&#46300;&lt;/h3&gt;
&lt;p&gt;&amp;nbsp;&#51060;&#53364;&#47549;&#49828; &#48260;&#51204;&#51004;&#47196; &#50734;&#44200;&#44032;&#47732;&#49436;&amp;nbsp;makefile &#46608;&#54620; &#51221;&#47532;&#54616;&#50688;&#45796;. &#51088;&#49464;&#54620; &#45236;&#50857;&#51008;&amp;nbsp;&lt;a href="/pages/355610" class="wiki" title=" 21 OS &#54532;&#47112;&#51076;&#50892;&#53356; &#49548;&#49828; &#47540;&#47532;&#51592;"&gt;&lt;strong&gt;21 OS &#54532;&#47112;&#51076;&#50892;&#53356; &#49548;&#49828; &#47540;&#47532;&#51592;&lt;/strong&gt;&lt;/a&gt;&#51032; &#47540;&#47532;&#51592; &#54028;&#51068;&#51012; &#52280;&#44256;&#54616;&#46020;&#47197;&#54616;&#44256; &#50500;&#47000;&#45716; 00Kernel &#54260;&#45908;&#51032; makefile&#51060;&#45796;.&lt;/p&gt;
&lt;ol class="code"&gt;
&lt;li&gt;#&amp;nbsp;&amp;nbsp; Kernel Make File&lt;br /&gt;
#&lt;br /&gt;
#&amp;nbsp;&amp;nbsp; Written KKAMAGUI, &lt;a href="http://kkamagui.egloos.com/"&gt;http://kkamagui.egloos.com&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;all: kernel&lt;/li&gt;
&lt;li&gt;# Compile &#50741;&#49496; &#48143; &#54260;&#45908; &#49444;&#51221;&lt;br /&gt;
GCC = djgcc -ffreestanding -c&lt;br /&gt;
LD = djld&lt;br /&gt;
NASM = nasm -f coff&lt;br /&gt;
FWDIR = FW&lt;br /&gt;
CUSTOMDIR = Custom&lt;br /&gt;
SOURCEDIR = $(FWDIR) $(CUSTOMDIR)&lt;/li&gt;
&lt;li&gt;#Object &#54028;&#51068; &#51060;&#47492; &#45796; &#51201;&#44592;&lt;br /&gt;
#&#50500;&#47000;&#51032; &#49692;&#49436;&#45824;&#47196; &#47553;&#53356;&#46108;&#45796;. &#49352;&#47196;&#50868; &#54028;&#51068;&#51060; &#49373;&#44592;&#47732; &#46244;&#50640; &#45796; &#52628;&#44032;&#54616;&#51088;&lt;br /&gt;
#&#52964;&#45328;&#50640; &#44845; &#54596;&#50836;&#54620; Object &#54028;&#51068;&#46308;. ASM.o &#54028;&#51068;&#51008; &#54637;&#49345; &#51228;&#51068; &#50526;&#50640; &#50752;&#50556;&#54620;&#45796;. &#44536; &#51060;&#50976;&#45716;&lt;br /&gt;
#&#52964;&#45328;&#51032; &#50644;&#53944;&#47532;&#54252;&#51064;&#53944;&#44032; &#51080;&#45716; &#54632;&#49688;&#51060;&#44592; &#46412;&#47928;&#51060;&#45796;.&lt;br /&gt;
ESSENTIALOBJ = Asm.o Isr.o&lt;/li&gt;
&lt;li&gt;# &#46356;&#47113;&#53664;&#47532;&#50640; &#51080;&#45716; C &#54028;&#51068;&#46308;&#51012; &#45796; &#52286;&#50500;&#49436; &#45347;&#46020;&#47197; &#54620;&#45796;.&lt;br /&gt;
&lt;strong&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;CFILE = $(foreach dir,$(SOURCEDIR),$(notdir $(wildcard $(dir)/*.c )))&lt;br /&gt;
CFILEOBJ = $(CFILE:.c=.o)&lt;/span&gt;&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;#&#54869;&#51109;&#51088; &#44508;&#52825;&#51012; &#51060;&#50857;&#54644;&#49436; &#52980;&#54028;&#51068; &#54620;&#45796;.&lt;br /&gt;
%.o: $(FWDIR)\%.asm&lt;br /&gt;
&amp;nbsp;$(NASM) -o $@ $&amp;lt;&lt;br /&gt;
%.o: $(FWDIR)\%.c&lt;br /&gt;
&amp;nbsp;$(GCC) -o $@ $&amp;lt;&lt;br /&gt;
%.o: $(CUSTOMDIR)\%.asm&lt;br /&gt;
&amp;nbsp;$(NASM) -o $@ $&amp;lt;&lt;br /&gt;
%.o: $(CUSTOMDIR)\%.c&lt;br /&gt;
&amp;nbsp;$(GCC) -o $@ $&amp;lt;&lt;br /&gt;
&amp;nbsp;&lt;br /&gt;
# &#52572;&#51333; &#47553;&#53356;&lt;br /&gt;
kernel: $(ESSENTIALOBJ) $(CFILEOBJ)&lt;br /&gt;
&amp;nbsp;@echo "==&amp;gt; Making Kernel..."&lt;br /&gt;
&amp;nbsp;$(LD) $(ESSENTIALOBJ) $(CFILEOBJ) -o kkernel.bin --oformat binary -Ttext 0x100000&lt;br /&gt;
&amp;nbsp;@echo "==&amp;gt; Complete"&lt;/li&gt;
&lt;li&gt;clean:&lt;br /&gt;
&amp;nbsp;del *.o&lt;br /&gt;
&amp;nbsp;del kkernel.bin&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2&gt;6.make &#47928;&#48277; quick reference&lt;/h2&gt;
&lt;p&gt;&amp;nbsp;GNU make&#51032;&amp;nbsp;quick refernce&#45716; &lt;a href="http://www.viper.pe.kr/docs/make-ko/make-ko_15.html"&gt;&lt;strong&gt;http://www.viper.pe.kr/docs/make-ko/make-ko_15.html&lt;/strong&gt;&lt;/a&gt;&amp;nbsp;&#50640;&#49436; &#52286;&#51012; &#49688; &#51080;&#45796;.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: left;"&gt;&lt;span style="font-family: &#44404;&#47548;;"&gt;&#51060; &#48512;&#47197;&#51008;&lt;/span&gt; GNU &lt;span style="font-family: &#44404;&#47548;&#52404;;"&gt;make&lt;/span&gt; &lt;span style="font-family: &#44404;&#47548;;"&gt;&#44032; &#51060;&#54644;&#54616;&#45716; &#51648;&#49884;&#50612;&lt;/span&gt;, &#53581;&#49828;&#53944; &#51312;&#51089; &#54632;&#49688;&lt;span&gt;,&lt;/span&gt; &#44536;&#47532;&#44256; &#53945;&#49688; &#48320;&#49688;&#46308;&#50640; &#45824;&#54644;&#49436; &#50836;&#50557;&#54620; &#44163;&#51060;&#45796;&lt;span&gt;.&lt;/span&gt; &#45796;&#47480; &#50836;&#50557;&#46308;&#51012; &#48372;&#44256;&#51088; &#54620;&#45796;&#47732; &lt;span&gt;See section &lt;a href="http://www.viper.pe.kr/docs/make-ko/make-ko_4.html#SEC35"&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;&lt;span&gt;&#53945;&#49688;&lt;/span&gt;&lt;/span&gt; &lt;span style="color: rgb(0, 0, 255);"&gt;&lt;span&gt;&#45236;&#51109;&lt;/span&gt;&lt;/span&gt; &lt;span style="color: rgb(0, 0, 255);"&gt;&lt;span&gt;&#53440;&#44191;&lt;/span&gt;&lt;/span&gt; &lt;span style="color: rgb(0, 0, 255);"&gt;&lt;span&gt;&#51060;&#47492;(Special Built-in Target Names)&lt;/span&gt;&lt;/span&gt;&lt;/a&gt;, section &lt;a href="http://www.viper.pe.kr/docs/make-ko/make-ko_10.html#SEC91"&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;&lt;span&gt;&#47925;&#49884;&#51201;&lt;/span&gt;&lt;/span&gt; &lt;span style="color: rgb(0, 0, 255);"&gt;&lt;span&gt;&#44508;&#52825;&#46308;&#51032;&lt;/span&gt;&lt;/span&gt; &lt;span style="color: rgb(0, 0, 255);"&gt;&lt;span&gt;&#52852;&#45804;&#47196;&#44536;(Catalogue of Implicit Rules)&lt;/span&gt;&lt;/span&gt;&lt;/a&gt;, and section &lt;a href="http://www.viper.pe.kr/docs/make-ko/make-ko_9.html#SEC88"&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;&lt;span&gt;&#50741;&#49496;&#46308;&#51032;&lt;/span&gt;&lt;/span&gt; &lt;span style="color: rgb(0, 0, 255);"&gt;&lt;span&gt;&#50836;&#50557;(Summary of Options)&lt;/span&gt;&lt;/span&gt;&lt;/a&gt;.&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: left;"&gt;&amp;nbsp;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: left;"&gt;&amp;nbsp;&lt;/p&gt;
&lt;h4 class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: left;"&gt;&lt;strong&gt;&lt;span style="font-family: &#44404;&#47548;;"&gt;&#45796;&#51020;&#51008;&lt;/span&gt; GNU&lt;/strong&gt; &lt;span style="font-family: &#44404;&#47548;&#52404;;"&gt;make&lt;/span&gt; &lt;span style="font-family: &#44404;&#47548;;"&gt;&#44032; &#51064;&#49885;&#54616;&#45716; &#51648;&#49884;&#50612;&#46308;&#51012; &#50836;&#50557;&#54620; &#44163;&#51060;&#45796;&lt;/span&gt;:&lt;/h4&gt;
&lt;p class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: left;"&gt;&lt;span style="font-family: &#44404;&#47548;&#52404;;"&gt;define&lt;/span&gt; &lt;span style="font-family: &#44404;&#47548;;"&gt;variable&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: left;"&gt;&lt;span style="font-family: &#44404;&#47548;&#52404;;"&gt;endef&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin: 0cm 0cm 0pt 36pt; text-align: left;"&gt;&lt;span style="font-family: &#44404;&#47548;;"&gt;&#47680;&#54000;&lt;/span&gt;-&#46972;&#51064;&lt;span&gt;,&lt;/span&gt; &#51116;&#44480;&#51201;&#51004;&#47196; &#54869;&#51109;&#46104;&#45716; &#48320;&#49688; &#54616;&#45208;&#47484; &#51221;&#51032;&#54620;&#45796;&lt;span&gt;.&lt;br /&gt;
See section &lt;a href="http://www.viper.pe.kr/docs/make-ko/make-ko_5.html#SEC54"&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;&lt;span&gt;&#47749;&#47161;&#46308;&#51012;&lt;/span&gt;&lt;/span&gt; &lt;span style="color: rgb(0, 0, 255);"&gt;&lt;span&gt;&#47926;&#50612;&#49436;&lt;/span&gt;&lt;/span&gt; &lt;span style="color: rgb(0, 0, 255);"&gt;&lt;span&gt;&#51221;&#51032;&#54616;&#44592;(Defining Canned Command Sequences)&lt;/span&gt;&lt;/span&gt;&lt;/a&gt;.&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: left;"&gt;&lt;span style="font-family: &#44404;&#47548;&#52404;;"&gt;ifdef&lt;/span&gt; &lt;span style="font-family: &#44404;&#47548;;"&gt;variable&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: left;"&gt;&lt;span style="font-family: &#44404;&#47548;&#52404;;"&gt;ifndef&lt;/span&gt; &lt;span style="font-family: &#44404;&#47548;;"&gt;variable&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: left;"&gt;&lt;span style="font-family: &#44404;&#47548;&#52404;;"&gt;ifeq (&lt;/span&gt;&lt;span style="font-family: &#44404;&#47548;;"&gt;a&lt;/span&gt;&lt;span style="font-family: &#44404;&#47548;&#52404;;"&gt;,&lt;/span&gt;&lt;span style="font-family: &#44404;&#47548;;"&gt;b&lt;/span&gt;&lt;span style="font-family: &#44404;&#47548;&#52404;;"&gt;)&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: left;"&gt;&lt;span style="font-family: &#44404;&#47548;&#52404;;"&gt;ifeq "&lt;/span&gt;&lt;span style="font-family: &#44404;&#47548;;"&gt;a&lt;/span&gt;&lt;span style="font-family: &#44404;&#47548;&#52404;;"&gt;" "&lt;/span&gt;&lt;span style="font-family: &#44404;&#47548;;"&gt;b&lt;/span&gt;&lt;span style="font-family: &#44404;&#47548;&#52404;;"&gt;"&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: left;"&gt;&lt;span style="font-family: &#44404;&#47548;&#52404;;"&gt;ifeq '&lt;/span&gt;&lt;span style="font-family: &#44404;&#47548;;"&gt;a&lt;/span&gt;&lt;span style="font-family: &#44404;&#47548;&#52404;;"&gt;' '&lt;/span&gt;&lt;span style="font-family: &#44404;&#47548;;"&gt;b&lt;/span&gt;&lt;span style="font-family: &#44404;&#47548;&#52404;;"&gt;'&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: left;"&gt;&lt;span style="font-family: &#44404;&#47548;&#52404;;"&gt;ifneq (&lt;/span&gt;&lt;span style="font-family: &#44404;&#47548;;"&gt;a&lt;/span&gt;&lt;span style="font-family: &#44404;&#47548;&#52404;;"&gt;,&lt;/span&gt;&lt;span style="font-family: &#44404;&#47548;;"&gt;b&lt;/span&gt;&lt;span style="font-family: &#44404;&#47548;&#52404;;"&gt;)&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: left;"&gt;&lt;span style="font-family: &#44404;&#47548;&#52404;;"&gt;ifneq "&lt;/span&gt;&lt;span style="font-family: &#44404;&#47548;;"&gt;a&lt;/span&gt;&lt;span style="font-family: &#44404;&#47548;&#52404;;"&gt;" "&lt;/span&gt;&lt;span style="font-family: &#44404;&#47548;;"&gt;b&lt;/span&gt;&lt;span style="font-family: &#44404;&#47548;&#52404;;"&gt;"&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: left;"&gt;&lt;span style="font-family: &#44404;&#47548;&#52404;;"&gt;ifneq '&lt;/span&gt;&lt;span style="font-family: &#44404;&#47548;;"&gt;a&lt;/span&gt;&lt;span style="font-family: &#44404;&#47548;&#52404;;"&gt;' '&lt;/span&gt;&lt;span style="font-family: &#44404;&#47548;;"&gt;b&lt;/span&gt;&lt;span style="font-family: &#44404;&#47548;&#52404;;"&gt;'&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: left;"&gt;&lt;span style="font-family: &#44404;&#47548;&#52404;;"&gt;else&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: left;"&gt;&lt;span style="font-family: &#44404;&#47548;&#52404;;"&gt;endif&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin: 0cm 0cm 0pt 36pt; text-align: left;"&gt;&lt;span style="font-family: &#44404;&#47548;;"&gt;makefile&lt;/span&gt; &lt;span style="font-family: &#44404;&#47548;;"&gt;&#51032; &#51312;&#44148; &#54217;&#44032; &#48512;&#48516;&lt;/span&gt;.&lt;br /&gt;
See section &lt;a href="http://www.viper.pe.kr/docs/make-ko/make-ko_7.html#SEC70"&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;Makefile&lt;/span&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;&lt;span&gt;&#51032;&lt;/span&gt;&lt;/span&gt; &lt;span style="color: rgb(0, 0, 255);"&gt;&lt;span&gt;&#51312;&#44148;&lt;/span&gt;&lt;/span&gt; &lt;span&gt;&#48512;&#48516;(Conditional Parts of Makefiles)&lt;/span&gt;&lt;/a&gt;.&lt;/p&gt;
&lt;p class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: left;"&gt;&lt;span style="font-family: &#44404;&#47548;&#52404;;"&gt;include&lt;/span&gt; &lt;span style="font-family: &#44404;&#47548;;"&gt;file&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin: 0cm 0cm 0pt 36pt; text-align: left;"&gt;&lt;span style="font-family: &#44404;&#47548;;"&gt;&#45796;&#47480;&lt;/span&gt; makefile &#51012; &#54252;&#54632;&#54620;&#45796;&lt;span&gt;.&lt;br /&gt;
See section &lt;a href="http://www.viper.pe.kr/docs/make-ko/make-ko_3.html#SEC15"&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;&lt;span&gt;&#45796;&#47480;&lt;/span&gt;&lt;/span&gt; &lt;span style="color: rgb(0, 0, 255);"&gt;&lt;span&gt;makefile&lt;/span&gt;&lt;/span&gt; &lt;span style="color: rgb(0, 0, 255);"&gt;&lt;span&gt;&#49341;&#51077;(Including Other Makefiles)&lt;/span&gt;&lt;/span&gt;&lt;/a&gt;.&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: left;"&gt;&lt;span style="font-family: &#44404;&#47548;&#52404;;"&gt;override&lt;/span&gt; &lt;span style="font-family: &#44404;&#47548;;"&gt;variable&lt;/span&gt; &lt;span style="font-family: &#44404;&#47548;&#52404;;"&gt;=&lt;/span&gt; &lt;span style="font-family: &#44404;&#47548;;"&gt;value&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: left;"&gt;&lt;span style="font-family: &#44404;&#47548;&#52404;;"&gt;override&lt;/span&gt; &lt;span style="font-family: &#44404;&#47548;;"&gt;variable&lt;/span&gt; &lt;span style="font-family: &#44404;&#47548;&#52404;;"&gt;:=&lt;/span&gt; &lt;span style="font-family: &#44404;&#47548;;"&gt;value&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: left;"&gt;&lt;span style="font-family: &#44404;&#47548;&#52404;;"&gt;override&lt;/span&gt; &lt;span style="font-family: &#44404;&#47548;;"&gt;variable&lt;/span&gt; &lt;span style="font-family: &#44404;&#47548;&#52404;;"&gt;+=&lt;/span&gt; &lt;span style="font-family: &#44404;&#47548;;"&gt;value&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: left;"&gt;&lt;span style="font-family: &#44404;&#47548;&#52404;;"&gt;override define&lt;/span&gt; &lt;span style="font-family: &#44404;&#47548;;"&gt;variable&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: left;"&gt;&lt;span style="font-family: &#44404;&#47548;&#52404;;"&gt;endef&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin: 0cm 0cm 0pt 36pt; text-align: left;"&gt;&lt;span style="font-family: &#44404;&#47548;;"&gt;&#48320;&#49688; &#54616;&#45208;&#47484; &#51221;&#51032;&#54616;&#44256; &#51060;&#51204;&#51032; &#51221;&#51032;&#47484; &#50724;&#48260;&#46972;&#51060;&#46300;&#54616;&#45796;&lt;/span&gt;. &#49900;&#51648;&#50612; &#47749;&#47161;&#54665;&#50640;&#49436;&#51032; &#51221;&#51032;&#44620;&#51648; &#50724;&#48260;&#46972;&#51060;&#46300;&#54620;&#45796;&lt;span&gt;.&lt;br /&gt;
See section &lt;a href="http://www.viper.pe.kr/docs/make-ko/make-ko_6.html#SEC65"&gt;&lt;span style="color: rgb(0, 0, 255); font-family: &#44404;&#47548;&#52404;;"&gt;override&lt;/span&gt; &lt;span style="color: rgb(0, 0, 255);"&gt;&lt;span&gt;&#51648;&#49884;&#50612;&lt;/span&gt;&lt;/span&gt;&lt;/a&gt;.&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: left;"&gt;&lt;span style="font-family: &#44404;&#47548;&#52404;;"&gt;export&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin: 0cm 0cm 0pt 36pt; text-align: left;"&gt;&lt;span style="font-family: &#44404;&#47548;&#52404;;"&gt;make&lt;/span&gt; &lt;span style="font-family: &#44404;&#47548;;"&gt;&#50640;&#44172; &#52264;&#51068;&#46300; &#54532;&#47196;&#49464;&#49828;&#46308;&#50640;&#44172; &#46356;&#54260;&#53944;&#47196; &#47784;&#46304; &#48320;&#49688;&#46308;&#51012; &#51061;&#49828;&#54252;&#53944;&#54616;&#46020;&#47197; &#51648;&#49884;&lt;/span&gt;.&lt;br /&gt;
See section &lt;a href="http://www.viper.pe.kr/docs/make-ko/make-ko_5.html#SEC51"&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;&lt;span&gt;&#49436;&#48652;-&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(0, 0, 255); font-family: &#44404;&#47548;&#52404;;"&gt;make&lt;/span&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;&lt;span&gt;&#50640;&lt;/span&gt;&lt;/span&gt; &lt;span style="color: rgb(0, 0, 255);"&gt;&lt;span&gt;&#45824;&#54620;&lt;/span&gt;&lt;/span&gt; &lt;span style="color: rgb(0, 0, 255);"&gt;&lt;span&gt;&#53685;&#49888;&lt;/span&gt;&lt;/span&gt; &lt;span style="color: rgb(0, 0, 255);"&gt;&lt;span&gt;&#48320;&#49688;(Communicating Variables to a Sub-&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(0, 0, 255); font-family: &#44404;&#47548;&#52404;;"&gt;make&lt;/span&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;)&lt;/span&gt;&lt;/a&gt;.&lt;/p&gt;
&lt;p class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: left;"&gt;&lt;span style="font-family: &#44404;&#47548;&#52404;;"&gt;export&lt;/span&gt; &lt;span style="font-family: &#44404;&#47548;;"&gt;variable&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: left;"&gt;&lt;span style="font-family: &#44404;&#47548;&#52404;;"&gt;export&lt;/span&gt; &lt;span style="font-family: &#44404;&#47548;;"&gt;variable&lt;/span&gt; &lt;span style="font-family: &#44404;&#47548;&#52404;;"&gt;=&lt;/span&gt; &lt;span style="font-family: &#44404;&#47548;;"&gt;value&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: left;"&gt;&lt;span style="font-family: &#44404;&#47548;&#52404;;"&gt;export&lt;/span&gt; &lt;span style="font-family: &#44404;&#47548;;"&gt;variable&lt;/span&gt; &lt;span style="font-family: &#44404;&#47548;&#52404;;"&gt;:=&lt;/span&gt; &lt;span style="font-family: &#44404;&#47548;;"&gt;value&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: left;"&gt;&lt;span style="font-family: &#44404;&#47548;&#52404;;"&gt;export&lt;/span&gt; &lt;span style="font-family: &#44404;&#47548;;"&gt;variable&lt;/span&gt; &lt;span style="font-family: &#44404;&#47548;&#52404;;"&gt;+=&lt;/span&gt; &lt;span style="font-family: &#44404;&#47548;;"&gt;value&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: left;"&gt;&lt;span style="font-family: &#44404;&#47548;&#52404;;"&gt;unexport&lt;/span&gt; &lt;span style="font-family: &#44404;&#47548;;"&gt;variable&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin: 0cm 0cm 0pt 36pt; text-align: left;"&gt;&lt;span style="font-family: &#44404;&#47548;&#52404;;"&gt;make&lt;/span&gt; &lt;span style="font-family: &#44404;&#47548;;"&gt;&#50640;&#44172; &#53945;&#51221;&#54620; &#48320;&#49688;&#47484; &#52264;&#51068;&#46300; &#54532;&#47196;&#49464;&#49828;&#46308;&#50640;&#44172; &#51061;&#49828;&#54252;&#53944;&#54624; &#44163;&#51064;&#44032; &#50500;&#45772;&#44032;&#47484; &#51648;&#49884;&#54620;&#45796;&lt;/span&gt;.&lt;br /&gt;
See section &lt;a href="http://www.viper.pe.kr/docs/make-ko/make-ko_5.html#SEC51"&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;&lt;span&gt;&#49436;&#48652;-&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(0, 0, 255); font-family: &#44404;&#47548;&#52404;;"&gt;make&lt;/span&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;&lt;span&gt;&#50640;&lt;/span&gt;&lt;/span&gt; &lt;span style="color: rgb(0, 0, 255);"&gt;&lt;span&gt;&#45824;&#54620;&lt;/span&gt;&lt;/span&gt; &lt;span style="color: rgb(0, 0, 255);"&gt;&lt;span&gt;&#53685;&#49888;&lt;/span&gt;&lt;/span&gt; &lt;span style="color: rgb(0, 0, 255);"&gt;&lt;span&gt;&#48320;&#49688;(Communicating Variables to a Sub-&lt;/span&gt;&lt;/span&gt;make&lt;span style="color: rgb(0, 0, 255);"&gt;)&lt;/span&gt;&lt;/a&gt;.&lt;/p&gt;
&lt;p class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: left;"&gt;&lt;span style="font-family: &#44404;&#47548;&#52404;;"&gt;vpath&lt;/span&gt; &lt;span style="font-family: &#44404;&#47548;;"&gt;pattern&lt;/span&gt; &lt;span style="font-family: &#44404;&#47548;;"&gt;path&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin: 0cm 0cm 0pt 36pt; text-align: left;"&gt;&lt;span style="font-family: &#44404;&#47548;&#52404;;"&gt;`%'&lt;/span&gt; &lt;span style="font-family: &#44404;&#47548;;"&gt;&#54056;&#53556;&#44284; &#51068;&#52824;&#54616;&#45716; &#54028;&#51068;&#46308;&#50640; &#45824;&#54644;&#49436; &#44160;&#49353; &#44221;&#47196;&#47484; &#51648;&#51221;&lt;/span&gt;.&lt;br /&gt;
See section &lt;a href="http://www.viper.pe.kr/docs/make-ko/make-ko_4.html#SEC27"&gt;&lt;span style="color: rgb(0, 0, 255); font-family: &#44404;&#47548;&#52404;;"&gt;vpath&lt;/span&gt; &lt;span style="color: rgb(0, 0, 255);"&gt;&lt;span&gt;&#51648;&#49884;&#50612;&lt;/span&gt;&lt;/span&gt;&lt;/a&gt;.&lt;/p&gt;
&lt;p class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: left;"&gt;&lt;span style="font-family: &#44404;&#47548;&#52404;;"&gt;vpath&lt;/span&gt; &lt;span style="font-family: &#44404;&#47548;;"&gt;pattern&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin: 0cm 0cm 0pt 36pt; text-align: left;"&gt;&lt;span style="font-family: &#44404;&#47548;;"&gt;pattern&lt;/span&gt; &lt;span style="font-family: &#44404;&#47548;;"&gt;&#47196; &#49324;&#51204;&#50640; &#51648;&#51221;&#46108; &#47784;&#46304; &#44160;&#49353; &#44221;&#47196;&#46308;&#51012; &#51228;&#44144;&lt;/span&gt;.&lt;/p&gt;
&lt;p class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: left;"&gt;&lt;span style="font-family: &#44404;&#47548;&#52404;;"&gt;vpath&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin: 0cm 0cm 0pt 36pt; text-align: left;"&gt;&lt;span style="font-family: &#44404;&#47548;&#52404;;"&gt;vpath&lt;/span&gt; &lt;span style="font-family: &#44404;&#47548;;"&gt;&#51648;&#49884;&#50612;&#50640; &#51032;&#54644;&#49436; &#49324;&#51204;&#50640; &#51648;&#51221;&#46108; &#47784;&#46304; &#44160;&#49353; &#44221;&#47196;&#46308;&#51012; &#51228;&#44144;&lt;/span&gt;.&lt;/p&gt;
&lt;p class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: left;"&gt;&amp;nbsp;&lt;/p&gt;
&lt;h4 class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: left;"&gt;&lt;span style="font-family: &#44404;&#47548;;"&gt;&#45796;&#51020;&#51008; &#53581;&#49828;&#53944; &#51312;&#51089; &#54632;&#49688;&#46308;&#51032; &#50836;&#50557;&#51060;&#45796;&lt;/span&gt; (see section &lt;a href="http://www.viper.pe.kr/docs/make-ko/make-ko_8.html#SEC74"&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;&lt;span&gt;&#53581;&#49828;&#53944;&lt;/span&gt;&lt;/span&gt; &lt;span style="color: rgb(0, 0, 255);"&gt;&lt;span&gt;&#48320;&#54872;&#51012;&lt;/span&gt;&lt;/span&gt; &lt;span style="color: rgb(0, 0, 255);"