en:docs:os2:modules

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
en:docs:os2:modules [2018/08/11 14:38] prokusheven:docs:os2:modules [2018/08/19 11:24] (current) prokushev
Line 5: Line 5:
 ==== Control Program API  ==== ==== Control Program API  ====
  
-These DLL's contain core OS/2 API, exported by kernel (called CP API or Control Program API), and others are mostly "forwarders" to doscalls. We must note here, that in Intel OS/2 doscalls is a virtual DLL. It does not exist on disk. But here exist DOSCALL1.DLL, which is a collections of call gates into the kernel, or implementations of some API's fully in ring3, based on the real kernel API. DOSCALLS is a virtual DLL, which is a pure kernel API merged with doscall1.dll. The kernel will load also the DLL called DOSCALL2.DLL, which is "user defined API's". This was intended for OEM API extensions.+These DLL's contain core OS/2 API, exported by kernel (called CP API or Control Program API), and others are mostly "forwarders" to doscalls. We must note here, that in Intel OS/2 doscalls is a virtual DLL. It does not exist on disk. But here exist DOSCALL1.DLL, which is a collections of call gates into the kernel, or implementations of some API's fully in ring3, based on the real kernel API. DOSCALLS is a virtual DLL, which is a pure kernel API merged with doscall1.dll. The kernel will load also the DLL called DOSCALL2.DLL, which is "user defined API's". This was intended for OEM API extensions. DOSCALLS in modern OS/2 contains implementation of all (or most) Control Program API. Many other DLLs just forwarders to DOSCALLS. We also uses such logic. Only difference is DOSCALLS not lowest library. DOSCALLS also divided onto two libs. DOSCALLS itself, which contains kernel independed parts, and KAL library, which contains kernel depended part. For osFree project KAL just forward all calls to OS/2 Personality server and recieves answer from it with call result. Such approach allow to port CPI to other kernel easely, because kernel-depended part cleary divided into separate layer.
  
 ^Name ^Description ^Status ^ ^Name ^Description ^Status ^
Line 13: Line 13:
 |[[en:docs:os2:modules:msg|msg]] |Message file API | Done | |[[en:docs:os2:modules:msg|msg]] |Message file API | Done |
 |[[en:docs:os2:modules:moncalls|moncalls]] |Monitor API | Done | |[[en:docs:os2:modules:moncalls|moncalls]] |Monitor API | Done |
-|[[en:docs:os2:modules:kbdcalls|kbdcalls]] |Keyboard API | | +|[[en:docs:os2:modules:kbdcalls|kbdcalls]] |Keyboard API | Done 
-|[[en:docs:os2:modules:moucalls|moucalls]] |Mouse API | | +|[[en:docs:os2:modules:moucalls|moucalls]] |Mouse API | Done 
-|[[en:docs:os2:modules:viocalls|viocalls]] |VIO API | | +|[[en:docs:os2:modules:viocalls|viocalls]] |VIO API | Done 
-|[[en:docs:os2:modules:sesmgr|sesmgr]] |Session manager | |+|[[en:docs:os2:modules:sesmgr|sesmgr]] |Session manager | Done |
 |[[en:docs:os2:modules:bkscalls|bkscalls]] |Base Keyboard Subsystem | Done | |[[en:docs:os2:modules:bkscalls|bkscalls]] |Base Keyboard Subsystem | Done |
 |[[en:docs:os2:modules:bmscalls|bmscalls]] |Base Mouse subsystem | Done | |[[en:docs:os2:modules:bmscalls|bmscalls]] |Base Mouse subsystem | Done |
 |[[en:docs:os2:modules:bvscalls|bvscalls]] |Base Video Subsystem | Done | |[[en:docs:os2:modules:bvscalls|bvscalls]] |Base Video Subsystem | Done |
 |[[en:docs:os2:modules:nampipes|nampipes]] |Named Pipes API | Done | |[[en:docs:os2:modules:nampipes|nampipes]] |Named Pipes API | Done |
-|[[en:docs:os2:modules:quecalls|quecalls]] |Queues API | |+|[[en:docs:os2:modules:quecalls|quecalls]] |Queues API | Done |
 |[[en:docs:os2:modules:os2char|os2char]] |OS/2 character console context | Done | |[[en:docs:os2:modules:os2char|os2char]] |OS/2 character console context | Done |
  
Line 84: Line 84:
 |[[en:docs:os2:modules:pmshapi|pmshapi]] |The PMShell API | Done | |[[en:docs:os2:modules:pmshapi|pmshapi]] |The PMShell API | Done |
 |[[en:docs:os2:modules:pmshltkt|pmshltkt]] |PMShell toolkit ??? | | |[[en:docs:os2:modules:pmshltkt|pmshltkt]] |PMShell toolkit ??? | |
-|[[en:docs:os2:modules:pmgre|pmgre]] |PM GRE (Graphics Runtime \\ Environment) API | |+|[[en:docs:os2:modules:pmgre|pmgre]] |PM GRE (Graphics Runtime Environment) API | Done |
 |[[en:docs:os2:modules:pmgpi|pmgpi]] |GPI (Graphical Program \\ Interface) API | | |[[en:docs:os2:modules:pmgpi|pmgpi]] |GPI (Graphical Program \\ Interface) API | |
 |[[en:docs:os2:modules:pmdrag|pmdrag]] |The PM Drag'n'Drop API | Done | |[[en:docs:os2:modules:pmdrag|pmdrag]] |The PM Drag'n'Drop API | Done |
Line 115: Line 115:
 === VDM PM interface === === VDM PM interface ===
  
-|[[en:docs:os2:modules:pmvdmh|pmvdmh]] |PM VDM helper |[[en:docs:os2:modules:pmvdmp|pmvdmp]] |PM DOS window DLL \\ (works closely with pmviop) |[[en:docs:os2:modules:seamless|seamless]] |Seamless Win-OS/2 support (PM shield) |[[en:docs:os2:modules:shield|shield]] |Some shieild API |+^Name ^ Description ^Status ^ 
 +|[[en:docs:os2:modules:pmvdmh|pmvdmh]] |PM VDM helper | | 
 +|[[en:docs:os2:modules:pmvdmp|pmvdmp]] |PM DOS window DLL \\ (works closely with pmviop) | | 
 +|[[en:docs:os2:modules:seamless|seamless]] |Seamless Win-OS/2 support (PM shield) | | 
 +|[[en:docs:os2:modules:shield|shield]] |Some shieild API |
  
 === Miscellaneous === === Miscellaneous ===
  
-|[[en:docs:os2:modules:pmpic|pmpic]] |Something which handle \\ pictures and metafiles |[[en:docs:os2:modules:pmtkt|pmtkt]] |PM toolkit ??? |+^Name ^ Description ^Status ^ 
 +|[[en:docs:os2:modules:pmpic|pmpic]] |Something which handle \\ pictures and metafiles | | 
 +|[[en:docs:os2:modules:pmtkt|pmtkt]] |PM toolkit ??? |
  
 ==== WPS ==== ==== WPS ====
  
-|[[en:docs:os2:modules:pmwp|pmwp]] |WPS main module |[[en:docs:os2:modules:pmwpmri|pmwpmri]] |WPS resources |[[en:docs:os2:modules:pmvddrop|pmvddrop]] |PMVDDrop Class library (WPS class???) |+^Name ^ Description ^Status ^ 
 +|[[en:docs:os2:modules:pmwp|pmwp]] |WPS main module | | 
 +|[[en:docs:os2:modules:pmwpmri|pmwpmri]] |WPS resources | | 
 +|[[en:docs:os2:modules:pmvddrop|pmvddrop]] |PMVDDrop Class library (WPS class???|
  
  
 {{page>en:templates:dlls}} {{page>en:templates:dlls}}