kb · c reference
Язык (указатели, управление памятью, структуры, препроцессор, UB и strict aliasing), стандартная библиотека (libc, POSIX-потоки), и экосистема низкоуровневых системных библиотек — в первую очередь kernel bypass и latency-критичные транспорты (DPDK, io_uring, AF_XDP, RDMA), которым в остальных языковых разделах (cpp/rust/go) естественного места нет, потому что это C ABI в чистом виде. Все 3 раздела — каркасы.The language (pointers, memory management, structs, the preprocessor, UB and strict aliasing), the standard library (libc, POSIX threads), and the ecosystem of low-level system libraries — primarily kernel-bypass and latency-critical transports (DPDK, io_uring, AF_XDP, RDMA), which have no natural home in the other language sections (cpp/rust/go) since these are C ABI in their purest form. All 3 sections are skeletons.
Указатели и арифметика указателей, ручное управление памятью, структуры/юнионы/битовые поля, препроцессор, storage classes, UB и strict aliasing, отличия C11/C17/C23.Pointers and pointer arithmetic, manual memory management, structs/unions/bit-fields, the preprocessor, storage classes, UB and strict aliasing, C11/C17/C23 differences.
libc: string.h/stdlib.h/stdio.h, threads.h (C11), POSIX (pthread, unistd, mmap), errno и обработка ошибок в стиле C.libc: string.h/stdlib.h/stdio.h, threads.h (C11), POSIX (pthread, unistd, mmap), errno and C-style error handling.
Kernel bypass и low-latency транспорты (DPDK, io_uring/liburing, AF_XDP/libbpf, RDMA/libibverbs), build tooling (CMake/Meson/Make), тестирование (Unity/CMocka/Check).Kernel-bypass and low-latency transports (DPDK, io_uring/liburing, AF_XDP/libbpf, RDMA/libibverbs), build tooling (CMake/Meson/Make), testing (Unity/CMocka/Check).
статусstatus
Раздел выделен из cpp/ отдельно, поскольку низкоуровневые системные библиотеки (DPDK, io_uring, AF_XDP, RDMA) спроектированы под чистый C ABI — родной язык, а не C++ с обёрткой. Появился из разговора про замену gRPC/Redpanda на SBE + Aeron в cran: у Aeron Media Driver/клиент есть C-реализация (C++ — лишь обёртка над ней), а сопутствующие kernel-bypass библиотеки почти без исключений тоже пишутся на чистом C. Три раздела: language/std — как в cpp/rust/go, но под C-специфику (без oop/ — язык не даёт материала для сравнительной ООП-серии); ecosystem/ — с первым содержательным блоком kernel-bypass/networking.This section was split out of cpp/ because low-level system libraries (DPDK, io_uring, AF_XDP, RDMA) are designed for the plain C ABI — their native language, not C with a C++ wrapper. It grew out of the conversation about replacing gRPC/Redpanda with SBE + Aeron in cran: Aeron's Media Driver/client has a C implementation (C++ is just a wrapper over it), and the surrounding kernel-bypass libraries are, with almost no exceptions, written in plain C too. Three sections: language/std mirror cpp/rust/go but for C specifics (no oop/ — the language offers nothing for the cross-language OOP comparison series); ecosystem/ opens with its first substantive block, kernel-bypass/networking.