As one of the fairly new members into the mainframe family, I originally had some hiccups understanding the basics of mainframes. And by basics, I mean the absolute basics. I wish there was someone who could tell me a story of how it all happened from start to present in the mainframe world. A dear friend and a mainframe enthusiast suggested I read a book and the book clearly solved the purpose.Hence, here is a top ten list of the coolest z/OS facts.
1. z/OS is an awesome multitasker
Back in the days, when z/OS was developed, computers were extremely expensive. Hence the developers built z/OS in such a way that different people could use z/OS to run multiple tasks at the same time. Every task that runs on z/OS runs in an address space and each task thinks that it’s the only one running. However, behind the screen, z/OS shares resources like memory and CPU across all tasks and there could be numerous tasks running at the same time sharing these resources.
2. z/OS handles large workloads
It sounds quite obvious that z/OS can handle large workloads. But there must be a way to decide what tasks to run first and what can wait. In other words, how do we prioritize? z/OS uses a feature called WorkLoad Manager which helps in prioritizing system, production and non-production tasks. This helps z/OS in handling large workloads making 100% use of the CPU.
3. It’s unbelievably hard to crash z/OS
Everyone expects z/OS to keep running and running and running. So anytime when a task crashes, we can not let that crash any other part of the system. Now remember we mentioned that every task runs in its own address space. So IBM has invested a lot of time and money in making sure that when a task crashes in one address space, it does not interfere with the normal functionality of the entire system, in other words making it robust and also clean up completely where the crash occurred so we can be up and running like new. But z/OS records any crash that occurs due to a hardware or software failure, so we can get into investigation later.
4. z/OS has the best recording
z/OS comes with its own inbuilt scribe and we call it the System Management Facility(SMF). SMF records quite a lot of information like when was the system started, what task is currently running, when was a file created, when was it last edited, who deleted it, etc,. Security audits, capacity planning and performance monitoring are some of the uses of all this information that is recorded using SMF. IBM can proudly claim that z/OS has the most extensive recording of any operating systems.
5. You need a job entry subsystem for z/OS
z/OS can run a series of jobs at the same time without any human intervention and they are called batch jobs. Users use a language called Job Control Language (JCL) to specify instructions for a specific job or a batch job to run. Once z/OS receives instructions from a user in the form of JCL, the role of a Job Entry Subsystem (JES) is to convert the JCL instructions into machine readable form and then queues them for processing, create address spaces, make sure all the input files for the job are ready, specify where the output has to be written and any other information required to run that job. Overall, JES acts like a manager, making sure, everyone has their resources to do their job and everyone does their job diligently.
6. How different are z/OS files?
We all know about files on windows. They store our data and we can access our files through an application like notepad. In z/OS, the concept of files is quite different. In the first place, they are not even called files. They are called Datasets. Each dataset is made up of records. When you create a new dataset, you need to specify the length of each record. Some other basic information that you need to specify are where the dataset should be stored and how big of a dataset it is. We will discuss about creating datasets and all the information you need to know to create a dataset in a later post. Hang in there!
7. How do you talk to the Mainframes?
How do we interact with such humongous mainframe computers and z/OS? We have to use an application called TSO/E( Time Sharing Option Extended) to talk to the z Systems. TSO/E is very hard to use. So z/OS comes with ISPF (Interactive System Productivity Facility). ISPF gives an interactive and easier way to communicate by providing lot of inbuilt functionalities
8. You get UNIX with z/OS
When we say, you get UNIX with z/OS, that’s really an eye wash. What you really get is a POSIX compliant UNIX Shell called UNIX Systems services (USS). Posix compliant means that we meet all requirements to call it UNIX, but it’s actually not UNIX.
9. z/OS has a console
In your mainframe server room, you will have operators who would monitor your system on a regular basis to make sure if the system is running without any interruptions. The way they do it is, by monitoring the console with the system news feed to see what is going on in the system, if there are any alert messages or if there is any problem that they need to be aware of. The main z/OS console is directly plugged into the mainframe, so that even if there are network issues, the console will continue to work.
10. z/OS isn’t enough
Once we successfully setup z/OS, we now have a basic operating system. But the real functionality of a mainframe is not exhibited unless we equip our system with applications that run on z/OS for security management, performance, database management, printing, etc,. Apart from IBM, there are also other vendors in the market who sell applications that run on z/OS to make it more efficient.
If you need more of this, I suggest reading What On Earth is a Mainframe?
The book is a very easy read with topics ranging from fundamentals of mainframe hardware to application development on z/OS.