ENQ has performance implications

Em sáb., 7 de dez. de 2024, 19:58, João Reginato <jb.regin...@gmail.com>
escreveu:

> Ok I'll take a look on PLO. thanks
>
> Em sáb., 7 de dez. de 2024, 18:33, Binyamin Dissen <
> 00001773bcccb823-dmarc-requ...@listserv.uga.edu> escreveu:
>
>> The question is why you would want to use the CMS lock on modern hardware.
>>
>> If CS(G) in not adequate for you queue structure, you have PLO or the
>> various
>> transaction opcodes. I have used PLO to support a queue with multiple
>> feeders
>> and multiple eaters.
>>
>> On Sat, 7 Dec 2024 16:40:49 -0300 João Reginato <jb.regin...@gmail.com>
>> wrote:
>>
>> :>Thank you, Peter. I got it and I'm going to use CS instead.
>> :>But could you send me an example of how to get the CML/CMS locks?
>> :>The situation is many asids adding data in ecsa and one asid getting
>> this
>> :>data from there.
>> :>
>> :>TIA
>> :>João
>> :>
>> :>-----Mensagem original-----
>> :>De: IBM Mainframe Assembler List <ASSEMBLER-LIST@LISTSERV.UGA.EDU> Em
>> nome
>> :>de Peter Relson
>> :>Enviada em: sábado, 7 de dezembro de 2024 13:16
>> :>Para: ASSEMBLER-LIST@LISTSERV.UGA.EDU
>> :>Assunto: Re: SETLOCK OBTAIN CML/CMS
>> :>
>> :>Regarding CMS lock:
>> :>CMS is a global suspend lock, you do not need an address space bind to
>> :>obtain it, but if you are not careful you could adversely impact the
>> :>performance of the system (blocking the system's access to it while you
>> hold
>> :>it). There is rarely call for something outside z/OS itself to obtain
>> this
>> :>lock.
>> :>
>> :>Regarding CPU lock:
>> :>Remember that while holding the CPU lock all storage that you touch
>> :>(including the storage for your program) must be page-fixed or
>> :>disabled-reference.
>> :>And while holding the CPU lock (or while in any case of being disabled
>> for
>> :>external/IO interrupts) any suspend lock obtain (LOCAL, CML, CMS) can
>> only
>> :>be conditional. If the lock is not immediately available, you get
>> control
>> :>back with an appropriate return code.
>> :>
>> :>Regarding SSAR: If this is a reusable ASID, you would have to use SSAIR.
>> :>
>> :>Regarding CML: the specific requirement to avoid 073-x'10' upon SETLOCK
>> :>OBTAIN for a CML is to have either PASN or SASN match the ASID
>> associated
>> :>with the provided ASCB.
>> :>The normal way that that happens is via a space-switch PC (setting your
>> new
>> :>PASN) and then obtaining the CML of the now-current PASN address space.
>> :>It is not, in general, safe to SSAR (or SSAIR) to any ASN you might
>> have a
>> :>mind to want to access. In many cases, the target of cross-memory access
>> :>must be non-swappable.
>> :>
>> :>All of this leads to the thought that you might want to explain what
>> :>specifically you feel you are trying to accomplish that necessitates the
>> :>lock operations (and your questions) so that others can help to guide
>> you.
>> :>There is a very real possibility of harm if you get it wrong. Getting it
>> :>right is part of the responsibility that goes with running in supervisor
>> :>state (and in this case key 0).
>> :>
>> :>Peter Relson
>> :>z/OS Core Technology Design
>>
>> --
>> Binyamin Dissen <bdis...@dissensoftware.com>
>> http://www.dissensoftware.com
>>
>> Director, Dissen Software, Bar & Grill - Israel
>>
>

Reply via email to