This commit is contained in:
2026-04-10 20:40:28 +08:00
parent 30b2a126c5
commit d023ee8459
13 changed files with 404 additions and 20 deletions

13
clks/include/clks/kelf.h Normal file
View File

@@ -0,0 +1,13 @@
#ifndef CLKS_KELF_H
#define CLKS_KELF_H
#include <clks/types.h>
typedef u64 (*clks_kelf_entry_fn)(u64 tick, u64 run_count);
void clks_kelf_init(void);
void clks_kelf_tick(u64 tick);
u64 clks_kelf_count(void);
u64 clks_kelf_total_runs(void);
#endif

View File

@@ -11,6 +11,7 @@ enum clks_service_id {
CLKS_SERVICE_FS = 3,
CLKS_SERVICE_DRIVER = 4,
CLKS_SERVICE_SCHED = 5,
CLKS_SERVICE_KELF = 6,
};
enum clks_service_state {

View File

@@ -10,6 +10,8 @@
#define CLKS_SYSCALL_SERVICE_COUNT 4ULL
#define CLKS_SYSCALL_SERVICE_READY_COUNT 5ULL
#define CLKS_SYSCALL_CONTEXT_SWITCHES 6ULL
#define CLKS_SYSCALL_KELF_COUNT 7ULL
#define CLKS_SYSCALL_KELF_RUNS 8ULL
void clks_syscall_init(void);
u64 clks_syscall_dispatch(void *frame_ptr);