14 #include "sys/scheduler.h"
16 extern bool scheduler_working;
19 size_t frequency = CLOCK_FREQ;
34 return (
double)tick / (double)frequency;
55 if (current_ticks + delay <
getTicks()){
58 __asm__
volatile(
"hlt");
69 uint32_t needticks = milliseconds * frequency;
84 task_switch_v2_wrapper(regs);
100 divisor = BASE_FREQ / f;
104 low = (uint8_t) (divisor & 0xFF);
105 high = (uint8_t) ((divisor >> 8) & 0xFF);
struct registers __attribute__((packed))
Структура данных пакета от мыши
bool is_multitask(void)
Получение состояния о мультипотоке
size_t getFrequency()
Получить частоту таймера
size_t getTicks()
Получить количество тиков
void timer_callback(__attribute__((unused)) registers_t regs)
Таймер Callback.
void init_timer(uint32_t f)
Инициализация модуля системного таймера
void sleep_ms(uint32_t milliseconds)
Ожидание по миллисекундам
void sleep_ticks(uint32_t delay)
Ожидание по тикам