  We design two Recoverable Mutual Exclusion (RME) locks for the system-wide
crash model. Our first algorithm requires only $O(1)$ space per process, and
achieves $O(1)$ worst-case RMR complexity in the CC model. Our second algorithm
enhances the first algorithm to achieve (the same) $O(1)$ space per process and
$O(1)$ worst-case RMR complexity in both the CC and DSM models. Furthermore,
both algorithms allow dynamically created threads of arbitrary names to join
the protocol and access the locks. To our knowledge, these are the only RME
locks to achieve worst-case $O(1)$ RMR complexity assuming nothing more than
standard hardware support. In light of Chan and Woelfel's $\Omega(\log n /
\log\log n)$ worst-case RMR lower bound for RME in the individual crash model,
our results show a separation between the system-wide crash and individual
crash models in worst-case RMR complexity in both the CC and DSM models.
