IBM Mainframe Forum Index
 
Log In
 
IBM Mainframe Forum Index Mainframe: Search IBM Mainframe Forum: FAQ Register
 

How to find the version of Z/Os using TSO or ISPF


IBM Mainframe Forums -> TSO/ISPF
Post new topic   Reply to topic
View previous topic :: View next topic  
Author Message
sudhee_rb

New User


Joined: 29 Mar 2006
Posts: 34

PostPosted: Thu Sep 11, 2008 6:54 pm
Reply with quote

Can anybody provide TSO command to see the current version of Z/OS.

Sudheer
Back to top
View user's profile Send private message
Srihari Gonugunta

Active User


Joined: 14 Sep 2007
Posts: 295
Location: Singapore

PostPosted: Thu Sep 11, 2008 6:57 pm
Reply with quote

You can use SSCVAR.
If it doesn't work, use TASID.
Back to top
View user's profile Send private message
superk

Global Moderator


Joined: 26 Apr 2004
Posts: 4652
Location: Raleigh, NC, USA

PostPosted: Thu Sep 11, 2008 7:25 pm
Reply with quote

I usually look at the ISPF Variables (7.3) for the value of the variable ZOS390RL.
Back to top
View user's profile Send private message
superk

Global Moderator


Joined: 26 Apr 2004
Posts: 4652
Location: Raleigh, NC, USA

PostPosted: Thu Sep 11, 2008 7:28 pm
Reply with quote

Or, there's TSO ISPVCALL STATUS.
Back to top
View user's profile Send private message
Pedro

Global Moderator


Joined: 01 Sep 2006
Posts: 2546
Location: Silicon Valley

PostPosted: Thu Sep 11, 2008 10:03 pm
Reply with quote

Short version
Code:
/*rexx */
Say 'Operating system level:'  MVSVAR('SYSOPSYS') 


Long version
Code:

/*REXX****************************************************************/
/* EXEC to show system information                                   */
/*                                                                   */
/* 1) Operating System                                               */
/* 2) ISPF info                                                      */
/* 3) Product level                                                  */
/* 4) Product FMID                                                   */
/* 5) GRS (et al.) SYSNAME                                           */
/* 6) SMFID                                                          */
/* 7) CPU model                                                      */
/* 8) CPU serial number                                              */
/*                                                                   */
/*********************************************************************/
                                                                       
                                                                       
strlen=22                                                               
fill = copies('. ',11)                                                 
Say Left('SYSOPSYS 'fill,strlen) MVSVAR('SYSOPSYS')                     
If SysVar('SysISPF') = "ACTIVE"                                   
  Then                                                                 
    Do                                                                 
    Address ISPEXEC "VGET (ZOS390RL)"                                 
    Say Left("ISPF OS Rel"fill,strlen) ZOS390RL                       
    Address ISPEXEC "VGET (ZPDFREL)"                                   
    Say Left("PDF"fill,strlen) zpdfrel                                 
    Address ISPEXEC "VGET (ZENVIR)"                                   
    Say Left("ISPF "fill,strlen) zenvir                               
    Address ISPEXEC "VGET (ZISPFOS)"                                   
    Say Left("ISPFOS "fill,strlen) zispfos                             
    Address ISPEXEC "VGET (ZSYSID)"                                   
    Say Left("ISPF sysid "fill,strlen) zsysid                         
    Address ISPEXEC "VGET (ZSYSNODE)"                                 
    Say Left("ISPF sysnode "fill,strlen) zsysnode                     
    Address ISPEXEC "VGET (Zsysplex)"                                 
    Say Left("ISPF sysplex "fill,strlen) zsysplex                     
    End                                                               
Say Left("SYSENV "fill,strlen) SysVar('SysEnv')                       
Say Left("SYSLRACF "fill,strlen) SysVar('SysLRACF')                   
Say Left("SYSHSM "fill ,strlen) SysVar('SysHSM')                       
Say Left("SYSTSOE"fill ,strlen) SysVar('SysTSOE')                     
parse version rexxlvl                                                 
Say Left("REXX "fill ,strlen) rexxlvl                                 
                                                                       
/*********************************************************************/
/* Pick up CVT address                                               */
/*********************************************************************/
                                                                       
cvt=c2x(storage(10,4))                                                 
                                                                       
/*********************************************************************/
/* CVT - 40 contains the product name                                */
/* CVT - 32 contains the FMID                                        */
/*********************************************************************/
Say Left('cvt Product name 'fill,strlen) storage(d2x(x2d(cvt)-40),8)   
Say Left('cvt Product FMID 'fill,strlen) storage(d2x(x2d(cvt)-32),8)   
Say Left('cvt SYSNAME'fill,strlen) storage(d2x(x2d(cvt)+340),8)       
Say Left('MVSVAR SYSNAME 'fill,strlen) mvsvar('sysname')                     
/*********************************************************************/
/* CVTUINF may contain user-supplied identification data             */
/*********************************************************************/
                                                                       
cvtuinf=storage(d2x(x2d(cvt)-24),16)                                   
if cvtuinf <> '' then                                                   
  Say Left('cvt Installation data'fill,strlen) cvtuinf                 
                                                                       
/*********************************************************************/
/* Point to SMCA - System Management Control Area                    */
/* This contains the SMFID of the system                             */
/*********************************************************************/
                                                                       
smca=c2x(storage(d2x(x2d(cvt)+x2d(c4)),4))                             
smfid = Substr(storage(smca,20),17)                                     
Say Left('SMF id 'fill,strlen) smfid                                   
                                                                       
/*********************************************************************/
/* SMCA contains the IPL date (Julian) and time                      */
/*********************************************************************/
                                                                       
numeric digits 12                                                       
smcaitme=c2x(storage(d2x(x2d(smca)+336),4))  /* SMCA + 150x */         
smcaidte=c2x(storage(d2x(x2d(smca)+340),4))  /* SMCA + 154x */         
sdate=Substr(smcaidte,3,5)                                             
                                                                       
Say Left('IPL date 'fill,strlen) sdate                                 
hh = right(trunc(x2d(smcaitme) / 360000),2,'0')                         
mm = trunc(x2d(smcaitme) // 360000 / 6000)                             
Say Left('IPL time 'fill,strlen) hh':'mm                               
                                                                       
Say Left('SYSCPU 'fill,strlen) SYSVAR('SYSCPU')                         
Say Left('SYSNODE'fill,strlen) SYSVAR('SYSNODE')                       
Say Left('SYSMVS 'fill,strlen) MVSVAR('SYSMVS')                         
Say Left('SYSJES 'fill,strlen) SYSVAR('SYSJES')                         
Say Left('SYSDFP 'fill,strlen) MVSVAR('SYSDFP')                         
Say Left('SYSSMS 'fill,strlen) MVSVAR('SYSSMS')                         
Say Left('SYSPLEX'fill,strlen) MVSVAR('SYSPLEX')                       
Say Left('SYSSMFID 'fill,strlen) MVSVAR('SYSSMFID')                     
Say Left('SYSCLONE 'fill,strlen) MVSVAR('SYSCLONE')                     
                                                                       
/*********************************************************************/
/* PCCA contains the CPU model and serial number                     */
/*********************************************************************/
pcca=c2x(Storage(208,4))                                               
cpu=Storage(d2x(x2d(pcca)+4),12)                                       
Say Left('CPU model'fill,strlen) Substr(cpu,9)                         
Say Left('CPU serial 'fill,strlen) Substr(cpu,3,6)  /*chgs each time */
                                                                       
/*********************************************************************/
/* Show  number of CPUs and serial numbers                           */
/*********************************************************************/
X = SYSCPUS('CPUS.')                                                   
Say Left('Online CPUs'fill,strlen) CPUS.0                               
Do I = 1 To CPUS.0                                                     
   Say Left(' CPU '|| right(' 'I-1,2) || ' info 'fill,strlen) CPUS.I   
End                                                                     
exit 0                                                                 
                                                                       
Back to top
View user's profile Send private message
View previous topic :: :: View next topic  
Post new topic   Reply to topic View Bookmarks
All times are GMT + 6 Hours
Forum Index -> TSO/ISPF

 


Similar Topics
Topic Forum Replies
No new posts isfline didnt work in rexx at z/OS ve... CLIST & REXX 7
No new posts Looking for a little history of ISPF ... TSO/ISPF 5
No new posts To find whether record count are true... DFSORT/ICETOOL 6
No new posts Adding QMF and SPUFI to the ISPF menu DB2 20
No new posts Find the size of a PS file before rea... COBOL Programming 13
Search our Forums:

Back to Top