mirror of
https://github.com/rdmsr/zag.git
synced 2026-10-27 13:58:20 +00:00
84 lines
2.1 KiB
Zig
84 lines
2.1 KiB
Zig
// === Exported Modules ===
|
|
pub const private = @import("private.zig");
|
|
|
|
const p = private;
|
|
|
|
// === Exported types ===
|
|
pub const Ipl = p.ipl.Ipl;
|
|
pub const SpinLock = p.spinlock.SpinLock;
|
|
pub const QSpinLock = p.spinlock.QSpinLock;
|
|
pub const Thread = p.thread.Thread;
|
|
pub const Dpc = p.dpc.Dpc;
|
|
pub const TimeCounter = p.time.TimeCounter;
|
|
pub const Timer = p.timer.Timer;
|
|
pub const Console = p.log.Console;
|
|
pub const CpuLocal = p.cpu.CpuLocal;
|
|
pub const ExportedCpuLocal = p.cpu.ExportedCpuLocal;
|
|
pub const CpuMask = p.cpu.CpuMask;
|
|
pub const AtomicCpuMask = p.cpu.AtomicCpuMask;
|
|
pub const Event = p.event.Event;
|
|
pub const Queue = p.queue.Queue;
|
|
pub const Mutex = p.mutex.Mutex;
|
|
pub const ShootdownState = p.shootdown.ShootdownState;
|
|
|
|
// === Exported Interfaces ===
|
|
pub const panic = p.panic.panic;
|
|
|
|
pub const ipl = struct {
|
|
pub const raise = p.ipl.raise;
|
|
pub const lower = p.ipl.lower;
|
|
pub const set_hardware = p.ipl.set_hardware;
|
|
pub const current = p.ipl.current;
|
|
};
|
|
|
|
pub const thread = struct {
|
|
pub const init = p.thread.init;
|
|
};
|
|
|
|
pub const dpc = struct {
|
|
pub const enqueue = p.dpc.enqueue;
|
|
};
|
|
|
|
pub const time = struct {
|
|
pub const register_source = p.time.register_source;
|
|
pub const read_time = p.time.read_time;
|
|
pub const best = p.time.best;
|
|
pub const sleep = p.time.sleep;
|
|
};
|
|
|
|
pub const sched = struct {
|
|
pub const enqueue = p.sched.enqueue;
|
|
pub const block = p.sched.block;
|
|
pub const unblock = p.sched.unblock;
|
|
pub const late_init = p.sched.late_init;
|
|
};
|
|
|
|
pub const timer = struct {
|
|
pub const set = p.timer.set;
|
|
pub const cancel = p.timer.cancel;
|
|
};
|
|
|
|
pub const wait = struct {
|
|
pub const wait_one = p.wait.wait_one;
|
|
pub const wait_any = p.wait.wait_any;
|
|
};
|
|
|
|
pub const log = struct {
|
|
pub const register_console = p.log.register_console;
|
|
pub const log = p.log.log;
|
|
pub const ringbuffer = &p.log.ringbuffer;
|
|
pub const event = &p.log.event;
|
|
};
|
|
|
|
pub const cpu = struct {
|
|
pub const current = p.cpu.current;
|
|
};
|
|
|
|
pub const shootdown = struct {
|
|
pub const submit = p.shootdown.submit;
|
|
pub const shootdowns = &p.shootdown.shootdowns;
|
|
};
|
|
|
|
/// Number of CPUs on the system
|
|
pub var ncpus: usize = 0;
|