General Purpose library for Freestanding C++ and POSIX systems
25개 이상의 토픽을 선택하실 수 없습니다. Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 

28 lines
414 B

#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();
};
}