IBM MTM 2019: Part Two – Challenge #02

Bonjour!

Today we’re keeping it classy, James. To the batcave! Not really, I’m already in my programmers’ cave. I should clean out the cobwebs for sure, anyway let’s get back to master the mainframe contest!

If you’re unfamiliar with the SDSF display, you can watch this video made by Mr. Paul Newton. You should, it’s a big help! It’s only 7 minutes short.

Learn a few System Display and Search Facility, SDSF, basics

IBM Master the Mainframe Part Two – Challenge #02

Enter sd as primary commannd from the ISPF menu to navigate to the SDSF menu.

From the SDSF Menu we enter the primary command prefix * ; owner z##### ; st. The semicolon in the command is used to stack commands, the machine will execute the commands in the order we send.

  • First it displays all jobnames using prefix *.
  • Then it limits the list to our user only using owner z#####.
  • Then it displays all statusses using st.

After the system presents us the list we need to enter tso submit ‘zos.public.jcl(pgm01a)’. We use ‘c’ as the jobname suffix/jobname character. When you see *** it means the system is waiting for you to press enter.

Now when viewing the list we know the following;

  • Any JobID beginning with TSU is a Time Sharing session, your TSO interactive session.
  • Any JobID beginning with JOB is a background JOB previously submitted.
  • Action characters can be entered in the NP column.
  • If several of the same jobnames exist then pick the one with the highest JobID number.

We enter a question mark ‘?’ next to our job entry to view its details. Mine was JOB08447.

The most important member of this ‘data set’ is SYSOUT. Navigate to it using tab and enter ‘s’ in the NP column to select it for viewing.

Now we can view the output.

Press F3 or enter end as primary command to return to the previous display. To continue we need to copy this output to our own output data set. This is done by using the xdc line command.

Next to SYSOUT we enter xdc in the NP column. The system will ask us where to copy the data to.

  • data set name: p2.output
  • Member  to use: #02
  • Disposition: SHR

If you see PRINT CLOSED 10 LINE in the upper right area of the display then that means the print action is complete.

Let’s go back to the JOBNAMEs list by pressing F3. Next to every JobID with PRINT as Queue status we enter p as line command. stands for purge.

Then press enter to delete the outputs.

Verify the completion of Part Two – Challenge #02

Again we use the same commands as we did to verify the completion of challenge #01 in part two.

  • dslist p2.output as primary command.
  • b line command next to Z#####.P2.OUTPUT
  • s line command next to #02

Now we should see the output we had before.

And I have! Although I’m not sure what the ‘1’ is doing there? There’s also some extra whitespace? How?

Whitespace

Do you have whitespace? Funny, it also means unused disk space. Tell me all about your disk space!

IBM MTM 2019: Part Two – Challenge #01

Hello hello hello!

Are you fresh and ready? Because I am! I’m keeping the introductions short for now, I don’t have much time on my hands and I’m anxious to get started on the mainframe 🙂

The Challenge

IBM Master the Mainframe Part Two – Challenge #01

In this challenge we will learn about z/OS TSO, Time Sharing Option. The purpose of this challenge is to learn basic navigation of z/OS TSO/ISPF.

Access TSO Ready prompt, then complete TSO tasks as instructed

Once we’re logged into the system we enter the primary command pfshow off. This will supress the function keys. We get the message that we can terminate the ISPF Primary Option Menu using x. Let’s do that. If the system asks you what to do with the Log Data Set, always enter ‘2’.

Actions to complete challenge #01

We need to enter a series of commands to complete this challenge. This one seems pretty much straight forward and detailed screenshots are available on the official master the mainframe website.

  1. Enter time to display time and date
  2. Enter netstat home to display system IP address
  3. Enter listc to display a current list of your personal data sets
  4. Enter submit ‘zos.public.jcl(part2)’ to process a background job allocating new personal data sets. If the system asks for a JOBNAME CHARACTER just enter ‘a’.
  5. Enter listc to display a current list of your personal data sets
  6. Enter submit ‘zos.public.jcl(tsojcl)’ to process a background job which executes the same commands
  7. Enter ispf to launch the full screen ISPF Primary Option Menu
  8. Enter pfshow on to display function keys at bottom of ISPF screen

The text in green are the issued commands. The text in red is the command result.

Verify the completion of Part Two – Challenge #01

Let’s enter the primary command dslist p2.output.

Then next to our Z#####.P2.OUTPUT we enter the line command ‘b’, b for BROWSE.

Then we navigate to ‘#01’ and enter the line command ‘s’ to select it.

If our member includes output from time, netstat home and listc then we have successfully completed challenge 1 of part 2.

It does! Perfect!

Don’t stop now!

Is this really the time to write a witty outtro and try to entertain my readers? I don’t know, I really don’t. Shouldn’t we try to finish part 2 as fast as possible to win a prize?

Well I can’t, but if you’re a student, YOU CAN!

Are you a student?

IBM MTM 2019: Part One – Challenge #01

Hello again! I’m back!

This time we’re taking on IBM’s Master the Mainframe 2019 challenge! Let’s start! First of all, I have followed the connection instructions closely, you can find them here.

This blog will not teach you everything about mainframes. I personally see this as my mainframe diary 🙂 But I try to make my diary as helpful as possible.

IBM Master the Mainframe Part One – Challenge #01

A video tutorial covering the first challenge can be found here:

Submit JCL to Allocate Part 1 Data Sets

Let’s start by allocating the data set for part one. This can be done by issuing the primary command tso submit ‘zos.public.jcl(part1)’.

When the system asks for a jobname character just enter ‘a’. When the MAXCC code is 0000 then it means the job has executed successfully.

In the primary command bar, where we just issued the tso submit command I enter =3.4 to navigate to the Data Set List Utility panel.

Verify successful allocation of Part 1 Data Sets

What IBM wants us to learn is the difference between unix files and data sets in the contest challenges.

First we need to navigate to our UNIX directory. We can do this by entering /z/z##### (substitute your IBM id) in the Dsname level input box.

Here we see our directory. We see the type of the file, what permissions our users have, etc. To learn more about the UNIX permissions system check out this documentation.

Now we can go back using F3 or by typing return in the primary command input panel.

Create and Copy Unix File to a Data Set

IBM now wants us to get to know the UNIX side of the mainframe. Instead of having a nice panel we’re going to navigate to a barebones commandline interface. We can do that by entering ‘u’ in the primary command input panel.

When we type in ‘date’, the system gives us the date. When we type in ‘date > p1’ (Here’s a list of some basic Linux commands you can take a look at) we redirect the output the system would give us to a file. The challenge here is to view the contents of the file. When we type in ‘ls -l’ we can see a list view of the contents of the current directory we are in. We see a file called p1. To see the contents of this file we enter cat p1′.  I have highlighted the commands on screen.

Now we see the date again. We need to copy that to our own system. We can do so by issuing the command cp p1 ‘//pds.data(p1)’. CP stands for copy. We tell the system to copy p1 to pds.data(p1). The slashes tell the system it we want it to copy to the ZOS side of the system.

To verify it has copied the contents of p1 to //pds.data(p1) we can issue the command cat ‘//pds.data(p1)’. If you see a date, then you’re good!

Now we exit the UNIX shell by issuing the ‘exit’ command.

Let’s make sure the P1 was copied to the partitioned data set.

We navigate to the DSLIST utility panel using =3.4. Then enter our IBM id, Z#####, in the Dsname level input.

Next to the /#####.PDS.DATA member we enter the line command ‘e’. Primary commands are entered in the most upper command input box, line commands are entered next to data sets.

Now we see the members of this data set. Find P1 and enter the line command ‘s’stands for select.

We are now in edit mode. You should see the date we have copied from UNIX to our ZOS data set.

Looks good! We can return using F3 or by entering return in the primary command bar.

Get credit for completing Part 1

A QUIZ? We need to successfully answer 11 questions about mainframes and they’re not something we could have learned from this part 1 challenge. The questions are more about IBM than the challenge itself. There are engineering questions.

I’m not sure if I’m allowed to give the answers to these questions. I’ll assume the same rules apply as last year, no answer for part three only. These are all multiple choice questions. If IBM wants me to remove these then please message me on Slack.

To start the quiz enter the primary command tso p1quiz.

  1. What size rack does the newest mainframe live in? 19-inch.
  2. What specialty engines will you find on a modern mainframe? IFL, ICF, zIIP.
  3. The mainframe is unique in that it has a large amount of ________ in one place. ALL.
  4. According to Esmeralda, why does the mainframe need another computer within its frame? To give enough buttons to control everything.
  5. In the “The IBM Big Green Server Consolidation” section of the linked Redbook, an effort to migrate 3900 servers onto 30 IBM Z mainframes. By using mainframes instead of servers, they were able to use ____ less energy. 80%.
  6. In the Virtualization video, the unused resources on servers is referred to as: White Space.
  7. In the Schneider Electric electrical calculation tool, start with 1000 servers and no mainframes, and observe the total IT Capacity Rating, keeping all other settings default. Now, replace 500 servers with one mainframe and observe the change. What happens to the total number of kW? To 330KW.
  8. What Operating System does not currently run on the mainframe? MacOS.
  9. z/VM doesn’t need to run on another Operating System to provide virtualization, so it can be referred to as a Type ___ Hypervisor. Type 1 bare metal hypervisor.
  10. Which of the following is not an example of Middleware? Linux Kernel.
  11. Which Transaction Manager did the 17 year-old van der Wal twins use to build their custom end-to-end solution? CICS.

You will know if you have everything correct when you see a Congratulations message.

On to part two!

This first part is very different than 2018’s first part. It’s somewhat harder because of all the video’s we need to watch.

In my opinion and with all respect, the video of Esmeralda is somewhat hard to understand and will be much harder to understand for students that aren’t that proficient in English. Let alone listening to spoken English in a loud environment.

What are your thoughts on this challenge?