Idiomas: English | 简体中文 | 繁體中文 | 日本語 | 한국어 | Français | Deutsch | Español | Italiano | Русский | العربية
← Documentación · ← Proyecto NeverC
Ejemplos compilables que demuestran las capacidades de compilación cruzada de NeverC. Todos compilan desde macOS / Linux — sin necesidad de entorno Windows.
| Ejemplo | Descripción | Características clave |
|---|---|---|
| Servidor de juego autoritativo | Backend de juego multiplataforma | Tick fijo 60 Hz, sesiones TCP, entrada UDP/QUIC, protección anti-replay |
| Recolector anti-trampas | Ingesta de telemetría reforzada | mTLS, NRPC streaming, telemetría HMAC, pipeline de auditoría acotado |
| Ejemplo | Descripción | Características clave |
|---|---|---|
| Controlador de kernel Windows | Controlador WDM mínimo | Compilación cruzada .sys para x64 (predeterminado) y ARM64, auto-LTO, enlazador integrado |
| Controlador Windows + CET | Controlador con Intel CET Shadow Stack | Código kernel compatible CET (solo x64), /guard:ehcont |
| Controlador Windows + punto flotante | Controlador con punto flotante/SIMD | Punto flotante seguro en modo kernel en x64 y ARM64 |
| Windows Ring3 EXE | Aplicación consola modo usuario | GetSystemInfo, enumeración procesos, VirtualAlloc |
| Windows Ring3 DLL | DLL modo usuario | ReadProcessMemory, VirtualAllocEx, enumeración módulos |
| Ejemplo | Descripción | Características |
|---|---|---|
| Linux Hello World | Programa C mínimo | Compilación cruzada desde macOS/Windows |
| Linux POSIX | Programación de sistemas POSIX | pthreads, mmap, pipe, señales |
| Linux Estático | Binario completamente estático | Enlace -static |
| Linux Red | Demo socket TCP | Cliente/servidor |
| Linux Math + zlib | Math + compresión | Trigonometría, zlib, CRC32 |
| Ejemplo | Descripción | Características |
|---|---|---|
| Aplicación macOS | Ejecutable nativo Mach-O | sysctl, uname, Mach host_info/task_info, introspección de procesos |
| Biblioteca dinámica macOS | Biblioteca nativa .dylib |
Mach vm_read/vm_write, vm_alloc/vm_dealloc, task_info, XOR |
| Ejemplo | Descripción | Características |
|---|---|---|
| Android ELF | Binario ARM64 nativo para dispositivos rooteados | Compilación cruzada Android, dlopen/liblog, /proc, detección root |
| Biblioteca compartida Android | Biblioteca .so nativa ARM64 |
Biblioteca compartida, mmap RWX, cifrado XOR |
No se necesita árbol de fuentes del kernel — NeverC compila contra el runtime mínimo integrado. Fuente única para GKI 5.10–6.12.
| Ejemplo | Descripción | Características |
|---|---|---|
| Kernel Hello | Módulo .ko mínimo |
Bootstrap kallsyms vía kprobe, validación insmod mínima |
| Plantilla driver kernel | Plantilla de resolución dinámica de símbolos | kallsyms_lookup_name, ABI estable GKI, 5.10–6.12 |
| Kernel Inline Interpose | Interpose inline en do_faccessat |
Parche seguro BTI/PAC, modo context interpose, reubicación PC-relativa |
| Kernel Syscall Interpose | Tabla syscall / inline / context interpose | Reemplazo sys_call_table, interpose inline, context interpose |
| Kernel Lowvis | Gestión de visibilidad de módulo | Visibilidad list/sysfs/proc, wrappers de credenciales, estado de aplicación SELinux |
| Kernel Full SDK | Integración SDK completa | Netlink IPC, interposes, wrappers de credenciales, visibilidad de módulo, control de política SELinux, VMA, archivos |
| Kernel Chardev | Dispositivo carácter + ioctl | misc_register, despacho ioctl, /proc seq_file |
| Kernel Netlink | IPC netlink bidireccional | Comandos PING/VERSION/ECHO, nvk_nl_open/nvk_nl_reply |
| Kernel Probe | Sondear una instrucción arbitraria | neverc_krt_probe_register, contexto completo de registros, encadenado por prioridad, omitir/redirigir |
| Kernel Multiarchivo | Módulo de kernel multiarchivo | Un solo NEVERC_KRT_BOOTSTRAP(), estado compartido weak_odr, división init/interpose/utilidades |
Todos los ejemplos siguen el mismo patrón:
cd examples/example-name
neverc makeSobre el controlador Makefile en sí, véase neverc build / make →.
Sobrescribe la ruta del compilador si es necesario:
neverc make NEVERC=/path/to/nevercLos ejemplos de controladores Windows seleccionan la arquitectura con ARCH
(x64 por defecto). El ejemplo CET es solo para x64 — CET es una característica
de x86:
neverc make ARCH=x64 # Build for x64 (default)
neverc make ARCH=arm64 # Build for ARM64
neverc make all-arch # Build every architecture the example supports
neverc make TESTSIGN=1 # Attach an Authenticode test signatureLos ejemplos de Linux admiten selección de arquitectura:
neverc make TARGET=aarch64-linux-gnu # Build for ARM64
neverc make TARGET=x86_64-linux-gnu # Build for x86_64 (default)Los ejemplos de macOS admiten selección de arquitectura:
neverc make TARGET=arm64-apple-macos # Build for Apple Silicon (default)
neverc make TARGET=x86_64-apple-macos # Build for IntelLos ejemplos de Android apuntan a ARM64 por defecto:
cd examples/android-elf
neverc make # Build
neverc make run # Build + push to device + run via adb- Cadena de herramientas única: NeverC maneja preprocesamiento, compilación, optimización (auto-LTO) y enlazado en una sola invocación
- SDK integrado: Windows SDK/WDK, sysroot de Linux (Ubuntu 22.04), sysroot de macOS (macOS 14) y sysroot de Android (NDK r26c, API 21+) están integrados en
runtime/— cero dependencias externas - Independiente del host: Compila desde macOS (arm64/x86_64), Linux (x86_64/aarch64) o Windows con comandos idénticos
- Multi-objetivo: Compilación cruzada a Windows PE (
.sys/.exe/.dll), Linux ELF, macOS Mach-O (.dylib) y Android ELF desde cualquier host - Soporte de depuración: Pasa
-gpara información de depuración DWARF; inspecciona conllvm-dwarfdump