📄 cpu.h.svn-base
字号:
/*****************************************************************************//* Betriebssysteme *//*---------------------------------------------------------------------------*//* *//* C P U *//* *//*---------------------------------------------------------------------------*//* Implementierung einer Abstraktion fuer den Prozessor. *//* Derzeit wird nur angeboten, Interrupts zuzulassen, zu verbieten oder den *//* Prozessor anzuhalten. *//*****************************************************************************/#ifndef __CPU_include__#define __CPU_include__// Die folgenden drei Funktionen werden in cpu.asm implementiert.extern "C" void int_enable ();extern "C" void int_disable ();extern "C" void cpu_idle ();extern "C" void cpu_halt ();class CPU {public: inline CPU() : int_status(0) { disable_int (); } // Erlauben von (Hardware-)Interrupts inline void enable_int () { if(int_status > 0) --int_status; if(int_status == 0) int_enable(); } // Interrupts werden ignoriert/verboten inline void disable_int () { int_disable(); ++int_status; } inline void idle() { cpu_idle(); } // Prozessor anhalten inline void halt () { cpu_halt (); } inline bool allow_int() { return int_status==0; } inline void reset() { int_status=0; int_enable(); }//private: int int_status; };#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -