Abstract
A simple code transformation is presented that reduces the space complexity of Yang and Anderson's local-spin mutual exclusion algorithm. In both the original and the transformed algorithm, only atomic read and write instructions are used; each process generates Θ(log N) remote memory references per lock request, where N is the number of processes. The transformed algorithm uses Θ( N) distinct variables, which is clearly optimal.
Highlights
ÖÓÐ Ò Ø× ÑÔÐ Ó ØÖ Ò× ÓÖÑ Ø ÓÒ × ÔÖ × ÒØ Ø Ø Ö Ù × Ø ×Ô ÓÑÔÐ Ü ØÝ ÓÒÒÒÖ×ÓÒ3× ÐÓ Ð1×Ô Ò ÑÙØÙ Ð Ü ÐÙ× ÓÒ Ð ÓÖ Ø Ño ÁÒ Ø × Ð ÓÖ Ø Ñ ÓÒÐÝ ØÓÑ Ö Ò ÛÖ Ø Ò×ØÖÙ Ø ÓÒ× Ö Ù× ÔÖÓ ×× Ò Ö Ø × ¢ ́ÐÓ Æμ Ö ÑÓØ Ñ ÑÓÖÝ Ö Ö Ò × Ô Ö ÐÓ Ö ÕÙ ×Ø Û Ö Æ × Ø ÒÙÑ Ö Ó ÔÖÓ ×× ×o Ì ×Ô ÓÑÔÐ Ü ØÝ Ó Ø ØÖ Ò× ÓÖÑ Ð ÓÖ Ø Ñ × ¢ ́Æμ Û × Ð ÖÐÝ ÓÔØ Ñ Ðo ÁØ× Ø Ñ ÓÑÔÐ Ü ØÝ × ¢ ́ÐÓ Æμ Ð Ø ÓÖ Ò Ðo à ÝÛÓÖ × ÅÙØÙ Ð Ü ÐÙ× ÓÒ ÐÓ Ð ×Ô ÒÒ Ò Ö »ÛÖ Ø ØÓÑ ØÝ × Ö 1Ñ ÑÓÖÝ ×Ý×Ø Ñ× ̧ ×Ô ÓÑ1 ÔÐ Ü ØÝ.
ÁÒ Ø × Ô Ô Ö Û ÔÖ × ÒØ × ÑÔÐ Ó ØÖ Ò× ÓÖÑ Ø ÓÒ Ø Ø Ö Ù × Ø ×Ô ÓÑÔÐ Ü ØÝ Ó Ð Ó1 Ö Ø Ñ ÖÓÑ ¢ ́Æ ÐÓ Æμ ØÓ ¢ ́Æμo ÁÒ ÓÙÖ Ò Û Ð ÓÖ Ø Ñ ÔÖÓ ×× Ù× × Ø × Ñ ×ÔÒÚÖÐ ÓÖ ÐÐ Ð Ú Ð× Ó Ø Ö ØÖ Ø ÓÒ ØÖ o Ä Ð ÓÖ Ø Ñ Ø Ø Ñ ÓÑÔÐ Ü ØÝ Ó ÓÙÖ Ò Û Ð ÓÖ Ø Ñ × ¢ ́ÐÓ Æμo ÁÒ Ö ÒØ Ô Ô Ö 3⁄4 ̧ Û ×Ø Ð × Ø Ñ 1 ÓÑÔÐ Ü ØÝ ÐÓÛ Ö ÓÙÒ Ó aÐÓ Æ ÐÓ ÐÓ Æμ Ö ÑÓØ Ñ ÑÓÖÝ.
Ð ÓÖ Ø Ñ ÄË ÓÖ Ð Ò Ö ×Ô μ Ò Ð ÓÖ Ø ÑØ ¬Ò Ð Ð ÓÖ Ø Ñμo Ì ¬Ö×Ø ØÛÓ Ð ÓÖ Ø Ñ× Ö × ÓÛÒ Ò o 3⁄4 ̧ Ò Ø × ÓÒ ØÛÓ Ò o ¿oÎÖÐÐÖØ ÓÒ× ÓÖ ÐÐ Ø Ð ÓÖ Ø Ñ× Ö Ú Ò Ò o 1⁄2o ÁÒ ×o 3⁄4 Ò ¿ ̧ Û Ú Ù× Û Ø Û Ö × ÓÓÐ Ò ÜÔÖ ×× ÓÒ × × ÓÖØ Ò ÓÖ Ø Ù×Ý1Û Ø Ò ÐÓÓÔ ÛÐoÓÓ
Summary
× ÑÔÐ Ó ØÖ Ò× ÓÖÑ Ø ÓÒ × ÔÖ × ÒØ Ø Ø Ö Ù × Ø ×Ô ÓÑÔÐ Ü ØÝ ÓÒÒÒÖ×ÓÒ3× ÐÓ Ð1×Ô Ò ÑÙØÙ Ð Ü ÐÙ× ÓÒ Ð ÓÖ Ø Ño ÁÒ Ø × Ð ÓÖ Ø Ñ ÓÒÐÝ ØÓÑ Ö Ò ÛÖ Ø Ò×ØÖÙ Ø ÓÒ× Ö Ù× ÔÖÓ ×× Ò Ö Ø × ¢ ́ÐÓ Æμ Ö ÑÓØ Ñ ÑÓÖÝ Ö Ö Ò × Ô Ö ÐÓ Ö ÕÙ ×Ø Û Ö Æ × Ø ÒÙÑ Ö Ó ÔÖÓ ×× ×o Ì ×Ô ÓÑÔÐ Ü ØÝ Ó Ø ØÖ Ò× ÓÖÑ Ð ÓÖ Ø Ñ × ¢ ́Æμ Û × Ð ÖÐÝ ÓÔØ Ñ Ðo ÁØ× Ø Ñ ÓÑÔÐ Ü ØÝ × ¢ ́ÐÓ Æμ Ð Ø ÓÖ Ò Ðo à ÝÛÓÖ × ÅÙØÙ Ð Ü ÐÙ× ÓÒ ÐÓ Ð ×Ô ÒÒ Ò Ö »ÛÖ Ø ØÓÑ ØÝ × Ö 1Ñ ÑÓÖÝ ×Ý×Ø Ñ× ̧ ×Ô ÓÑ1 ÔÐ Ü ØÝ. ÁÒ Ø × Ô Ô Ö Û ÔÖ × ÒØ × ÑÔÐ Ó ØÖ Ò× ÓÖÑ Ø ÓÒ Ø Ø Ö Ù × Ø ×Ô ÓÑÔÐ Ü ØÝ Ó Ð Ó1 Ö Ø Ñ ÖÓÑ ¢ ́Æ ÐÓ Æμ ØÓ ¢ ́Æμo ÁÒ ÓÙÖ Ò Û Ð ÓÖ Ø Ñ ÔÖÓ ×× Ù× × Ø × Ñ ×ÔÒÚÖÐ ÓÖ ÐÐ Ð Ú Ð× Ó Ø Ö ØÖ Ø ÓÒ ØÖ o Ä Ð ÓÖ Ø Ñ Ø Ø Ñ ÓÑÔÐ Ü ØÝ Ó ÓÙÖ Ò Û Ð ÓÖ Ø Ñ × ¢ ́ÐÓ Æμo ÁÒ Ö ÒØ Ô Ô Ö 3⁄4 ̧ Û ×Ø Ð × Ø Ñ 1 ÓÑÔÐ Ü ØÝ ÐÓÛ Ö ÓÙÒ Ó aÐÓ Æ ÐÓ ÐÓ Æμ Ö ÑÓØ Ñ ÑÓÖÝ. Ð ÓÖ Ø Ñ ÄË ÓÖ Ð Ò Ö ×Ô μ Ò Ð ÓÖ Ø ÑØ ¬Ò Ð Ð ÓÖ Ø Ñμo Ì ¬Ö×Ø ØÛÓ Ð ÓÖ Ø Ñ× Ö × ÓÛÒ Ò o 3⁄4 ̧ Ò Ø × ÓÒ ØÛÓ Ò o ¿oÎÖÐÐÖØ ÓÒ× ÓÖ ÐÐ Ø Ð ÓÖ Ø Ñ× Ö Ú Ò Ò o 1⁄2o ÁÒ ×o 3⁄4 Ò ¿ ̧ Û Ú Ù× Û Ø Û Ö × ÓÓÐ Ò ÜÔÖ ×× ÓÒ × × ÓÖØ Ò ÓÖ Ø Ù×Ý1Û Ø Ò ÐÓÓÔ ÛÐoÓÓ
Talk to us
Join us for a 30 min session where you can share your feedback and ask us any queries you have
Disclaimer: All third-party content on this website/platform is and will remain the property of their respective owners and is provided on "as is" basis without any warranties, express or implied. Use of third-party content does not indicate any affiliation, sponsorship with or endorsement by them. Any references to third-party content is to identify the corresponding services and shall be considered fair use under The CopyrightLaw.