en:docs:os2:architecture

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
Last revisionBoth sides next revision
en:docs:os2:architecture [2014/06/06 15:28] – [osFree PM] valeriusen:docs:os2:architecture [2016/03/11 00:22] – [Other OS's personalities] valerius
Line 12: Line 12:
  
 LX executable format is unlikely to be used on other architectures, because it is tied to the Intel one. So, LX executable format is unlikely to be used on other architectures, because it is tied to the Intel one. So,
-most possibly, the ELF format will be used. It is cross-platform, extensible and simple. It supports both a 32-bit and a 64-bit variant.  IBM Microkernel used ELF too. And more, IBM used an extended ELF format with special binary sections semantics. It supported inline resources, imports and exports, for example. So, it was possible to use UNIX-style shared objects, as well as OS/2-style DLL's.+most possibly, the ELF format will be used. It is cross-platform, extensible and simple. It supports both a 32-bit and a 64-bit variant.  IBM Microkernel used ELF too. And more, IBM used an extended ELF format with special binary sections semantics. It supported inline resources, imports and exports, for example. So, it was possible to use UNIX-style shared objects, as well as OS/2-style DLL's, both in ELF format.
  
 So, the userland must be compatible with OS/2 (Intel). This includes some support of 16-bit applications. Although So, the userland must be compatible with OS/2 (Intel). This includes some support of 16-bit applications. Although
Line 52: Line 52:
 The term "MVM" goes from OS/2 (PowerPC). It replaces the term "MVDM" (Multiple Virtual **DOS** Machines). The PowerPC platform could not so easily emulate the Intel processor real mode, so it required more emulation. Though, we must say that it worked just fine, fast, and theoretically may be used not for DOS only. (IBM had plans to provide a binary compatibility with OS/2 (Intel), on the base of the same component which was used to run DOS Apps).  The term "MVM" goes from OS/2 (PowerPC). It replaces the term "MVDM" (Multiple Virtual **DOS** Machines). The PowerPC platform could not so easily emulate the Intel processor real mode, so it required more emulation. Though, we must say that it worked just fine, fast, and theoretically may be used not for DOS only. (IBM had plans to provide a binary compatibility with OS/2 (Intel), on the base of the same component which was used to run DOS Apps). 
  
-=== Virtual Device Drivers (VDD's) ===+Read more on [[en:docs:general:mvm|MVM personality]]
  
-=== Virtual Machine Monitor ===+==== Other OS's personalities ====
  
-=== MVM server ===+The microkernel is a 'core' of the system implementing the very minimal set of mechanisms and abstractions. It has no policies in it, only pure mechanisms. The OS's are implemented on top. There can be multiple separate OS'es running on top of a common microkernel. In general, the OS's can have only microkernel as a common part. 
  
-=== The DOS emulation kernel (doskrnl===+But it is not a clever idea to create each OS from scratch. So, some higher level abstractions needed to be created on top of the microkernel, and then the OS'es need to be based on them. These higher level abstractions are the set of servers and libs, called the Personality Neutral Services (or Neutral Personality). If compare with WinNT design, it is simiar to 'Native' NT API, which is a base for Win32 and other subsystems
  
-=== Instruction Set Translator (IST) === +See [[en:docs:general:index|osFree Whitepaper]] for general system design, and proposed personalities.
- +
-=== VM86 on Intel, and Hardware-assisted virtualization === +
- +
-=== Microkernels as Hypervisors === +
- +
-==== Other OS'personalities ====+
  
 === "The one Ring to Bind Them all" (OS/2 as an integration platform for different types of applications) === === "The one Ring to Bind Them all" (OS/2 as an integration platform for different types of applications) ===
  
-==== The current OS/2 personality prototype ====+OS/2 personality is proposed to be a dominant personality. It governs all Personalities and Virtual Machines via the WPS objects. It has API's to communicate other VM's and Personalities. And the Desktop is an OS/2 desktop, using the GRADD Video driver. This Desktop is shared between all 'native' and 'alien' apps.
  
-==== osFree PM ====+I heard that IBM registered a trade mark "The Integration Platform (TM)", and it is a general concept and ideology under OS/2 design.
  
-The osFree PM is an osFree version of FreePM, which was began by Evgeny Kotsuba, and then abandonedAfter thatwe did some changes to it, and called it "osFree PM", to avoid name collision in case Evgeny will continue his initial version.+It advertised as "DOS better than DOS" and "Windows better than Windows", and it's true. The continuation of this idea was the Workplace OS, which was never finishedbecause a voluntary desision of IBM management. It is failed also because no other companies were willing to port their OS'es to IBM's microkernel. But we care much only about OS/2 personality as a base and our OSThe other personalities could be reused as results or other projectslike L4linux or ReactOS, and Opensource will help us with it.
  
-=== Graphical Program Interface (GPI) ===+ ==== The current OS/2 personality prototype ====
  
-=== Graphics Runtime Environment (OS/2 PM GREand Presentation Drivers ===+The osFree Demo setup was demonstrated in 2011, Aug, 22, on the Chaos Constructions'2011 Computer Art festival, in St'Petersbourg. See [[ru:articles:cc-2011|A speech of Oxyd on CC'2011]], a [[http://www.youtube.com/watch?v=yxE6Jy3SQ04|clip]] on youtube (in russian).
  
-=== The GRADD model ===+The current demo CD can be downloaded from our [[en:download|download area]]
  
-=== Video Protected Mode Interface (PMI) ===+Here is described our demo setup: [[en:docs:os2:status|osFree demo]].
  
-==== VIO/KBD/MOU (Console API) ====+==== osFree PM ====
  
-=== VIO and BVH's (Base Video Handlers) === +The osFree PM is an osFree version of FreePM, which was began by Evgeny Kotsuba, and then abandoned. After that, we did some changes to it, and called it "osFree PM", to avoid name collision in case Evgeny will continue his initial version.
- +
-==== Framebuffer Interface ==== +
- +
-=== Virtual Framebuffer over GRADD driver === +
- +
-=== BVH and PM GRE on top of a Framebuffer interface === +
- +
- +
-==== The current osFree PM prototype ====+
  
 +  * [[http://web.archive.org/web/20071214042403/http://wiki.laser.ru/os8/index.php/FreePM|Docs about FreePM, by Evgeny]], WebArchive version
 +  * [[http://frepm.sourceforge.net|FreePM on SourceForge]] Forum and code repository
 +  * [[en:docs:os2:pm:index|Documentation]] on PM implementation based on FreePM
 +  * [[en:docs:os2:freepm:index|Some parts]] of FreePM docs written by Evgeny.
  
 ~~DISCUSSION~~ ~~DISCUSSION~~