Разработка 2026-07-10 · 10 мин

Введение в SynAPI

Системные вызовы SynAPI: процессы, VFS, каналы, гостевые агенты. Примеры кода.

Зачем SynAPI

POSIX даёт совместимость. SynAPI даёт скорость. Прямые вызовы ядра без прослоек libc, без лишних копирований, без overhead.

Процессы

#include <synapi.h>

void worker(void *arg) {
    const char *msg = (const char *)arg;
    syn_console_write(msg, strlen(msg));
}

int main(void) {
    syn_proc_create("worker-1", worker, "hello from synapi\n");
    syn_yield();
    return 0;
}

VFS

int fd = syn_vfs_open("/data/config.ini", O_RDWR, 0);
char buf[256];
int n = syn_vfs_read(fd, buf, sizeof(buf));
syn_vfs_close(fd);

Каналы (IPC)

syn_chan_t ch = syn_channel_create(64);
syn_channel_send(ch, msg, len);
syn_channel_recv(ch, buf, sizeof(buf));  // блокирующий

Гостевые агенты

// Запись в консоль хоста (QEMU GA транспорт)
syn_ga_console_write("status: ok\n", 12);