Main Page | Modules | Namespace List | Class Hierarchy | Class List | Directories | File List | Namespace Members | Class Members | File Members

thread_state.h

Go to the documentation of this file.
00001 // AUTOMATICALLY GENERATED -- DO NOT EDIT!         -*- c++ -*-
00002 
00003 #ifndef thread_state_h
00004 #define thread_state_h
00005 
00006 //
00007 // INTERFACE definition follows 
00008 //
00009 
00010 
00011 // When changing these constants, change them also in shared/shortcut.h!
00012 enum Thread_state
00013 {
00014   Thread_invalid          = 0,    // tcb unallocated
00015   Thread_ready            = 0x1,  // can be scheduled
00016   Thread_utcb_ip_sp       = 0x2,  // needs to reload user ip/sp from utcb
00017   Thread_receiving        = 0x4,  // waiting for message from specified sender
00018   Thread_polling          = 0x8,  // waiting to send message to specified rcvr
00019   Thread_ipc_in_progress  = 0x10, // an IPC operation has not been finished
00020   Thread_send_in_progress = 0x20, // an IPC send operation hasn't been finished
00021   Thread_busy             = 0x40, // an IPC rcv handshake has not been finished
00022   Thread_lipc_ready       = 0x80, // can we safely overwrite the stack?
00023   // the ipc handshake bits needs to be in the first byte, 
00024   // the shortcut depends on it
00025 
00026   Thread_cancel           = 0x100,// state has been changed -- cancel activity
00027   Thread_dead             = 0x200,// tcb allocated, but inactive (not in any q)
00028   Thread_polling_long     = 0x400,// sender waiting for rcvr to page in data
00029   Thread_busy_long        = 0x800,  // receiver going to sleep in long IPC
00030   Thread_rcvlong_in_progress = 0x1000,  // receiver in long IPC
00031   Thread_delayed_deadline = 0x2000, // delayed until periodic deadline
00032   Thread_delayed_ipc      = 0x4000, // delayed until periodic ipc event 
00033   Thread_fpu_owner        = 0x8000, // currently owns the fpu
00034   Thread_alien            = 0x10000, // Thread is an alien, is not allowed 
00035                                      // to do system calls
00036   Thread_dis_alien        = 0x20000, // Thread is an alien, however the next
00037                                      // system call is allowed
00038 
00039   // constants for convenience
00040   Thread_ipc_sending_mask    = Thread_send_in_progress |
00041                                Thread_polling |
00042                                Thread_polling_long,
00043 
00044   Thread_ipc_receiving_mask  = Thread_receiving |
00045                                Thread_busy |
00046                                Thread_rcvlong_in_progress |
00047                                Thread_busy_long,
00048 
00049   Thread_ipc_mask            = Thread_ipc_in_progress |
00050                                Thread_ipc_sending_mask |
00051                                Thread_ipc_receiving_mask,
00052 };
00053 
00054 #endif // thread_state_h

Generated on Mon Sep 26 14:20:12 2005 for Fiasco by  doxygen 1.4.2