Graphics processing units (GPUs) are becoming increasingly important in today’s platforms as their increased generality allows for them to be used as powerful co-processors. In previous work, we have found that GPUs may be integrated into real-time systems through the treatment of GPUs as shared resources, allocated to real-time tasks through mutual exclusion locking protocols. In this paper, we present an optimal k-exclusion locking protocol for globally-scheduled job-level static-priority (JLSP) systems. This protocol may be used to manage a pool of GPU resources in such systems.