General Purpose library for Freestanding C++ and POSIX systems
Vous ne pouvez pas sélectionner plus de 25 sujets
Les noms de sujets doivent commencer par une lettre ou un nombre, peuvent contenir des tirets ('-') et peuvent comporter jusqu'à 35 caractères.
|
#pragma once
|
|
|
|
#include "gp/indexed_array.hpp"
|
|
#include "gp/vfs/process_data.hpp"
|
|
#include "gp/vfs/runqueue.hpp"
|
|
|
|
namespace gp{
|
|
|
|
class system;
|
|
|
|
struct scheduler {
|
|
topic_list::node_ptr previous;
|
|
topic_list::node_ptr current;
|
|
size_t id;
|
|
system& sys;
|
|
|
|
no_inline_decl(
|
|
void yield_to(topic_list::node_ptr target)
|
|
);
|
|
|
|
scheduler(class system&, size_t token);
|
|
|
|
[[noreturn]] void startup();
|
|
|
|
void yield();
|
|
};
|
|
|
|
}
|