3 dépôts
Suspending a process for a specific duration to allow other tasks to run.
Distinct from Execution Pausing: Distinct from generic execution pausing by focusing on clock-tick based CPU yielding.
Explore 3 awesome GitHub repositories matching software engineering & architecture · Process Sleeping. Refine with filters or upvote what's useful.
xv6 is a Unix-like educational operating system designed for teaching kernel concepts. It is implemented as an instructional kernel for x86 and RISC-V architectures, featuring a virtual memory manager and support for symmetric multiprocessing. The system is designed to demonstrate core OS principles through a simplified re-implementation of Unix Version 6. It provides a controlled environment for studying system calls, trap handling, and process lifecycles. Its capability surface covers process management, including scheduling and context switching, and memory management via page tables for
Provides the ability to suspend processes for specified clock ticks to yield CPU time.
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
Teaches condition-based process sleeping using waitevent and wakeup primitives.
Ce projet est une collection de systèmes d'exploitation minimaux, de chargeurs de démarrage (bootloaders) et de pilotes matériels utilisés pour démontrer la programmation système x86 bas niveau et l'interfaçage matériel. Il sert de boîte à outils de développement de noyau et de laboratoire de programmation système conçu pour tester les concepts d'architecture et le comportement matériel au sein d'un émulateur système. Le dépôt fournit des implémentations de référence pour créer des images disque amorçables et charger des étapes de noyau. Il inclut des guides pour implémenter les transitions en mode protégé, la pagination mémoire, les tables de descripteurs d'interruption et le multiprocesseur symétrique sur matériel x86. La base de code couvre un large éventail de primitives système, incluant le mappage de mémoire virtuelle, la gestion des interruptions matérielles et la détection de mémoire physique. Il contient également des pilotes bare-metal pour le haut-parleur PC, le clavier PS/2, les ports série et les tampons texte VGA. Le projet inclut une chaîne d'outils binaire brute pour compiler le code source assembleur en images pour une exécution matérielle directe et prend en charge les tests via l'émulation matérielle et le débogage à distance.
Provides a system sleep delay by interfacing with the hardware timer's clock ticks.