A few weeks ago, in the wake of the announcement of the user-priced System i5 515 and 525 servers, Jim Herring, director of System i product management and business operations, and Ian Jarman, product manager of the System i product line, held a chat with the iSociety community, which is dominated by developers. And one of the questions they had is if IBM would consider creating a single-user developer workstation out of the i5 515. I think I have a better idea.

When I covered that chat for this newsletter two weeks ago, I riffed a little bit on the idea, and I came up with a kludgey way to create a unified Windows-i5/OS platform that would work as a development environment for programmers who are used to Windows-based workstations but who need OS/400 and i5/OS developer tools, such as IBM's WebSphere Development Studio. I said after my initial response to the desire by programmers to have a cheap developer workstation that I would noodle the issue some more, and I have.

First, to review. The kludge option: Take IBM's IntelliStation Power 285 workstation, which uses a Power processor and therefore can support i5/OS, rip out the 2D or 3D graphics card, and pop in an X64 co-processor plugged into a PCI slot so it can run Windows. (I reminded everyone that Sun Microsystems used to sell a similar card, called the SunPCi III co-processor, which sported an Athlon XP 1600+ processor, 1 GB of memory, an AGP 8X graphics card that plugged into a 64-bit PCI slot.) This hybrid workstation would support WDSc development tools on the co-processor and link directly back to the i5 developer brain through the PCI bus or through an external Ethernet link, much as the Integrated xSeries Server does on the AS/400, iSeries, and i5 servers. But, when it was all glued together, I figured that such a machine might still end up costing $8,000 or more, which is what an entry i5 515 costs, and even though that kludge box would do the job of two machines instead of just one, that is still too expensive.

There is, of course, the idea of converting a Microsoft Xbox 360 or Sony PlayStation 3 into an i5 workstation. The "Xenon" PowerPC variant that IBM designed for Microsoft almost certainly does not have the PowerPC AS instructions and memory tags required by OS/400 and i5/OS. (Ditto for the PowerPC 970 and PowerPC 970MP, to my great chagrin, which are used in much less expensive IBM workstations.) And while I was once told by an IBMer in the know that the "Cell" chip used by Sony in the PlayStation 3 can support those PowerPC AS instructions, I can't imagine why it would and I have doubts that it is true.

My third response was to compile a special developer version of i5/OS and the related application development toolset for the X64 chips. The problem here is that the X64 and Power architectures are not really alike, and it would take work on the part of IBM, and that also means money and time. There is a quicker way, and it is a pity that IBM doesn't still make PCs and it sold off its PC biz to Lenovo. Luckily, IBM is still in the X64 workstation business, and also luckily it has a licensing partnership with Transitive for its QuickTransit emulation environment.

As we report elsewhere in this issue, IBM last week launched an open beta program for the System p Application Virtual Environment, or PAVE, which allows Linux applications compiled for 32-bit X86 processors to run unmodified on Power processors. This software could be used to allow Linux-on-X86 applications to run unmodified on System i5 servers as well, according to my sources at IBM. And knowing what I know about QuickTransit, it also could work the other way around: It could allow i5/OS applications to be ported to a hybrid Linux/Windows workstation based on Advanced Micro Devices's Opteron or Intel's Xeon Core processors.

In other words, instead of trying to turn the i5 into a workstation, it might make more sense to change a workstation into an i5.

Here are the original sets of emulations that QuickTransit supported when it was launched in June 2005 by Transitive:

QuickTransit for Power/PowerPC: with support for MIPS, X86, and mainframe binaries

If QuickTransit can deal with endian issues between mainframes and X64, Power, or Itanium chips as well as the whole EDCDIC to ASCII issue surrounding the way data is encoded on these machines, then it ought to be able to deal with OS/400 and i5/OS on Power to Linux on X64 translation. So rather than try to recompile i5/OS and WDSc on a workstation, you just put QuickTransit on a box and when an application makes a Power call from inside an i5/OS application, it automatically does the translation and runs it on the X64 iron. This is exactly how Apple Computer runs 68K and Power binaries on its Intel-based Mac PCs and Xserve servers; the "Rosetta" emulation environment that made this possible is largely based on QuickTransit. If it works for Apple, it should work for IBM's hybrid i5 workstation. You could even call it the IntelliStation i Pro.

Because most people today use Windows and not Linux on their desktop, this IntelliStation i Pro workstation would be configured with VMware's Workstation virtual machine hypervisor. The interesting thing about Workstation is that it has special features that prevent people from using it as a server environment. It has limited bandwidth and scalability, and intentionally so because VMware wants people to buy its ESX Server hypervisor and all of the goodies that go with it. This hypothetical IntelliStation i Pro developer workstation would have a Windows partition for running the client side of WebSphere Development Studio Client (WDSc) as well as all of the normal stuff that business people run on their PCs, such as Solitaire. In the other partition, IBM would have a locked down version of Linux--pick one, any one--that has QuickTransit on it, and then it would load on i5/OS. This version of i5/OS would be licensed for one and only one user, and it could link through VMware Workstation to the Windows partition and share virtual storage that way, too.

I have been told that applications compiled in the PAVE environment using Linux-for-X86 compilers will actually move off PAVE and onto real X86 servers (and the 32-bit environment of X64 servers) and run, unchanged. This smells like magic to me, but I asked three times and then called IBM a liar and said I was going to print this. No one, including Transitive, has said it is not true. So, in theory, applications compiled in i5/OS environment that had been QuickTransited on X64 iron should run on a real i5 server. I wouldn't do that, however. I would think you just want to compile to see that the code works, and then compile on the production box when you think you are ready.

So, here's the butcher's bill for this hypothetical IntelliStation i Pro. With a single-core Opteron 250 processor, which runs at 2.4 GHz, 4 GB of main memory, an nVidia Quadro FX 1400 graphics card, an 80 GB SATA drive, and Windows preloaded, the IntelliStation A Pro costs $2,788. Throwing on a Linux license costs a few hundred bucks from either Red Hat or Novell. VMware Workstation 5 costs $199. Call it $3,200 without a monitor. Then, add on a nominal fee of perhaps $300 for the i5/OS and WDSc tools, since IBM is getting a hardware sale, and just like Apple and IBM are not charging for Rosetta or PAVE, respectively, IBM won't charge for this QuickTransit platform either for i5/OS, even though it has to pay Transitive for it. Make it an even $3,500. If you want more processing power, the A Pro line comes in two-socket models, too. And there are models, the M Pro, that support Intel's dual-core and quad-core Xeon processors, but they are more expensive. Let's just start small for now, and be happy.

So tell me: Does that sound like an answer we can all live with? Let me know.

DB2 field encryption with Alliance AES: Encrypt and decrypt individual fields in AS/400 DB2 database files. Alliance APIs can be used in RPG and Cobol applications including older OPM applications. Alliance AES encryption for DB2 fields integrates with Alliance key management for the secure storage of AES keys.

DB2 file encryption with Alliance AES: Encrypt any DB2 database file with Alliance AES/400. You can specify that the data be converted to ASCII or retained in the original EBCDIC character set. You can also specify that the pass phrase should be converted to ASCII for decryption on an ASCII system such as Microsoft Windows. Alliance DB2 file encryption integrates with Alliance AES key management.

IFS file encryption with Alliance AES: You can encrypt and decrypt IFS (Integrated File System) files with Alliance AES encryption commands. Once encrypted files can be decrypted on an AS/400 or Windows PC or Server platform. You can also use the free Alliance Windows AES encryption application to encrypt files on a Windows platform for decryption on the AS/400. IFS file encryption integrates with Alliance AES key management for secure key storage.

AES self-decrypting archives: Alliance AES/400 can encrypt files into a self-decrypting archive. A self-decrypting archive is a Windows executable program. You can run the self-decrypting archive, enter a pass phrase, and decrypt and extract the file. If run from a command line you can pass the program parameters for the decryption. This is helpful if you are automating the decryption process. If you run the self-decrypting archive program without parameters it presents a Windows GUI dialog for pass phrase and other decryption information.

Report distribution with AES encryption: When Alliance AES encryption is used with the Alliance FTP Manager application you can automatically distribute reports in encrypted or self-decrypting archive format. Reports can be sent from one or more output queues, and reports can be selectively routed from the output queue.

AES key management: Alliance AES/400 provides a complete key management facility to help you securely store keys and pass phrases. All application program interfaces and commands allow the use of a named AES key. The Alliance AES key manager automatically backs up the key store when keys are added or changed.

Windows encryption application: Alliance AES encryption includes a Windows application that you can freely distribute to provide encryption and decryption services. Files encrypted on a Windows platform with the Alliance application can be decrypted on the AS/400. Files encrypted on the AS/400 can be decrypted on the Windows platform.

Sample code: The Alliance AES/400 product includes sample RPG and ILE-RPG source code that demonstrate how to use the encryption APIs. There are also sample CL programs that show how to use the Alliance commands to encrypt and decrypt files, and create self-decrypting archives.