11 مستودعات
Stages work across interrupt, softirq, workqueue, and kernel thread contexts, each with distinct constraints on sleeping, blocking, and memory access.
Distinguishing note: No candidate covers the specific kernel execution context layering (interrupt, softirq, workqueue, kernel thread) with distinct constraints.
Explore 11 awesome GitHub repositories matching operating systems & systems programming · Kernel Execution Context Layering. Refine with filters or upvote what's useful.
The Linux Kernel Module Programming Guide is an educational resource that teaches how to write, compile, and manage loadable kernel modules for modern Linux kernels. It covers the complete lifecycle of kernel modules, from building and loading to unloading and debugging, with a focus on extending kernel functionality without recompiling the entire kernel. The guide provides comprehensive coverage of core kernel programming concepts including dynamic module loading, file-operation registration, interrupt handling, kernel-user data copying, concurrency control, and deferred task scheduling. It
Covers scheduling deferred work from interrupt handlers using workqueues and threaded handlers.
CppGuide is a curated collection of educational resources and practical guides focused on C++ server development, Linux kernel internals, concurrent programming, network protocols, and security exploitation. It provides structured learning paths for backend developers, covering everything from interview preparation to building high-performance network servers and understanding operating system fundamentals. The guide distinguishes itself by offering in-depth, hands-on tutorials that walk through real-world implementations, including building a Redis-like server from scratch, designing custom
Explains how the kernel stages work across interrupt, softirq, workqueue, and kernel thread contexts.
TIC-80 is a fantasy console platform and multi-language game engine that provides a virtual retro game development environment. It operates via a bytecode virtual machine that executes game logic within fixed memory and resolution constraints. The project distinguishes itself by offering integrated asset editors for pixel art, tile maps, and a pattern-based chiptune audio workstation all within a single environment. It supports multi-language scripting, allowing developers to write logic in Lua, JavaScript, or Ruby, and provides a standalone game exporter to package projects into native execu
Provides a scanline interrupt system for creating retro raster effects and per-scanline palette shifts.
CRI-O is an open-source container runtime that implements the Kubernetes Container Runtime Interface (CRI) to manage container images, pods, and containers on cluster nodes using OCI-compatible runtimes. It serves as a node-level container manager that handles image pulling, container lifecycle, and resource monitoring for Kubernetes clusters, running containers according to the Open Container Initiative specifications. The runtime distinguishes itself through live configuration reloading that applies changes to runtime definitions, registry mirrors, and TLS certificates without restarting th
Configures how the runtime restores irqbalance settings after dynamic IRQ pinning by high-performance hooks.
seL4 is a formally verified microkernel whose C implementation is backed by machine-checked mathematical proofs of correctness, confidentiality, integrity, and availability. It enforces strict isolation between processes through hardware-enforced address space separation and a capability-based access control system, where each process holds explicit rights only to the resources it has been granted. The kernel exposes hardware resources through a minimal API of system calls that manage threads, address spaces, and inter-process communication, with synchronous IPC supporting sender-identifying b
Provides capability-based IRQ handler management as a core kernel mechanism for interrupt control.
هذا المشروع عبارة عن نظام بناء برامج ثابتة OpenWrt وأداة بناء Linux مضمنة مصممة لإنشاء صور برامج ثابتة مخصصة لأجهزة التوجيه لأجهزة NanoPi. يعمل كمجموعة تخصيص لنظام تشغيل الشبكة، ويوفر بيئة منظمة لتجميع صور نظام التشغيل المصممة خصيصًا التي تدمج برامج تشغيل وحزم وتحسينات نواة محددة. يتميز النظام بضبط الأجهزة والأداء العميق، بما في ذلك تفريغ التدفق في مساحة النواة لتسريع حركة المرور وموازنة مقاطعة المعالجة المتعددة المتماثلة لمنع اختناقات المعالجة أحادية النواة. يتيح تكامل الأجهزة المتخصصة مثل دعم محول USB اللاسلكي لنطاقات 5G، والتحكم في مروحة التبريد، وتحسين سرعة ساعة وحدة المعالجة المركزية لفتح حدود تردد الأجهزة. تغطي عملية البناء مجموعة واسعة من الإمكانيات، بما في ذلك تكامل التصحيح المخصص، وتوسيع القسم التلقائي، وتجميع البرامج المثبتة مسبقًا لخدمات الشبكة المنزلية. ويدعم وظائف إدارة الشبكة مثل تكوين DNS، ونفق VPN، وحظر الإعلانات، ودعم الحاويات لتشغيل التطبيقات على الأجهزة المضمنة. يستخدم المشروع نصوص shell لأتمتة توليد صور البرامج الثابتة وإدارة تحديثات النظام.
Distributes network card interrupt loads across multiple CPU cores to prevent single-core processing bottlenecks.
Asterinas هو نواة نظام تشغيل آمنة للذاكرة مصممة لمنع سباقات البيانات وتلف الذاكرة. تعمل كنواة متوافقة مع Linux-ABI، مما يتيح تنفيذ ملفات Linux الثنائية الحالية وأحمال عمل الحاويات مع توفير نموذج توزيع نظام تشغيل تصريحي. يتميز المشروع بكونه مضيف حاويات آلة افتراضية ونظام تشغيل ضيف للحوسبة السرية، مما يسمح له بالعمل داخل بيئات تنفيذ موثوقة معزولة بالأجهزة مثل Intel TDX. ينفذ قاعدة حوسبة موثوقة دنيا عن طريق عزل العمليات غير الآمنة منخفضة المستوى ويفصل آليات النواة الأساسية عن تنفيذات السياسات المحددة. يغطي النظام مجموعة واسعة من القدرات، بما في ذلك إدارة الذاكرة الفيزيائية والافتراضية، والمعالجة المتعددة المتماثلة، وتجريد الأجهزة لمختلف معماريات CPU. كما يتضمن دعمًا لأوقات تشغيل الحاويات الآمنة، ومجموعة شاملة من بدائيات الشبكات والمقابس (sockets)، وسلسلة أدوات متخصصة لتجميع النواة والمحاكاة. يدعم المشروع النشر متعدد المعماريات عبر منصات x86-64 و RISC-V 64 و LoongArch 64.
Coordinates context switches, interrupts, and system calls between the kernel and multiple CPU cores.
rpitx is a software-defined radio transmitter that runs on a Raspberry Pi, generating radio frequency signals from 5 KHz to 1500 MHz using only a GPIO pin. It functions as an analog and digital modulator, an RF signal generator, a radio protocol emulator, and a signal capture and replay system, all without requiring additional hardware. The project achieves this by combining sample precomputation, direct memory-mapped GPIO toggling, and an interrupt-free timing loop to produce precise carrier frequencies and modulation patterns. It supports a wide range of modulation types including AM, FM, S
Maintains carrier frequency accuracy by running a tight CPU-bound loop that avoids operating system interrupts and context switches.
هذا المشروع عبارة عن مورد تعليمي يوفر برنامجاً تعليمياً شاملاً للتطوير لكتابة وتحميل برامج eBPF باستخدام C وGo وRust داخل نواة Linux. يعمل كدليل تقني لتطوير منطق مخصص للتنفيذ مباشرة في النواة. تغطي المواد مجالات متخصصة بما في ذلك مراقبة النواة والتتبع، وتنفيذ الأمان للكشف عن التسلل، وهندسة الشبكات عالية الأداء لتصفية الحزم وموازنة الحمل. كما يتضمن أدلة مخصصة لتتبع نواة Linux واستخدام kprobes وuprobes وtracepoints. يشمل المشروع مجموعة واسعة من مجالات القدرات، مثل أجهزة النواة، ومراقبة النظام، وتحليل الشبكات، وإنفاذ الأمان. كما يمتد إلى تصحيح الأخطاء على مستوى الأجهزة لوحدات معالجة الرسومات والمشغلات، بالإضافة إلى معالجة النظام منخفضة المستوى وإدارة الموارد.
Measures the timing, distribution, and performance of hardware and software interrupt handlers within the kernel.
NuttX is a POSIX-compliant real-time operating system designed for microcontrollers ranging from 8-bit to 64-bit architectures. It provides a deterministic execution environment with a real-time task scheduler and a POSIX embedded kernel to ensure portable code execution across diverse hardware targets. The project distinguishes itself through a comprehensive hardware abstraction layer that provides standardized drivers for I2C, SPI, CAN, and USB across various semiconductor chipsets. It also features an embedded networking stack supporting TCP, UDP, IPv4, and IPv6, alongside industrial proto
Separates unprivileged user-mode applications from the kernel using architecture-specific software interrupts.
This project is an educational operating system kernel designed to demonstrate the fundamental architectural principles of memory paging and process management. It is implemented as a minimal kernel that serves as a practical reference for building a functioning system from the ground up. The implementation features a preemptive multitasking kernel that switches execution contexts between threads to share a single CPU. It includes an x86 virtual memory manager that uses paging to map virtual addresses to physical memory and isolate processes. The system covers low-level hardware interfacing
Provides the capability to swap execution states between tasks to allow shared CPU access.