You and i

« COMMON Europe is 50; COMMON US is Disney | Main | A Metaphorical Axe and Your Software »



I quite agree with Steve Will. IBM i is an Operating Environment and an Operating System, no doubt about that. In fact, when a user has the IP address of the IBM i, a user profile, a password and a dedicated browser, he can connect from anywhere. The user opens a session dynamically, which is a real virtual computer in order to share a database and programs with the other users dynamically connected at the same time. This virtual computer has an environment depending on the user-profile. I think that IBM i is an Operating Environment already “Anywhere” “Anytime” but not yet natively “Anydevice”, as you know. To be both an Operating System and an Operating Environment with the integration of the database is the condition of Cloud Computing for persistent business applications. Cloud Computing will become a real standard the day applications can be managed quite easily. For example, we have a lot of providers all over the world to host static pages 24/7 because it is easy to manage static web sites.


Good observations, but your use of the Web Server, WebSphere and the JAVA JVM are not good examples. The DB2 database is a good example since it is integrated with the OS.

While IBM may bundle WebSphere and the IBM i version of the Apache Web Server, they are still separate products.

What is really interesting is that IBM i does not really touch the hardware upon which it runs and depends on the virtualization software that now ships with all Power Systems and now includes support for AIX and LINUX as well as IBM i.

If in your focus on the term "operating environment" you focused on the scheduling and messaging and message handling, capabilities I'd by your argument.

I don't think I buy your argument about the Java JVM either as JVM's are bundled with ALL IBM operating systems and most other vendor's OS's... For others like Windows, MAC, a base JVM is pre-installed and updated directly from Oracle's web sites (actually and advantage over IBM i).

BTW, I'm surprised you didn't include scheduling and messaging in your list of OS attributes. These are some of IBM i's finest attributes.

Bob, Thanks for your comments.

When I said "WebSphere Application Server and the associated Java Virtual Machine, then, can be considered an Operating Environment" I specifically did NOT say "on IBM i" because that collection of things form AN Operating Environment -- no matter how they are packaged or on what underlying operating system they are placed. That collection of things, however, is not an Operating System. I am trying to say that Operating Environments (as I define them) can be created separately from operating systems.

And whether IBM i "really touches" the hardware -- well, let's not argue technicalities. The POWER processor has instruction sets which enable the memory and storage architecture of IBM i (for example.) Only IBM i uses them (AIX and Linux on Power do not) so, for all intents and purposes, IBM i "really" uses those capabilities of the processor directly. The fact that there is a virtualization layer (POWERVM) matters for some things, but does not matter for others.

In the end, our POWERVM & Hypervisor become the lowest levels of the "operating systems" on POWER.

And, though I clearly cannot list every typical Operating System function in my bulleted list, I agree scheduling is among those which I left off, and is something at which IBM i excels! I did, however, mention inter-process messaging, which takes many forms, and you're right again -- IBM i excels.

In that case, are Web Server, WebSphere and the JAVA JVM Wart pieces of Software?

I'd like to add a few things that I like about the "operating environment":

- 5250 interface for system administration.
- user authentication and authorization.
- extensive menu navigation.
- remarkably extensive command interface with extensive prompting and help.
- ability to embed commands in CL programs which can be compiled, or run as interpreted streams.
- extensive system values.
- remarkable and extensive database integration (of course).
- support for multiple virtual machines, including Java, PHP, and PASE.
- integrated file system.
- integrated language environment.
- integrated host and application servers.
- extensive system API's with pretty good documentation for programmers.
- extensive work management capabilities.
- provisions for high availability.
- numerous options for inter-process communication, including sockets, message queues, data queues, user spaces, shared memory, and even the file system.

I like that the operating environment is consolidated on one server. Consider user authentication as a beginning point. Under distributed computing models, user authentication is handled by a separate "directory" server. It's such a critical function that you need two of them for high availability.

Actually, managing high availability under a distributed computing model is a lot more complex. It often leads to redundant and remote load balancers, directory servers, web / application servers, database servers, and possibly network storage servers; where each is managed separately.

Compare that to an IBM i environment which has more cohesive administration.

The comments to this entry are closed.