miércoles, 29 de mayo de 2013

OS/2 Warp and eComStation Architecture by Component.

I had modified the OS/2 Warp - eComStation Archicture by components graphics.

This time I had removed the TCP/IP, MPTS and MMPM/2 applications, just to show it more general, since sometimes MPTS can run without Presentation Manager and was not complete correct.

The file in ODG format can be downloaded here.  Any suggestion on how to improve the graphic is welcome.

martes, 21 de mayo de 2013

Workplace Shell Architecture

Any plan on starting with Workplace Shell will need some understanding of the architecture.

From what I saw on EDM/2 WPS articles every one points that WPS is a set of classes constructed over SOM.

The classes of Warp 4 with their hierarchy are:


There is also an API that has WPS related functions like WinCreateObject and a lot more, but those are part of the Presentation Manager API (I think).

My next steps is trying to understand more about WPS to solve this questions:

1) If we have an open source replacement for all this WPS Classes can we say that we have a 100% WorkplaceShell open source clone?

2) What will be the effort of replacing all this classes based on what it had been done in the XWorkplace project.?

lunes, 13 de mayo de 2013

Starting with Workplace Shell

If I will start with the idea to "Top-to-Down" to make an OS/2 clone  the first step will be to try to clone OS/2 Warp's WorkplaceShell.

Goal: A 100% open source replacement for Workplace Shell.

Reuse: XWorkplace components (GNU GPL V2).

Project Requirements:
  • The WorkplaceShell clone should run on top of OS/2 Warp 4.52 or eComStation 2.x which means that the WorkplaceShell clone should run over IBM's SOM and IBM's PM. 
  • Replicate as much of the original WorkplaceShell functionality as possible. Strange stuff (classes) that are not used may not be cloned. 
  • Open source under the GNU GPL license, since XWorkplace has a lot of work and derivative works should be done under the same license. 
  • Try to replace dependencies on VisualAge for C++ 3 which is used by XWorkplace and try to use GCC compiler. SOM compiler will remain the IBM one.
  • Developers... I don't have (yet) no one interested on the project. It is also hard to find developers with WPS and SOM skills.
  • Money. It will be very hard to find someone for free.
  • Any strange behavior (quirks) on IBM SOM will need to be supported until IBM's SOM can be cloned.
  • After a working clone of  WorkplaceShell is created, it will require future re-works/tweaking when the SOM and PM clones gets created. 
Other open source code that can be checked for this project:
Next Steps:
This are the first steps that I have pending to understand more this possibility. 
  • Know more about WorkplaceShell architecture to understand the work items that need to be procedure. 
  •  Try to assess with developer(s) what can be re-used from XWorkplace and  time efforts to accomplish a 100% WPS clone.

viernes, 10 de mayo de 2013

An open source proposal

Alex Taylor shared with me some of his ideas for an Open Source OS/2 clone. This document is dated from September 2004.
 Excellent documents that is worthy reading. 

Starting with Top-to-Down

After some thinking I started to play with the idea of starting "Top-to-Down" on creating an open source OS/2 Warp clone. By "Top-to-Down" I mean starting from the components on the top like Workplace Shell and go moving down from there.

The "Top-to-Down" idea will mean to create replacement for:
  • Workplace Shell
  • System Object Model (SOM)
  • Presentation Manager (PM)
There are a few open source projects that had started to create a replacement for it, but none of them still an complete 100% replacement for the IBM code:
  • Workplace Shell  - XWorkplace - GNU GPL V2
  • System Object Model (SOM) - SOMFree - GNU GPL and LGPL V3
  • Presentation Manager (PM) - FreePM - BSD License
By completing this three projects, it may be possible that that the main "soul" of OS/2 Warp can be cloned.  Of course that it still will not be a full operating system but it will give a strong start on the right direction.

The idea of starting "Top-to-Down" is to be able to put more open source replacements over a working OS/2 Warp 4.52 or eComStation 2.1. Even that both products are still commercial, it will be a good start to run this components on the top of this OSes.