22 रिपॉजिटरी
Mechanisms such as mutexes and semaphores used to coordinate access to shared resources between processes.
Distinct from Resource Loading Synchronization: Candidates focus on session sharing or UI resource loading rather than general process synchronization locks.
Explore 22 awesome GitHub repositories matching operating systems & systems programming · Process Synchronization Locks. Refine with filters or upvote what's useful.
Boost is a collection of portable, high-performance source libraries that extend the C++ standard library. It provides a wide range of reusable components, data structures, and algorithms designed to add capabilities to the base language across different platforms. The project is distinguished by its extensive focus on compile-time template metaprogramming and generic programming. It implements advanced architectural patterns such as policy-based design, concept-based type validation, and the use of SFINAE for conditional template resolution to minimize runtime overhead. The library covers a
Coordinates shared resource access using mutexes, semaphores, and condition variables between processes.
This project is an Android RPA framework designed for automating user interfaces and system tasks on rooted Android devices using Python and ADB. It provides a suite of tools for rooted device management, allowing for programmatic control of system settings, application lifecycles, and shell command execution via a remote API. The framework distinguishes itself through a combination of dynamic instrumentation and AI integration. It can inject scripts into running processes to hook Java interfaces and modifies application behavior in real time. Additionally, it supports large language model in
Restricts API access to a single device instance to prevent concurrent process interference.
This project is a Python data science curriculum and programming tutorial collection. It provides a structured set of educational notebooks and scripts designed to teach data analysis, machine learning, and deep learning. The repository serves as a learning path for building and tuning predictive models, including regression, decision trees, and neural networks. It includes a data visualization guide for creating financial time-series plots and a multiprocessing reference for implementing parallel task execution and shared memory synchronization. The curriculum covers broader capability area
Implements synchronization locks to prevent data corruption when multiple processes access shared memory.
Hazelcast is a distributed data platform that combines an in-memory data grid with a stream processing engine to support real-time analytics and event-driven applications. It functions as a partitioned, distributed key-value store that replicates data across cluster nodes to provide low-latency access and high availability. The platform also serves as a distributed SQL query engine, allowing users to execute standard SQL statements against both in-memory datasets and external data sources. What distinguishes Hazelcast is its use of a distributed consensus subsystem to maintain strongly consis
Improve performance for non-mutating operations by executing logic on entries without acquiring locks or checking lock status.
Transitions is an object-oriented finite state machine library for Python. It provides a framework for managing valid states and the logic for moving between them, including implementations for asynchronous state machines and thread-safe state managers. The library supports hierarchical state machines that allow states to be nested to organize complex subtasks and logical contexts. It includes tools for generating visual diagrams of states and transitions to document machine logic. The project covers state management primitives such as lifecycle callbacks, conditional transition guarding, an
Uses reentrant locks to prevent race conditions during simultaneous state transition triggers.
Masuit.Tools is a comprehensive static utility library for .NET and ASP.NET Core development. It provides a broad collection of reusable helper methods and infrastructure components that cover common programming tasks without requiring dependency injection or instance management. The library is organized as flat utility classes, making its functionality directly accessible from anywhere in a project. The toolkit distinguishes itself through a wide range of integrated capabilities that go beyond typical utility libraries. It includes a multithreaded range-request file downloader with pause and
Provides a utility to run database queries under a read-uncommitted transaction to avoid blocking.
Concurrent Ruby is a comprehensive concurrency toolkit for the Ruby language that provides thread-safe data structures, synchronization primitives, and asynchronous execution patterns. It implements core concurrency abstractions including an actor model framework where isolated actors communicate through asynchronous message passing, a future and promise system for composing non-blocking operations, and thread pool executors that manage reusable worker threads for concurrent task execution. The library distinguishes itself through a broad set of coordination mechanisms that go beyond basic th
Implements non-blocking lock acquisition that returns immediately with a boolean instead of blocking the caller.
InterviewGuide is a comprehensive technical interview preparation platform that covers the full spectrum of software engineering recruitment, from foundational computer science concepts through to offer negotiation. It provides structured learning paths across algorithms, operating systems, databases, networking, and programming languages, with a particular emphasis on C++ and Go. The platform aggregates real interview experiences and company-specific questions from major tech employers, offering candidates a searchable database of past written exam problems and detailed accounts of actual int
Coordinates access to shared resources using semaphores, mutexes, condition variables, and monitors to prevent race conditions.
This is an open-source, crowd-sourced wiki textbook that teaches Linux system programming in C. It covers the core operating system concepts of process management through the fork-exec-wait model, dynamic memory allocation using implicit free list heap allocators, inode-based file systems, inter-process communication via pipes and shared memory, POSIX threads with synchronization primitives, signal-based asynchronous notification, virtual memory with page table translation, and runtime diagnostics using Valgrind and GDB. The textbook distinguishes itself by providing practical, implementation
Explains trylock-based deadlock avoidance with non-blocking lock attempts and rollback.
यह प्रोजेक्ट एक PHP संगतता पॉलीफिल है जिसे भाषा के पुराने संस्करणों में PHP 7.2 से कोर फंक्शन्स और कॉन्स्टेंट्स को बैकपोर्ट करने के लिए डिज़ाइन किया गया है। यह एक PHP स्टैंडर्ड लाइब्रेरी एक्सटेंशन और वर्ज़न बैकपोर्ट के रूप में कार्य करता है, जो विभिन्न वातावरणों में सुसंगत व्यवहार सुनिश्चित करने के लिए PHP कोर में अंतराल को भरने वाली एक संगतता परत प्रदान करता है। यह लाइब्रेरी लापता स्टैंडर्ड लाइब्रेरी फंक्शन्स को लागू करके क्रॉस-वर्ज़न कोड पोर्टेबिलिटी को सक्षम बनाती है, जिससे नए भाषा फीचर्स को पुराने PHP वातावरणों पर चलाने की अनुमति मिलती है। यह सुनिश्चित करता है कि एप्लिकेशन एक सुसंगत इंटरफ़ेस बनाए रख सकें और पुराने संस्करणों पर चलने के बावजूद वर्तमान लाइब्रेरीज़ के साथ संगत रह सकें।
Sets a time-to-live for locks to ensure automatic release if a process crashes.
यह Java समवर्ती लाइब्रेरी मल्टी-थ्रेडेड निष्पादन, सिंक्रोनाइज़ेशन और मेमोरी स्थिरता को मैनेज करने के लिए टूल्स का एक सूट प्रदान करती है। यह लॉक-फ्री एटॉमिक्स, थ्रेड-सेफ कलेक्शंस, कार्य समन्वय प्रिमिटिव्स और वर्कर पूल्स के माध्यम से समवर्ती निष्पादन को लागू करने के लिए एक व्यापक फ्रेमवर्क के रूप में कार्य करती है। इस प्रोजेक्ट में एक समर्पित थ्रेड सिंक्रोनाइज़ेशन टूलकिट शामिल है जिसमें समवर्ती कार्यों के समय और क्रम को समन्वित करने के लिए लैचेस, बैरियर और सेमाफोर शामिल हैं। यह मैप्स, कतारों और सूचियों का एक समवर्ती संग्रह सूट भी प्रदान करता है जो मैन्युअल लॉकिंग के बिना डेटा साझाकरण को सक्षम बनाता है, साथ ही बुनियादी प्रकारों और संदर्भों के लिए लॉक-फ्री अपडेट के लिए एक एटॉमिक ऑपरेशन फ्रेमवर्क भी प्रदान करता है। लाइब्रेरी संसाधन उपयोग को अनुकूलित करने के लिए थ्रेड पूल प्रबंधन, डेटा दृश्यता सुनिश्चित करने के लिए मेमोरी मॉडल विश्लेषण, और रेस कंडीशंस को रोकने के लिए विभिन्न लॉक प्रबंधन तंत्रों सहित व्यापक क्षमता क्षेत्रों को कवर करती है। ये टूल्स सामूहिक रूप से मल्टी-थ्रेडेड एप्लिकेशन के विकास का समर्थन करते हैं जो साझा मेमोरी में सुसंगत स्टेट ट्रांज़िशन बनाए रखते हैं।
Provides reentrant locks that allow threads to acquire the same lock multiple times without deadlocking.
यह प्रोजेक्ट एक निर्देशात्मक रिपॉजिटरी और शिक्षण संसाधन है जो अध्ययन नोट्स, प्रोग्रामिंग गाइड और चलाने योग्य सोर्स कोड उदाहरणों का एक व्यापक संग्रह प्रदान करता है। यह Java SE और Java वेब डेवलपमेंट के लिए एक गाइड के रूप में कार्य करता है, जिसमें कोड नमूनों की एक लाइब्रेरी है जो सामान्य एल्गोरिदम और तकनीकी कार्यान्वयन का प्रदर्शन करती है। यह रिपॉजिटरी भाषा कोर और रनटाइम विश्लेषण पर केंद्रित है, जिसमें मल्टीथ्रेडिंग और कॉन्करेंसी पर विस्तृत ट्यूटोरियल हैं। यह सॉफ्टवेयर आर्किटेक्चर और डिज़ाइन पैटर्न, जैसे कि सिंगलटन और स्ट्रैटेजी पैटर्न के व्यावहारिक कार्यान्वयन प्रदान करता है, साथ ही Java Virtual Machine और बाइटकोड की खोज भी करता है। यह प्रोजेक्ट जेनेरिक्स और एनोटेशन जैसी भाषा की बुनियादी बातों, HTTP अनुरोध हैंडलिंग और सत्र प्रबंधन से जुड़े वेब डेवलपमेंट बेसिक्स, और थ्रेड लाइफसाइकिल और संसाधन सिंक्रनाइज़ेशन के लिए कॉन्करेंसी प्रिमिटिव्स सहित क्षमताओं की एक विस्तृत श्रृंखला को कवर करता है। इसमें सुरक्षा, डेटा प्रसंस्करण और डायनामिक पेज निर्माण के लिए उपयोगिताएँ भी शामिल हैं।
Orchestrates various locking strategies, including reentrant and read-write locks, to control shared resource access.
ZIO is a functional effect system for the JVM that models asynchronous and concurrent programs as pure, composable values with typed error handling and dependency injection. Its core identity is built on fiber-based concurrency, where lightweight, non-blocking fibers execute millions of concurrent tasks with structured lifecycle management, and a dual-channel error model that separates expected business failures from unexpected system defects at compile time. The system provides effect-typed dependency injection through a layer-based dependency graph, pull-based reactive stream processing with
Acquires reentrant locks that the same fiber can re-enter multiple times.
यह एक PHP लाइब्रेरी है जो PSR-6 और PSR-16 विनिर्देशों के माध्यम से डेटा कैश करने के लिए मानकीकृत इंटरफेस प्रदान करती है। यह एक कैश पूल मैनेजर और डिस्ट्रीब्यूटेड कैश एडेप्टर के रूप में कार्य करता है, जो एप्लिकेशन को की-वैल्यू पेयर्स को तार्किक रिपॉजिटरी और नेमस्पेस में व्यवस्थित करने की अनुमति देता है। इस प्रोजेक्ट में एक समर्पित कैश स्टैम्पेड प्रिवेंशन टूल शामिल है जो वैल्यू एक्सपायरी के दौरान सिस्टम को CPU स्पाइक्स से बचाता है। यह समवर्ती अनुरोधों के लिए लॉकिंग तंत्र और संभाव्य प्रारंभिक समाप्ति (probabilistic early expiration) के माध्यम से प्राप्त किया जाता है। यह लाइब्रेरी जटिल डेटा को स्टोर करने योग्य फॉर्मेट में अनुवाद करने के लिए वैकल्पिक एन्क्रिप्शन और कम्प्रेशन के साथ ऑब्जेक्ट सीरियलाइज़ेशन का समर्थन करती है। यह एक मल्टी-बैकएंड स्टोरेज एब्स्ट्रैक्शन लेयर प्रदान करती है, जो मेमोरी, फाइलसिस्टम और डिस्ट्रीब्यूटेड डेटाबेस में डेटा पर्सिस्टेंस को सक्षम बनाती है। अन्य क्षमताओं में कॉलबैक-आधारित कैश पुनर्प्राप्ति और डेटा पृथक्करण के लिए की-आधारित नेमस्पेसिंग शामिल है।
Prevents multiple processes from recomputing the same expired value by locking concurrent requests during the cache miss period.
ShedLock is a distributed lock manager designed to prevent scheduled tasks from running concurrently across multiple nodes in a distributed system. It acts as a task coordinator that ensures a single execution of timed jobs by managing lock lifespans and utilizing external lock providers. The system utilizes database-backed providers to store task execution states in external databases, synchronizing locks across active cluster nodes. It includes a clock-drift tolerant synchronizer that handles time discrepancies between distributed nodes through the use of shared timestamps and flexible lock
Automatically releases locks after a predefined maximum time to prevent permanent deadlocks during node crashes.
Orioledb PostgreSQL के लिए एक क्लाउड-नेटिव स्टोरेज इंजन है जिसे आधुनिक हार्डवेयर पर वर्टिकल स्केलेबिलिटी और प्रदर्शन में सुधार करने के लिए डिफ़ॉल्ट स्टोरेज लेयर को बदलने के लिए डिज़ाइन किया गया है। यह एक इंडेक्स-ऑर्गनाइज्ड टेबल स्टोर के रूप में कार्य करता है, जो डेटा रिट्रीवल को तेज करने के लिए टेबल पंक्तियों को सीधे प्राथमिक इंडेक्स के भीतर व्यवस्थित करता है। इंजन डेटा वर्शनिंग को प्रबंधित करने के लिए एक अनडू लॉग स्टोरेज सिस्टम का उपयोग करता है, जो मैन्युअल वैक्यूमिंग की आवश्यकता को समाप्त करता है और टेबल ब्लोट को रोकता है। यह ब्लॉक-लेवल और पेज-लेवल डेटा कम्प्रेशन के माध्यम से डिस्क फुटप्रिंट को और कम करता है। यह प्रोजेक्ट उन्नत इंडेक्स प्रबंधन और स्वचालित डेटाबेस रखरखाव के लिए क्षमताएं प्रदान करता है। इसमें रो-लेवल लॉगिंग के माध्यम से उच्च उपलब्धता रिकवरी के लिए सुविधाएं शामिल हैं, साथ ही स्थान उपयोग का विश्लेषण करने और टेबल अखंडता को सत्यापित करने के लिए उपकरण भी शामिल हैं।
Enables high-throughput concurrent reads by linking in-memory pages directly to storage to bypass buffer mapping.
Redsync is a distributed lock manager and Go Redis client extension designed to ensure exclusive access to shared resources. It implements mutual exclusion across multiple processes by using a Redis backend to coordinate synchronization and prevent race conditions in distributed environments. The library maintains lock validity through quorum-based consensus, requiring successful writes to a majority of independent Redis nodes. It utilizes Lua-scripted atomic operations for acquisition and release, while employing value-based ownership validation and time-to-live expiration to prevent deadloc
Prevents deadlocks by associating a time-to-live value with every lock to ensure automatic expiration if the owner fails.
BLEUnlock is a macOS automation tool and proximity-based system controller that monitors the range of trusted Bluetooth Low Energy devices to automate screen security and hardware-based unlocking. It functions as a background utility that identifies and filters nearby devices by their unique identifiers and signal strength to trigger system actions. The system automatically manages screen lock states, waking the display and unlocking the computer when a paired device enters a defined signal range, or locking the screen and starting the screensaver when the device moves out of range. Beyond s
Changes the system lock state automatically based on the presence of paired Bluetooth Low Energy devices.
HyperDbg is a hardware-assisted kernel-mode debugging platform that leverages virtualization to monitor and control system execution. By utilizing hypervisor-level primitives, it enables deep system analysis and instrumentation without relying on standard operating system debugging interfaces. The framework provides a comprehensive environment for inspecting both kernel and user-mode processes, allowing for granular control over execution flow and system state. The project distinguishes itself through a transparent debugging layer designed to remain invisible to the target environment. It emp
Releases held spinlocks to allow other processes or threads to access protected resources during debugging.
Whatsie is a web application desktop wrapper designed to turn web interfaces, specifically messaging services, into standalone desktop applications. It provides a dedicated window environment with a custom icon and system tray integration. The project includes security and privacy layers such as password-protected session locking with automatic timeouts and the ability to purge persistent application data and web caches. It also features native hardware permission management for controlling camera and microphone access. The application supports native system notifications, file download hand
Prevents multiple application copies using a lock file and inter-process communication.