/* scheduler.h - Scheduler interface. Copyright (C) 2009 Free Software Foundation, Inc. Written by Neal H. Walfield . This file is part of the GNU Hurd. The GNU Hurd is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 3 of the License, or (at your option) any later version. The GNU Hurd is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see . */ #ifndef VIENGOOS_SCHEDULER_H #define VIENGOOS_SCHEDULER_H #include "thread.h" extern struct thread *current_thread; /* Schedule thread THREAD to run next. If thread is NULL, selects a new thread. */ extern void thread_schedule (struct thread *thread); extern void thread_make_runnable (struct thread *thread); extern void thread_suspend (struct thread *thread); extern void scheduler_bootstrap (void); #endif