79.html
来自「linux 0.11中文版 有注释」· HTML 代码 · 共 249 行 · 第 1/2 页
HTML
249 行
<a name='L92'><b>void</b> do_general_protection(<b>long</b> esp, <b>long</b> error_code)
<a name='L93'><font color='red'>{</font>
<a name='L94'> <a href='../D/757.html' title='Multiple defined in 2 places.'>die</a>("general protection",esp,error_code);
<a name='L95'><font color='red'>}</font>
<a name='L96'>
<a name='L97'><b>void</b> do_divide_error(<b>long</b> esp, <b>long</b> error_code)
<a name='L98'><font color='red'>{</font>
<a name='L99'> <a href='../D/757.html' title='Multiple defined in 2 places.'>die</a>("divide error",esp,error_code);
<a name='L100'><font color='red'>}</font>
<a name='L101'>
<a name='L102'><b>void</b> do_int3(<b>long</b> * esp, <b>long</b> error_code,
<a name='L103'> <b>long</b> fs,<b>long</b> es,<b>long</b> ds,
<a name='L104'> <b>long</b> ebp,<b>long</b> esi,<b>long</b> edi,
<a name='L105'> <b>long</b> edx,<b>long</b> ecx,<b>long</b> ebx,<b>long</b> eax)
<a name='L106'><font color='red'>{</font>
<a name='L107'> <b>int</b> tr;
<a name='L108'>
<a name='L109'> <b>__asm__</b>("str %%ax":"=a" (tr):"0" (0));
<a name='L110'> <a href='../S/73.html#L30' title='Defined at 30 in kernel/printk.c.'>printk</a>("eax\t\tebx\t\tecx\t\tedx\n\r%8x\t%8x\t%8x\t%8x\n\r",
<a name='L111'> eax,ebx,ecx,edx);
<a name='L112'> <a href='../S/73.html#L30' title='Defined at 30 in kernel/printk.c.'>printk</a>("esi\t\tedi\t\tebp\t\tesp\n\r%8x\t%8x\t%8x\t%8x\n\r",
<a name='L113'> esi,edi,ebp,(<b>long</b>) esp);
<a name='L114'> <a href='../S/73.html#L30' title='Defined at 30 in kernel/printk.c.'>printk</a>("\n\rds\tes\tfs\ttr\n\r%4x\t%4x\t%4x\t%4x\n\r",
<a name='L115'> ds,es,fs,tr);
<a name='L116'> <a href='../S/73.html#L30' title='Defined at 30 in kernel/printk.c.'>printk</a>("EIP: %8x CS: %4x EFLAGS: %8x\n\r",esp[0],esp[1],esp[2]);
<a name='L117'><font color='red'>}</font>
<a name='L118'>
<a name='L119'><b>void</b> do_nmi(<b>long</b> esp, <b>long</b> error_code)
<a name='L120'><font color='red'>{</font>
<a name='L121'> <a href='../D/757.html' title='Multiple defined in 2 places.'>die</a>("nmi",esp,error_code);
<a name='L122'><font color='red'>}</font>
<a name='L123'>
<a name='L124'><b>void</b> do_debug(<b>long</b> esp, <b>long</b> error_code)
<a name='L125'><font color='red'>{</font>
<a name='L126'> <a href='../D/757.html' title='Multiple defined in 2 places.'>die</a>("debug",esp,error_code);
<a name='L127'><font color='red'>}</font>
<a name='L128'>
<a name='L129'><b>void</b> do_overflow(<b>long</b> esp, <b>long</b> error_code)
<a name='L130'><font color='red'>{</font>
<a name='L131'> <a href='../D/757.html' title='Multiple defined in 2 places.'>die</a>("overflow",esp,error_code);
<a name='L132'><font color='red'>}</font>
<a name='L133'>
<a name='L134'><b>void</b> do_bounds(<b>long</b> esp, <b>long</b> error_code)
<a name='L135'><font color='red'>{</font>
<a name='L136'> <a href='../D/757.html' title='Multiple defined in 2 places.'>die</a>("bounds",esp,error_code);
<a name='L137'><font color='red'>}</font>
<a name='L138'>
<a name='L139'><b>void</b> do_invalid_op(<b>long</b> esp, <b>long</b> error_code)
<a name='L140'><font color='red'>{</font>
<a name='L141'> <a href='../D/757.html' title='Multiple defined in 2 places.'>die</a>("invalid operand",esp,error_code);
<a name='L142'><font color='red'>}</font>
<a name='L143'>
<a name='L144'><b>void</b> do_device_not_available(<b>long</b> esp, <b>long</b> error_code)
<a name='L145'><font color='red'>{</font>
<a name='L146'> <a href='../D/757.html' title='Multiple defined in 2 places.'>die</a>("device not available",esp,error_code);
<a name='L147'><font color='red'>}</font>
<a name='L148'>
<a name='L149'><b>void</b> do_coprocessor_segment_overrun(<b>long</b> esp, <b>long</b> error_code)
<a name='L150'><font color='red'>{</font>
<a name='L151'> <a href='../D/757.html' title='Multiple defined in 2 places.'>die</a>("coprocessor segment overrun",esp,error_code);
<a name='L152'><font color='red'>}</font>
<a name='L153'>
<a name='L154'><b>void</b> do_invalid_TSS(<b>long</b> esp,<b>long</b> error_code)
<a name='L155'><font color='red'>{</font>
<a name='L156'> <a href='../D/757.html' title='Multiple defined in 2 places.'>die</a>("invalid TSS",esp,error_code);
<a name='L157'><font color='red'>}</font>
<a name='L158'>
<a name='L159'><b>void</b> do_segment_not_present(<b>long</b> esp,<b>long</b> error_code)
<a name='L160'><font color='red'>{</font>
<a name='L161'> <a href='../D/757.html' title='Multiple defined in 2 places.'>die</a>("segment not present",esp,error_code);
<a name='L162'><font color='red'>}</font>
<a name='L163'>
<a name='L164'><b>void</b> do_stack_segment(<b>long</b> esp,<b>long</b> error_code)
<a name='L165'><font color='red'>{</font>
<a name='L166'> <a href='../D/757.html' title='Multiple defined in 2 places.'>die</a>("stack segment",esp,error_code);
<a name='L167'><font color='red'>}</font>
<a name='L168'>
<a name='L169'><b>void</b> do_coprocessor_error(<b>long</b> esp, <b>long</b> error_code)
<a name='L170'><font color='red'>{</font>
<a name='L171'> <b>if</b> (last_task_used_math != current)
<a name='L172'> <b>return</b>;
<a name='L173'> <a href='../D/757.html' title='Multiple defined in 2 places.'>die</a>("coprocessor error",esp,error_code);
<a name='L174'><font color='red'>}</font>
<a name='L175'>
<a name='L176'><b>void</b> do_reserved(<b>long</b> esp, <b>long</b> error_code)
<a name='L177'><font color='red'>{</font>
<a name='L178'> <a href='../D/757.html' title='Multiple defined in 2 places.'>die</a>("reserved (15,17-47) error",esp,error_code);
<a name='L179'><font color='red'>}</font>
<a name='L180'>
<a name='L181'><b>void</b> <a href='../R/707.html' title='Multiple refered from 2 places.'>trap_init</a>(<b>void</b>)
<a name='L182'><font color='red'>{</font>
<a name='L183'> <b>int</b> <a href='../D/839.html' title='Multiple defined in 4 places.'>i</a>;
<a name='L184'>
<a name='L185'> <a href='../S/25.html#L38' title='Defined at 38 in include/asm/system.h.'>set_trap_gate</a>(0,&divide_error);
<a name='L186'> <a href='../S/25.html#L38' title='Defined at 38 in include/asm/system.h.'>set_trap_gate</a>(1,&debug);
<a name='L187'> <a href='../S/25.html#L38' title='Defined at 38 in include/asm/system.h.'>set_trap_gate</a>(2,&nmi);
<a name='L188'> <a href='../S/25.html#L43' title='Defined at 43 in include/asm/system.h.'>set_system_gate</a>(3,&int3); <i><font color='green'>/* int3-5 can be called from all */</font></i>
<a name='L189'> <a href='../S/25.html#L43' title='Defined at 43 in include/asm/system.h.'>set_system_gate</a>(4,&overflow);
<a name='L190'> <a href='../S/25.html#L43' title='Defined at 43 in include/asm/system.h.'>set_system_gate</a>(5,&bounds);
<a name='L191'> <a href='../S/25.html#L38' title='Defined at 38 in include/asm/system.h.'>set_trap_gate</a>(6,&invalid_op);
<a name='L192'> <a href='../S/25.html#L38' title='Defined at 38 in include/asm/system.h.'>set_trap_gate</a>(7,&device_not_available);
<a name='L193'> <a href='../S/25.html#L38' title='Defined at 38 in include/asm/system.h.'>set_trap_gate</a>(8,&double_fault);
<a name='L194'> <a href='../S/25.html#L38' title='Defined at 38 in include/asm/system.h.'>set_trap_gate</a>(9,&coprocessor_segment_overrun);
<a name='L195'> <a href='../S/25.html#L38' title='Defined at 38 in include/asm/system.h.'>set_trap_gate</a>(10,&invalid_TSS);
<a name='L196'> <a href='../S/25.html#L38' title='Defined at 38 in include/asm/system.h.'>set_trap_gate</a>(11,&segment_not_present);
<a name='L197'> <a href='../S/25.html#L38' title='Defined at 38 in include/asm/system.h.'>set_trap_gate</a>(12,&stack_segment);
<a name='L198'> <a href='../S/25.html#L38' title='Defined at 38 in include/asm/system.h.'>set_trap_gate</a>(13,&general_protection);
<a name='L199'> <a href='../S/25.html#L38' title='Defined at 38 in include/asm/system.h.'>set_trap_gate</a>(14,&page_fault);
<a name='L200'> <a href='../S/25.html#L38' title='Defined at 38 in include/asm/system.h.'>set_trap_gate</a>(15,&reserved);
<a name='L201'> <a href='../S/25.html#L38' title='Defined at 38 in include/asm/system.h.'>set_trap_gate</a>(16,&coprocessor_error);
<a name='L202'> <b>for</b> (<a href='../D/839.html' title='Multiple defined in 4 places.'>i</a>=17;<a href='../D/839.html' title='Multiple defined in 4 places.'>i</a><48;<a href='../D/839.html' title='Multiple defined in 4 places.'>i</a>++)
<a name='L203'> <a href='../S/25.html#L38' title='Defined at 38 in include/asm/system.h.'>set_trap_gate</a>(<a href='../D/839.html' title='Multiple defined in 4 places.'>i</a>,&reserved);
<a name='L204'> <a href='../S/25.html#L38' title='Defined at 38 in include/asm/system.h.'>set_trap_gate</a>(45,&irq13);
<a name='L205'> <a href='../S/22.html#L17' title='Defined at 17 in include/asm/io.h.'>outb_p</a>(<a href='../S/22.html#L25' title='Defined at 25 in include/asm/io.h.'>inb_p</a>(0x21)&0xfb,0x21);
<a name='L206'> <a href='../S/22.html#L3' title='Defined at 3 in include/asm/io.h.'>outb</a>(<a href='../S/22.html#L25' title='Defined at 25 in include/asm/io.h.'>inb_p</a>(0xA1)&0xdf,0xA1);
<a name='L207'> <a href='../S/25.html#L38' title='Defined at 38 in include/asm/system.h.'>set_trap_gate</a>(39,&parallel_interrupt);
<a name='L208'><font color='red'>}</font>
</pre>
<hr>
<a name='BOTTOM'>
<i><font color='green'>/* [<][>]<a href='#L63'>[^]</a><a href='#L181'>[v]</a><a href='#TOP'>[top]</a>[bottom]<a href='../mains.html'>[index]</a><a href='../help.html'>[help]</a> */</font></i>
</body>
</html>
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?