VMS/OpenVMS Lock Manager for x86 Intel Linux and Windows


VX/LCKMGR is an VMS / OpenVMS compatible Lock Manager for Linux and UINIX. VX/LCKMGR uses Sector7 high speed AST backplane. Locks are granted and tested identically to OpenVMS. SYS$ENQ(W), SYS$DEQ(W), SYS$GETLKI(). VX/LCKMGR was stress tested in a production environment at 80,000 lock conversions per second on an old (1997) quadcore Opteron Sever.

All openVMS Lock manager functions are fully supported except that VX/LCKMGR will only work in a single node environment.

The Following Resource Lock Modes Are Supported

  1. LCK$K_PRMODE - Protected Read (share lock) .
  2. LCK$K_PWMODE - Protected Write (update lock).
  3. LCK$K_CRMODE - Concurrent Read.
  4. LCK$K_CWMODE - Concurrent Write.
  5. LCK$K_EXMODE - Exclusive (exclusive lock).
  6. LCK$K_NLMODE - NULL (placeholder for lock conversions).

Vx/LCKMGR Supported $ENQ/$DEQ Codes

LCK$V_VALBLK    
LCK$V_CONVERT    
LCK$V_NOQUEUE    
LCK$V_SYNCSTS    
LCK$V_SYSTEM    
LCK$V_NOQUOTA    
LCK$V_CVTSYS    
LCK$V_RECOVER    
LCK$V_PROTECT    
LCK$V_NODLCKWT    
LCK$V_NODLCKBLK    
LCK$V_EXPEDITE    
LCK$V_QUECVT    
LCK$V_BYPASS    
LCK$V_NOIOLOCK8    
LCK$V_NOFORK    


Vx/LCKMGR Supported $GETLKI Codes

LKI$C_BR_LENGTH    
LKI$C_LENGTH    
LKI$_BLOCKEDBY    
LKI$_BLOCKEDBY_BR    
LKI$_BLOCKER_BR    
LKI$_BLOCKING    
LKI$_BLOCKING_BR    
LKI$_BRL    
LKI$_CSID    
LKI$_CVTCOUNT    
LKI$_GRANTCOUNT    
LKI$_LASTLKB    
LKI$_LASTRSB    
LKI$_LCKCOUNT    
LKI$_LCKREFCNT    
LKI$_LKID    
LKI$_LOCKID    
LKI$_LOCKS    

 

 

Vx/LCKMGR Valid $GETLKI Return Codes

SS$_NORMAL    
LKI$_BLOCKEDBY    
LKI$_BLOCKING    
LKI$_CSID    
LKI$_CVTCOUNT    
LKI$_GRANTCOUNT    
LKI$_LCKCOUNT    
LKI$_LCKREFCNT    
LKI$_LKID    
LKI$_LOCKID    
LKI$_LOCKS    
LKI$_MSTCSID    
LKI$_MSTLKID    
LKI$_NAMSPACE    
LKI$_PARENT    
LKI$_PID    
LKI$_REMLKID    
LKI$_RESNAM    
LKI$_RSBREFCNT    
LKI$_STATE    
LKI$_VALBLK    
LKI$_WAITCOUNT    

 

 

VX/LCKMGR Returned I/O Status Codes

LKI$C_CONVERT    
LKI$C_GRANTED    
LKI$C_WAITING    
LKI$C_RETRY    
LKI$C_SCSWAIT    
LKI$C_RSPNOTQED    
LKI$C_RSPQUEUED    
LKI$C_RSPGRANTD    
LKI$C_RSPDOLOCL    
LKI$C_RSPRESEND    
LKI$C_RSBTYPE    



VX/LCKMGR has the ability to log all lock requests and to also replay them for tuning and diagnostic purposes.

VX/LCKMGR also has a real time display of all lock requests.

In the image below, The Lock Manager log is being replayed so AST's are not issued.








Learn More