CLTS -- Clear Task-Switched Flag in CR0

CLTS -- Clear Task-Switched Flag in CR0 Opcode Instruction Clocks Description OF 06 CLTS 5 Clear task-switched flag Operation TS Flag in CR0 = 0; Description CLTS clears the task-switched (TS) flag in register CR0. This flag is set by the 80386 every time a task switch occurs. The TS flag is used to manage processor extensions as follows: * Every execution of an ESC instruction is trapped if the TS flag is set. * Execution of a WAIT instruction is trapped if the MP flag and the TS flag are both set. Thus, if a task switch was made after an ESC instruction was begun, the processor extension's context may need to be saved before a new ESC instruction can be issued. The fault handler saves the context and resets the TS flag. CLTS appears in operating system software, not in application programs. It is a privileged instruction that can only be executed at privilege level 0. Flags Affected TS = 0 (TS is in CR0, not the flag register) Protected Mode Exceptions #GP(0) if CLTS is executed with a current privilege level other than 0 Real Address Mode Exceptions None (valid in Real Address Mode to allow initialization for Protected Mode) Virtual 8086 Mode Exceptions Same exceptions as in Real Address Mode