Information ™ Technology What is this zPDT ? Company (and how does it fit in?)

points that will be significant later. about the same time as the P/390 was being introduced, but it did review Emulation in some forms has been not become a really viable product — .M. Hammock around for a long time: you could until the late 1990s. For a while IBM emulate an IBM 1401 on an IBM S/360 seemed to embrace FLEX-ES and model 30 and you could emulate an both companies entered into a useful, he latest entrant into IBM 7010 on an IBM S/360 model but somewhat unsteady, partnership Tthe IBM® mainframe 50. But most people today assume including IBM promoting the use of “emulation” to mean the use of a FLEX-ES for use by ISVs (Independent compatible world is really relatively small, inexpensive com- Software Vendors) developing soft- anything but “open”, but puter (such as an Intel®-based PC) ware for the System z environment. followers of the mainframe to provide many of the features and functions of a much more expensive About the same time as FLEX-ES was world, open or not, should “mainframe” computer. IBM tried to making an impact on the commercial be interested. Although do this a couple of times in the 1980s, world with IBM’s blessings, Roger ® with the PC/370 and AT/370 products Bowler and Jay Maynard introduced IBM’s “System z Personal that implemented an actual hardware the Hercules mainframe Development Tool” (zPDT) instruction processor in a PC and package as a completely open and is the newest package to AT-based box. The first really success- “free” (open source QPL license) solu- ful attempt to do this was probably tion that could run on both Windows enter the world of “soft- the IBM P/390 system, introduced in and host systems. Although ware-based systems” (as 1994 using a hardware-based proces- IBM would not license its software IBM puts it) or emulation sor in a PC Server chassis. Although to run on a Hercules system, there the processor was hardware-based, was significant evidence that many (as most others refer to all of the I/O and communications people were doing so anyway. (Yes, it), it actually has a long functions were emulated through there are many more details, but that history in this field. OS/2 software using the PC devices. is close enough for our purposes.) The next big step was to go fully Then, in the mid 2000s, Platform A (very) little history software-based, with no hardware Solutions Inc. appeared with their Let’s take a quick look at the history instruction processor. The first system product which they insisted was not of these “software-based” (or emula- to successfully do this was FLEX-ES an “emulator” because it ran on the tion) systems. Although most readers (originally Open/370) produced by bare metal (an Intel Itanium proces- already have a good understanding, Fundamental Software of Fremont, sor). The rest, as they say, is history. it will be useful to make a couple of California. FLEX-ES actually started IBM then felt the need to crack down

Information Technology Company What is this zPDT? Review page 2 of 8 on emulation-based systems and developers in 2007 but finally decided “token”. This token has been assigned essentially put Fundamental Software it was not quite “ready for prime time” a machine type of 1090 and is gener- (FLEX-ES) out of business by refusing and kept it limited to internal use for ally referred to as a z1090. Licenses to license some critical patents and the next several years. In October are loaded or enabled on the token refusing to license IBM software 2009 it was officially made available and are good for one year and must to run on FLEX-ES, and bought PSI to ISVs who are members of IBM’s then be renewed. Licenses are avail- to close off that threat. (UMX was PartnerWorld for Developers program. able for 1, 2, or 3 enabled/emulated another player in the emulation world There have been many improvements, processors and these are known as but never seemed to have a large both functional and performance the 1090 model type. Machine type impact, so we’ll leave them out of this.) related, in zPDT over the past three 1090-L01 enables one processor on Apparently IBM believes that Hercu- years so it is now a very capable a Linux base while a 1090-L03 would les is used mainly by hobbyists and system with very good performance enable three processors. Each z1090 others that do not present a significant and it continues to be enhanced and has a unique serial number and the threat as IBM has never taken any improved via periodic new releases. System z software running on a zPDT publicly acknowledged action against system will report that it is running on the Hercules developers or users. zPDT, in keeping with recent IBM Sys- a 1090 with the assigned serial number. tem z processors, only supports the 64- Where the zPDT came from bit mode of operation. 31-bit systems The zPDT and z1090 are distributed in With that as a background, where need not apply. For developers working a rather unusual manner; you cannot did zPDT come from and how does it only with the latest versions of z/OS, z/ purchase them from IBM. ISVs who fit into the mix? Interestingly enough, VM, etc., this is no problem, but some are approved for zPDT use have two zPDT is actually a descendent of developers like to keep old operating ways to acquire a zPDT-based system. the first of the successful emulation systems around for supporting their systems, the P/390. To a very large customers still on such older releases. 1. They can purchase a complete, degree, zPDT appears to be a version configured, and customized system of P/390 that uses a software-based Getting access to zPDT on either an IBM System x or Lenovo instruction processor rather than Access to zPDT is very limited, with ThinkPad base from hardware. The command names only approved ISVs given the chance and many features have the same to use it. Software develop- names as P/390 equivalents, even ers who down to calling the definition of the are producing emulated system a “dev-map”. There products that have obviously been a lot of new they will sell to features and capabilities added and run in the System the system has been ported to Linux. z environment (Another IBM Internal-Only version can apply for runs on AIX on System P hardware.) membership in PartnerWorld for Information Technology Company Developers and then to purchase the (ITC) LLC (www.p390.com). These zPDT was apparently a back room hardware key to use zPDT. Eligibility systems will be built on IBM rec- project for several years before it for use of zPDT is essentially the same ommended hardware/software started seeing the light of day in 2006 as for the PWD models of the FLEX-ES platforms and will generally have when the author first got experience systems that were sold for that support contracts included to with it. At that time it was a very func- purpose. provide first and second level tional system, although still inferior in zPDT support to the customer. many respects to FLEX-ES. IBM came The zPDT system is protected by a close to releasing it for use by ISV USB hardware key IBM refers to as a

Information Technology Company What is this zPDT? Review page 3 of 8

2. They can purchase only the z1090 token and license (again from ITC) Simple zPDT Profile for a z/VM system then build and configure their own [system] system. Although seemingly cheaper memory 6144m than purchasing a complete, ready 3270port 3270 to run system, the catch here is that processors 3 there is no traditional IBM support for zPDT. If something does not [manager] work as expected, or the customer name aws3274 0002 is not sure how to set up a good device 0200 3279 3274 configuration, there is no one to call. device 0201 3279 3274 There is a Yahoo User Group that device 0202 3279 3274 cms device 0203 3279 3274 cms is monitored by an IBM person that device 0204 3270 3274 users can post to for assistance. [manager] There is also a series of three IBM name awsckd 0001 Redbooks: SG24-7721, SG24-7722 device 0120 3390 3990 /zdisk/540res.ckd and SG24-7723 that provide very device 0121 3390 3990 /zdisk/540w01.ckd good information for developers device 0122 3390 3990 /zdisk/540w02.ckd trying to understand and use zPDT. device 0123 3390 3990 /zdisk/540spl.ckd IBM publishes what hardware device 0124 3390 3990 /zdisk/540pag.ckd and software platforms they have device 0125 3390 3990 /zdisk/prodpk.ckd tested and recommend, but there is no restriction on what -based [manager] hardware or Linux software de- name awsosa 0009 --path=f0 --pathtype=OSD velopers can attempt to use. device 500 osa osa --unitadd=0 device 501 osa osa --unitadd=1 System z Software for zPDT device 502 osa osa --unitadd=2 The only IBM system z software [manager] currently authorized to be used on name awsosa 0019 --path=A0 the zPDT systems are those obtained --pathtype=OSD --tunnel_intf=y through the IBM ADCD (Application --tunnel_ip=10.1.9.1 --tunnel_mask=255.0.0.0 Development Controlled Delivery) device 504 osa osa --unitadd=0 process. Developers must sign ap- device 505 osa osa --unitadd=1 propriate license agreements and device 506 osa osa --unitadd=2 are then provided copies of a z/OS development system (on DVDs) or [manager] allowed to download z/VM from an name awsosa 0029 --path=f1 --pathtype=OSD IBM provided site. There is currently device 508 osa osa --unitadd=0 no provision for licensing other IBM device 509 osa osa --unitadd=1 software products for the z1090 device 50a osa osa --unitadd=2 machine type. Other software vendors will undoubtedly develop their own [manager] guidelines and procedures for licens- name awstape 004 ing their software on a 1090. Linux for device 590 3490 3490 device 591 3490 3490 System z can of course be run on the

Information Technology Company What is this zPDT? Review page 4 of 8 zPDT, either “natively” or as a guest of we will note shortly. Device managers and starts one instance with three z/VM, with no licensing restrictions. are provided for tapes (AWSTAPE for defined processors, no additional emulated tape on disk or AWSSCSI for instances can be started. Disk devices The current zPDT system is directed SCSI attached squarely at the small ISV, many of tapes), AWSOSA whom previously used FLEX-ES- for LAN con- based systems. Since all FLEX-ES nectivity (either QDIO or LCS mode), AWS3174 zPDT provides a real- for 3270 console istic emulation of an support, and several others. LPAR within a System The device z processor complex. configuration is defined in a “profile” licenses have now expired, most or “Device of these developers have acquired map” that also accounts on IBM’s Dallas-based includes system systems. Many of them did their final information such as the memory can be shared, although it is through testing and verification on the IBM size and number of processors. a somewhat awkward mechanism. system but quietly did most of the real development work on Hercules- Since zPDT runs on a 64-bit Linux The enabled processors can be based systems in their offices. base, very large System z memory defined as either normal (CP), IFL, configurations are possible and some zIIP or zAAP processors. A processor The zPDT systems give these develop- systems have exceeded 40GB. The defined as an IFL, for example, can ers the opportunity to re-combine their hosting hardware and Linux system only be used to run Linux or z/VM to development work on a single, locally- must have sufficient real memory to host Linux. Unlike on standard System controlled, reasonably-priced system. contain the defined zPDT images. z systems (z9, z10, etc.) there are no The hosting Linux system should not cost or performance advantages to Technical view of zPDT be allowed to swap so the defined defining specialty processors, but it We cannot, of course, provide a deep System z instances should total may be very convenient for develop- technical view of zPDT in a brief at least 1 – 2 GB less than the real ers to test their products ability to article such as this, but we will discuss memory size of the hosting system. exploit the specialty processors. some of the more interesting features, first from an “externals” viewpoint, zPDT really provides a realistic emula- Because of the limitations in sharing then delving briefly a little deeper. tion of an LPAR within a System z processors, many developers are As mentioned previously, the zPDT processor complex. This is compared choosing to use z/VM to facilitate can be thought of as a P/390-based to FLEX-ES which presents more better resource sharing among system running on top of Linux with a of a full processor complex view, multiple guests rather than defin- software-based instruction processor. complete with “LPAR-like” instances. ing multiple zPDT instances as they It uses “Device Managers” to talk Although multiple zPDT instances can might have done with FLEX-ES. to various I/O devices, such as the be run, they each have to run under AWSCKD manager for CKD disk devic- a different userid (UID) and proces- zPDT has implemented several inter- es. The AWSCKD format is the same as sors cannot be shared across these esting features, one example of which that used by P/390s with one exception instances. If a user has a 1090-L03 is “disk versioning”. An AWSCKD disk

Information Technology Company What is this zPDT? Review page 5 of 8 can be defined to support versioning process somewhat). This interpreter affected by changing Linux distribu- and some point in time a command plus JIT compiler is what FLEX-ES tions. We’ll give a slight advantage is issued to “checkpoint” that disk used to achieve its high performance. zPDT and Hercules for this category. volume. From that time on any changes FLEX-ES also cached the compiled to the disk volume are saved in a sepa- sections of code for later reuse. I have Ease of Use: rate area. At a later time another com- not been able to verify that zPDT does There are many facets to “ease of mand can cause the changes to either this caching also, but I suspect so. use” and the three systems exhibit be backed out or made permanent. different characteristics. If someone This is another potentially very useful How does it compare? was given copies of the three systems tool for the development environment. So how does the zPDT compare to and their documentation and told to The use of disk versioning will break other systems that developers have install and make them work I believe compatibility with P/390 AWSCKD files. used in the past? Will former FLEX-ES they would get zPDT operational No external channels (parallel, users feel at home? Will Hercules first. FLEX-ES has the steepest initial ESCON, FICON) are supported by users doing development work (yes, learning curve while both zPDT and zPDT on Linux, so no channel at- we know you are out there) have a Hercules are initially simpler. zPDT is tached devices can be connected steep learning curve? What are the simpler than Hercules because it has and used by these systems. differences and advantages of zPDT? fewer options to choose from and ba- sic networking is simpler to implement. Any details of the internal struc- ture of zPDT are very sketchy and As the system configuration are obtained chiefly by reading gets more complex, with more “between the lines” in various networking, multiple instances, and shared DASD and other zPDT has the devices, the picture changes a bit. FLEX-ES does a much overall advantage better job of simulating an LPAR environment and this makes a in ease-of-use multiple instance configuration easier to implement and operate manuals and presentations. Early, than either zPDT or Hercules. I IBM Internal Use Only versions give zPDT the overall advantage of zPDT used an “interpretive in ease of use while FLEX-ES only” mode of execution. This comes in a close second is how Hercules works today, because of the relative ease examining each System z instruction, Host Platforms: of implementing more complex multi- determining what it is supposed to do, All three systems (zPDT, FLEX-ES, and instance configurations. Hercules and then executing the equivalent x86 Hercules) will run on a Linux-based suffers some because the documen- instruction(s). More recent versions system. Hercules will also run in a tation is not as complete or clear, of zPDT have added a “Just-In-Time” Windows environment. (I consider especially when compared to zPDT. (JIT) compiled mode to this. Some this a disadvantage but will be kind algorithm determines whether a and ignore this option.) Both zPDT Flexibility section of code should be interpreted and Hercules seem to be less sensi- Ease of use frequently comes at the or whether it would be better to invest tive to the specific Linux distribution expense of flexibility and we see that some more initial cycles to compile used than FLEX-ES appears to be. I in play here. Both FLEX-ES and Hercu- the System z instructions into equiva- believe this is because FLEX-ES has les offer more options for things like lent x86 instructions (to simplify the more low-level code that is likely to be architectural mode (S/370, ESA, 64-bit,

Information Technology Company What is this zPDT? Review page 6 of 8 etc.) and other processor options. of Fiber/FICON channels negates issue while it is a major concern for FLEX-ES also offers very powerful the channel capability somewhat. others. Hercules has had years of use configuration options, like multiple However, zPDT offers more of the and is unlikely to have many “bugs” instances (very similar to LPARS), current System z functions, such as remaining, but there is no way to verify shared DASD and other devices, providing full QDIO capabilities. Net- or guarantee this. (IBM is unlikely to network access to remote devices and work adapters emulate OSA Express allow Hercules developers access to possibly most important, true channel and can be configured accordingly. the architectural tests any time soon.) attach capability with parallel and For example, with z/VM we can make ESCON channel hardware. The ability full use of a Vswitch interconnecting Performance to share processors across multiple multiple guests and then connecting Performance is not just pure CPU instances also provides significant to the outside network via OSA/QDIO speed in MIPS, but also I/O perfor- added flexibility for FLEX-ES. Hercules emulation on the network adapter. mance, and general efficiency. For also has device sharing capabili- example I believe that zPDT is now ties, although not quite as clean and Overall I believe FLEX-ES is more slightly faster than the most current flexible as FLEX-ES, it also allows complete for users who need to run FLEX-ES (I say that “I believe” because remote (network) access to physically older operating systems while zPDT I have not been able to completely remote devices. Here I think FLEX-ES may be better for those running benchmark the most current FLEX-ES comes out on top, with Hercules Version 8 system). Running in 64-bit close behind in the middle and zPDT mode on 64-bit hardware, zPDT can trailing. We should keep in mind, get a few (perhaps 5%) more MIPS out of a given processor or core. However, FLEX-ES does I/O much zPDT offers more more efficiently. Heavy I/O work- of the current loads can easily consume 50% of a processor on zPDT while FLEX-ES System z functions rarely uses more than 5 - 10% of a processor for I/O. I also believe however, this is probably exactly that FLEX-ES’s disk caching is more what IBM intended. IBM only wants effective and controllable than developers using the more cur- zPDT’s or Hercules’ use of the Linux rent System z operating systems. current level operating systems. filesystem caching. Both FLEX-ES One important aspect that I’ll put and zPDT will provide about 30 - 50% Completeness under “completeness” is how well better performance than Hercules. In terms of a complete implementa- the emulator actually adheres So the advantage goes to zPDT for tion of the System z (or System/390) to the defined architecture. pure CPU performance or to FLEX-ES environment, each system has some for better I/O performance/efficiency. advantages. Both Hercules and Both FLEX-ES and zPDT have been Either FLEX-ES or zPDT, running on FLEX-ES offer more architectural subjected to IBM’s architectural a contemporary Quad-core proces- modes than zPDT. FLEX-ES offers conformance tests; the same tests to sor, can achieve significantly more a much more complete simulation which standard System z hardware than 100 MIPS per core, or as much of the LPAR environment, including is subjected. This goes a long ways 300 – 350 MIPS for a three processor- processors shared across multiple toward assuring developers that their enabled configuration. (Note: cer- instances. The availability of parallel system behaves just as a real System tainly not all quad-core processors and ESCON channels also makes z would behave when running their will achieve or exceed 100 MIPS for a more complete implementa- software in a customer’s shop. For per core, but some definitely will.) tion for FLEX-ES, although the lack some developers this may not be an

Information Technology Company What is this zPDT? Review page 7 of 8

Overall There are two issues which do 2. Assuming that Hercules users will As you might have guessed by now, discourage the use of Hercules abide by IBM’s licensing restrictions, there is no clear overall “winner.” Both for development of zLinux ap- there is one major disadvantage of FLEX-ES and zPDT excel in some areas plications or to actually run zLinux using Hercules for zLinux develop- and not in others. In most categories applications on Hercules. ment: the lack of z/VM. Most zLinux Hercules comes in last, but if we users and developers utilize z/ 1. It seldom makes sense to run include a category of cost or code VM to host multiple (many) zLinux applications in “production” mode availability, it would certainly come in guests to take better advantage with zLinux under an emulator such first there. Unfortunately, we no longer of the System z hardware. Again, as Hercules. Why run zLinux within have a choice of using FLEX-ES, so the this is a licensing issue, not a an emulator and suffer the neces- logical choice, for those who have the technical one, but it is an issue. sary performance/capacity impact, choice, and the dollars, will be zPDT. rather than just running it on a “first Where does zPDT go from here? level” Linux running on the base A note about Linux on System z The obvious question is whether IBM hardware? For most applications, Most of the discussions above, will allow zPDT to be used in additional zLinux offers few advantages over especially the comparison of zPDT environments, besides the pure ISV an Intel-based Linux. Most zLinux with FLEX-ES and Hercules have software development world. The users run it on System z because of really been about running the IBM environment or use that immediately the flexibility and reliability of the un- System z operating systems (z/OS, z/ comes to mind is the commercial, derlying hardware. If the underlying VM, and z/VSE) on these machines. end-user world but that is a huge hardware is still an Intel PC, nothing In this discussion, Hercules is obvi- leap for IBM at this point. There are has been gained by going to zLinux. ously handicapped by the inability to also some shortcomings in zPDT for license these operating systems use in the commercial on Hercules, no matter what small System z environ- the relative performance, ease ment. Let’s first look of use or functionality. When at some other pos- the discussion turns to Linux on sibilities that might be System z (which we will now just considered reasonable call zLinux) the tables turn some- “baby steps” then what. Since zLinux can be run on look at what would any platform, including Hercules, should be done to make the very low cost and good avail- zPDT more suitable ability of Hercules offers a more for commercial use.

One non-development Where does use for zPDT might be zPDT go “packaged” solutions, especially ones that from here? would be distributed at multiple sites. Almost 20 significant advantage. Hercules years ago a major insur- offers almost as good a zLinux ance company installed platform as zPDT; the perfor- thousands of small, mance is not quite as good, modified IBM 9370 but it may be “good enough.” systems (running VSE) in local offices. zPDT sys-

Information Technology Company What is this zPDT? Review page 8 of 8

tems could be packaged and distrib- If IBM was to make the huge leap running ESA mode systems because uted in a like manner, putting a z/OS (or and consider selling zPDT for use in they stayed on them too long and have z/VM, or z/VSE or zLinux) under a desk traditional commercial environments, effectively gotten trapped there. IBM in thousands of branch offices of some what would need to be done to make it would need to offer some encourage- company. The local people would not more attractive? Probably the biggest ment, technical or financial, to help even realize (or care) that they were factor is some form of traditional these old/small customers move up running z/OS on an emulation-based “channels” or at least support access to current software on a zPDT. system. Another possibility would be to equivalent devices. Well-supported for mobile systems; z/OS-based (or tapes are still important, although Sixteen years after IBM announced z/VM, etc…) systems running on a actual ESCON or FICON channels are the original P390 products some cus- hardened laptop that could go “on the not required, some form of reasonably- tomers are still using them in everyday road” or into potentially dangerous priced and supported (by zPDT and business. Although the P390 family environments. The primary advantage the operating systems) is necessary. has been somewhat of a headache for of both the above scenarios is that This could be as simple as supporting IBM (mainly because of the software a standard IBM System z mainframe SAS connected LTO tapes. “Channels” licensing it introduced) it has really would not normally be considered, so themselves are not nearly as important turned out to be a successful and long- there is no chance of the zPDT system as they used to be, but supported ac- lived product. It will be very interesting impacting traditional mainframe sales. cess to equivalent devices is impor- to see if the P390’s apparent offspring, This is a very important consideration tant. Another factor is support and use the zPDT, sees similar success. for IBM mainframe planners. of back-level operating systems. Many small mainframe customers are still

C. Michael Hammock is a Research and Development Manager at ITC and heads the ITC uPDT division, harnessing the IBM zPDT technology to provide a total solution application development tool for System z users. Mr. Hammock has been the industry Turn your resource regarding the IBM entry legacy ™ level mainframes such as the P/390, into a legend. the Integrated Server, the Multiprise 7389 Lee Highway Suite 210 3000, the FLEX-ES Systems, and Falls Church VA 22042 the z9 and z10 processors. He is a 800-994-9441 Fax 703-237-0223 frequent speaker at technical confer- www.p390.com ences such as SHARE, WAVV, and the IBM Technical Conferences. © 2011 Information Technology Company, LLC

uPDT and System uPDT are registered trademarks of Information Technology, LLC. IBM, z/OS, MVS, OS/390, zEnterprise, z/VM, z/VSE RACF, VTAM, CICS, DB2, System z, zPDT, and Lenovo are trademarks of International Business Machines Corporation, registered in many jurisdictions worldwide. z/OS V1R12.0 MVS Authorized Assembler Services Guide (SA2207608-15) © Copyright IBM Corporation 1988, 2010. ACF2 and Top Secret are registered trademarks of CA, Inc. in the U.S. and other countries. Linux is a registered trademark of Linus Torvalds in the U.S. and other countries. Intel is a registered trademark of Intel Corporation in the U.S. and other countries. Red Hat is a registered trademark of Red Hat, Inc. openSUSE is a trademark of Novell, Inc. Other company, product and service names by be trademarks or service marks of others.

Information Technology Company