Session 2877 - What do MVS Programmers Need to Know About OS/390 Unix?

SHARE 90
February 22-27, 1998


Kershaw Mehta is another one of those really sharp IBM folks who help make the trip to SHARE worthwhile. He did quite a few sessions during the week having to do with OS/390 Unix Services, and is highly familiar with the product. I'm not sure what his real job is within IBM, but he is deeply involved in development.

This presentation started out on a really basic level. Kershaw talked in elementary terms about fundamental Unix concepts: shell, pipes, stdin/stdout/stderr, fork(), and so on. Nothing new here, and I close my eyes and yawn discreetly.

I open my eyes and find that Kershaw is moving ahead at full impulse. Now that he has done the introductory stuff, he is pushing ahead with an item by item review of arcane OS/390 services, and their correspondingly arcane Unix counterparts. The Brotherhood in the audience picks up its attention; now we're getting somewhere. I'm not sure why he gave us the introduction; people who needed it are surely going to be lost from here on out.

The Unix file system lives in a construct in MVS called an HFS, or "Hierarchical File System". HFS is allocated as a special case of MVS dataset, and is a file system inside a file system. Since much of the world operates in ASCII, and OS/390 operates in EBCDIC, you may well wonder which mode the HFS operates in. The answer is, well, whatever. HFS doesn't care what code is stored in it, and for MVS-based applications you'll probably use EBCDIC.

(I don't know what becomes of file names and directory contents. Have to check.)

"Open Edition MVS" is IBM's old name for what is now "OS/390 Unix Services". You will still see some references to OE from time to time, though IBM is busily trying to extinguish these from the documentation. OS/390 is a branded Unix, and it should not be possible for a Unix administrator to tell that this particular Unix is implemented under OS/390.

The Unix kernel is still named "OMVS" though, and it comes up at IPL time. You cannot bounce the kernel anymore; if you want to bring it up with different attributes, you are obligated to re-IPL OS/390. IBM is thinking about changing this again; they originally allowed you to bounce OMVS, but found out that no other Unix made any kind of provision for bouncing the kernel. What return codes do you give a Unix application when it calls the kernel and the kernel isn't there? In the interest of interoperability, IBM simply disallowed shutting down the kernel.

If the OMVS parameter member BPXPRMxx does not exist at IPL time, the kernel is still started with a bunch of hardcoded defaults.

In release 4 of the operating system, the Workload Manager (see sessions 2510 and 2518) knows about Unix processes. It can start additional address spaces to handle the workload, or stop them in quiet periods. Formerly Unix processes required APPC initiators, which are not exactly performance oriented, and which have some other baggage associated with them.

HSM now has the ability to quiesce an HFS for dump purposes. This is a good thing, and long overdue.


Back to session index
Back to index of SHARE meetings
Read the disclaimer