Main public logs
Appearance
Combined display of all available logs of EDM2. You can narrow down the view by selecting a log type, the username (case-sensitive), or the affected page (also case-sensitive).
- 21:53, 25 May 2025 Martini talk contribs created page WpclsQuerySettingsPageSize (Created page with "{{DISPLAYTITLE:wpclsQuerySettingsPageSize}} This class method returns the default size of a Settings page in dialog units for instances of this object class. ==Syntax== _wpclsQuerySettingsPageSize(somSelf, pSizl) ==Parameters== ;''somSelf'' (M_WPObject *) - input :Pointer to the WPObject class object. ;''pSizl'' (PSIZEL) - in/out :Pointer to the default Settings page dimensions. A pointer to the SIZEL structure containing the ''cx'' and ''cy'' dimensions of t...")
- 21:53, 25 May 2025 Martini talk contribs created page WpclsQueryStyle (Created page with "{{DISPLAYTITLE:wpclsQueryStyle}} This method is called to allow the class object to specify the default object class style for its instances. ==Syntax== _wpclsQueryStyle(somSelf) ==Parameters== ;''somSelf'' (M_WPObject *) - input :Pointer to the WPObject class object. ==Returns== ;''ulReturn'' (ULONG) - returns: Class style for this object. :;CLSTYLE_DONTTEMPLATE: Do not allow a create-template operation on objects of this class. :;CLSTYLE_NEVERCOPY: Do not allow...")
- 21:47, 25 May 2025 Martini talk contribs created page WpclsQuerySetting (Created page with "{{DISPLAYTITLE:wpclsQuerySetting}} This method returns the class object settings from the Settings notebook. ==Syntax== _wpclsQuerySetting(somSelf, pszSetting, pValue, ulValueLen) ==Parameters== ;'''somSelf''' (M_WPAbstract *) - input :Pointer to the WPAbstract class object. ;'''pszSetting''' (PSZ) - input :Name of the setting that is to be queried. ;'''pValue''' (PVOID) - in/out :Buffer in which settings values are returned. If this parameter is NULL, onl...")
- 21:46, 25 May 2025 Martini talk contribs created page WpclsQueryOpenFolders (Created page with "{{DISPLAYTITLE:wpclsQueryOpenFolders}} This class method enumerates all open folders for the specified class. ==Syntax== _wpclsQueryOpenFolders(somSelf, Folder, ulOption, fLock) ==Parameters== ;'''somSelf''' (M_WPFolder *) - input :Pointer to the WPFolder class object. ;'''Folder''' (WPFolder *) - input :Pointer to a folder object. This field is ignored unless `QC_NEXT` is specified in ''ulOption''. ;'''ulOption''' (ULONG) - input :Flag indicating the folder t...")
- 21:45, 25 May 2025 Martini talk contribs created page WpclsQueryObjectFromPath (Created page with "{{DISPLAYTITLE:wpclsQueryObjectFromPath}} This method is specific to version 3, or higher, of the OS/2 operating system. This class method returns the object pointer for a file or directory. ==Syntax== _wpclsQueryObjectFromPath(somSelf, pszFQPath) ==Parameters== ;'''somSelf''' (M_WPFileSystem *) - input :Pointer to the WPFileSystem class object. ;'''pszFQPath''' (PSZ) - input :String containing the fully qualified path name (or object ID). ;'''pObject''' (WPOb...")
- 21:44, 25 May 2025 Martini talk contribs created page WpclsQueryObjectFromFrame (Created page with "{{DISPLAYTITLE:wpclsQueryObjectFromFrame}} This method is specific to version 3, or higher, of the OS/2 operating system. This class method returns a pointer to the object associated with the specified frame window handle. ==Syntax== _wpclsQueryObjectFromFrame(somSelf, hwndFrame) ==Parameters== ;'''somSelf''' (M_WPDesktop *) - input :Pointer to the WPDesktop class object. ;'''hwndFrame''' (HWND) - input :Handle to the top-level frame window. ;'''Object''' (WPO...")
- 21:42, 25 May 2025 Martini talk contribs created page WpclsQueryObject (Created page with "{{DISPLAYTITLE:wpclsQueryObject}} This class method returns the object pointer for a given persistent object handle. ==Syntax== _wpclsQueryObject(somSelf, hObject) ==Parameters== ;'''somSelf''' (M_WPObject *) - input :Pointer to the WPObject class object. ;'''hObject''' (HOBJECT) - input :Handle for a given object instance. ;'''object''' (WPObject *) - returns :Pointer to the object. The pointer to the object that corresponds to the given object handle or NULL...")
- 21:41, 25 May 2025 Martini talk contribs created page WpclsQueryInstanceType (Created page with "{{DISPLAYTITLE:wpclsQueryInstanceType}} This method is called to allow the class object to specify the file types for instances of its class. ==Syntax== _wpclsQueryInstanceType(somSelf) ==Parameters== ;'''somSelf''' (M_WPFileSystem *) - input :Pointer to the WPFileSystem class object. ;'''psuccess''' (PSZ) - returns :Success indicator. NULL Error occurred. Other A pointer to a string containing file types. This string can contain several file types separated b...")
- 21:40, 25 May 2025 Martini talk contribs created page WpclsQueryInstanceFilter (Created page with "{{DISPLAYTITLE:wpclsQueryInstanceFilter}} This method is called to allow the class object to specify the file title filters for instances of its class. ==Syntax== _wpclsQueryInstanceFilter(somSelf) ==Parameters== ;'''somSelf''' (M_WPFileSystem *) - input :Pointer to the WPFileSystem class object. ;'''psuccess''' (PSZ) - returns :Success indicator. NULL Error occurred. Other A pointer to a string containing file title filters. This string can contain several fi...")
- 21:39, 25 May 2025 Martini talk contribs created page WpclsQueryInstanceClass (Created page with "{{DISPLAYTITLE:wpclsQueryInstanceClass}} This class method returns the name of a class that this object can become. ==Syntax== _wpclsQueryInstanceClass(somSelf) ==Parameters== ;'''somSelf''' (M_WPFileSystem *) - input :Pointer to the WPFileSystem class object. ;'''pszClass''' (PSZ) - returns :String containing the name of the new class for files of this class. ==Returns== ;'''pszClass''' (PSZ) - returns :String containing the name of the new class for fil...")
- 21:38, 25 May 2025 Martini talk contribs created page WpclsQueryIconN (Created page with "{{DISPLAYTITLE:wpclsQueryIconN}} This method is specific to version 3, or higher, of the OS/2 operating system. This method is called to allow the class object to specify the default animation icon to be used for its instances. ==Syntax== _wpclsQueryIconN(somSelf, ulIconIndex) ==Parameters== ;'''somSelf''' (M_WPFolder *) - input :Pointer to the WPFolder class object. ;'''ulIconIndex''' (ULONG) - input :Animation icon index. This value must be 1. ;'''hptr''' ([...")
- 21:37, 25 May 2025 Martini talk contribs created page WpclsQueryIconDataN (Created page with "{{DISPLAYTITLE:wpclsQueryIconDataN}} This class method is specific to version 3, or higher, of the OS/2 operating system. This class method allows the system to build the class default animation icon for a given class. ==Syntax== _wpclsQueryIconDataN(somSelf, pIconInfo, ulcbIconInfo, ulIconIndex) ==Parameters== ;'''somSelf''' (M_WPFolder *) - input :Pointer to the WPFolder class object. ;'''pIconInfo''' (PICONINFO) - input :Pointer to the icon information. ;''...")
- 21:36, 25 May 2025 Martini talk contribs created page PICONINFO (Redirected page to ICONINFO) Tag: New redirect
- 21:35, 25 May 2025 Martini talk contribs created page WpclsQueryIconData (Created page with "{{DISPLAYTITLE:wpclsQueryIconData}} This class method allows the system to build the class default icon for a given class. ==Syntax== _wpclsQueryIconData(somSelf, pIconInfo) ==Parameters== ;'''somSelf''' (M_WPObject *) - input :Pointer to the class object for which you want the class icon data. ;'''pIconInfo''' (PICONINFO) - output :Pointer to a buffer. Pointer to the buffer large enough to contain an ICONINFO data structure followed by the data needed to desc...")
- 21:33, 25 May 2025 Martini talk contribs created page WpclsQueryIcon (Created page with "{{DISPLAYTITLE:wpclsQueryIcon}} This class method is called to allow the class object to specify the default icon to be used for its instances. ==Syntax== _wpclsQueryIcon(somSelf) ==Parameters== ;'''somSelf''' (M_WPObject *) - input :Pointer to the WPObject class object. ;'''hptrSuccess''' (HPOINTER) - returns :Success indicator. NULL Error occurred. Other Handle to an icon. ==Returns== ;'''hptrSuccess''' (HPOINTER) - returns :Success indicator. NULL Erro...")
- 21:32, 25 May 2025 Martini talk contribs created page WpclsQueryFolder (Created page with "{{DISPLAYTITLE:wpclsQueryFolder}} This class method is called to get a pointer to a folder object that corresponds to a given file system location. ==Syntax== _wpclsQueryFolder(somSelf, pLocation, fLock) ==Parameters== ;'''somSelf''' (M_WPObject *) - input :Pointer to the WPObject class object. ;'''pLocation''' (PSZ) - input :Folder location. This value can be in any of the following formats: :* Predefined object IDs of system folders: :* '<WP_NOWHERE>' The hi...")
- 21:31, 25 May 2025 Martini talk contribs created page WpclsQueryExtendedCriteria (Created page with "{{DISPLAYTITLE:wpclsQueryExtendedCriteria}} This class method is called to allow the specified class to specify the extended criteria to be used on a search for instances of this class. ==Syntax== _wpclsQueryExtendedCriteria(somSelf, Title, ulSearchType, ExtendedCriteria) ==Parameters== ;'''somSelf''' (M_WPObject *) - input :Pointer to the WPObject class object. ;'''Title''' (PSZ) - input :Pointer to the title specification for objects to be searched. This tit...")
- 21:30, 25 May 2025 Martini talk contribs created page PCLASSFIELDINFO (Redirected page to CLASSFIELDINFO) Tag: New redirect
- 21:28, 25 May 2025 Martini talk contribs created page WpclsQueryError (Created page with "{{DISPLAYTITLE:wpclsQueryError}} This class method queries the current error code held within a class object. ==Syntax== _wpclsQueryError(somSelf) ==Parameters== ;'''somSelf''' (M_WPObject *) - input :Pointer to the WPObject class object. ;'''ulErrorId''' (ULONG) - returns :ID of the last error. Last error that occurred when using this class object. ==Returns== ;'''ulErrorId''' (ULONG) - returns :ID of the last error. Last error that occurred when using this clas...")
- 21:18, 25 May 2025 Martini talk contribs created page WpclsQueryEditString (Created page with "{{DISPLAYTITLE:wpclsQueryEditString}} This method is called to allow the class object to specify the text to be used in the edit pushbutton of the palette object's open view. ==Syntax== <pre> PSZ _wpclsQueryEditString(M_WPPalette *somSelf) </pre> ==Parameters== ;''somSelf'' (M_WPPalette *) - input :Pointer to the WPPalette class object. ==Returns== ;''ppointer'' (PSZ) - returns :Pointer to the edit pushbutton string. ==Usage== This method can be called at...")
- 21:15, 25 May 2025 Martini talk contribs created page WpclsQueryDetailsInfo (Created page with "{{DISPLAYTITLE:wpclsQueryDetailsInfo}} This method is called to allow the class object to specify its details to be used for its instances. ==Syntax== <pre> ULONG _wpclsQueryDetailsInfo(M_WPObject *somSelf, PCLASSFIELDINFO pClassFieldInfo, PULONG pSize) </pre> ==Parameters== ;''somSelf'' (M_WPObject *) - input :Pointer to the WPObject class object. ;''pClassFieldInfo'' (PCLASSFIELDINFO) - in/out :Pointer to details information. ;''pSize'' (PULONG) - i...")
- 23:13, 24 May 2025 Martini talk contribs created page PCLASSDETAILS (Redirected page to CLASSDETAILS) Tag: New redirect
- 23:12, 24 May 2025 Martini talk contribs created page WpclsQueryDetails (Created page with "{{DISPLAYTITLE:wpclsQueryDetails}} This class method is called to allow the class object to specify the default details view items for its instances. ==Syntax== <PRE> pReturn = _wpclsQueryDetails(somSelf); </PRE> ==Parameters== ;''somSelf'' (M_WPObject *) - input :Pointer to the WPObject class object. ==Returns== ;''pReturn'' (PCLASSDETAILS) - returns :Success indicator. :{| class="wikitable" ! Value !! Description |- | Non-NULL || Pointer to details infor...")
- 23:12, 24 May 2025 Martini talk contribs created page WpclsQueryDefaultView (Created page with "{{DISPLAYTITLE:wpclsQueryDefaultView}} This class method is called to allow the class object to specify the default open view for its instances. ==Syntax== <PRE> ulView = wpclsQueryDefaultView(somSelf); </PRE> ==Parameters== ;''somSelf'' (M_WPObject *) - input :Pointer to the WPObject class object. ==Returns== ;''ulView'' (ULONG) - returns :Default open view. :{| class="wikitable" ! Value !! Description |- | OPEN_CONTENTS || Open contents view. |- | OPEN_D...")
- 23:07, 24 May 2025 Martini talk contribs created page WpclsQueryDefaultHelp (Created page with "{{DISPLAYTITLE:wpclsQueryDefaultHelp}} This class method is called to allow the class object to specify its default help panel for its instances. ==Syntax== <PRE> rc = _wpclsQueryDefaultHelp(somSelf, HelpPanelId, HelpLibrary); </PRE> ==Parameters== ;''somSelf'' (M_WPObject *) - input :Pointer to the WPObject class object. ;''HelpPanelId'' (PULONG) - output :Pointer to the help panel which provides help for this class. ;''HelpLibrary'' (PSZ) - output :...")
- 23:05, 24 May 2025 Martini talk contribs created page WpclsQueryButtonAppearance (Created page with "{{DISPLAYTITLE:wpclsQueryButtonAppearance}} This class method returns the system button appearance. It is specific to version 3 or higher of the OS/2 operating system. ==Syntax== <PRE> ulButtonType = _wpclsQueryButtonAppearance(somSelf); </PRE> ==Parameters== ;''somSelf'' (M_WPObject *) - input :Pointer to the WPObject class object. ==Returns== ;''ulButtonType'' (ULONG) - returns :Flag indicating the system default button appearance. :{| class="wikitable"...")
- 23:04, 24 May 2025 Martini talk contribs created page M WPFileSystem (Redirected page to WPFileSystem) Tag: New redirect
- 23:04, 24 May 2025 Martini talk contribs created page WpclsQueryAwakeObject (Created page with "{{DISPLAYTITLE:wpclsQueryAwakeObject}} This class method determines if the given object is already awake. It is specific to version 3 or higher of the OS/2 operating system. ==Syntax== <PRE> Object = _wpclsQueryAwakeObject(somSelf, pszInputPath); </PRE> ==Parameters== ;''somSelf'' (M_WPFileSystem *) - input :Pointer to the WPFileSystem class object. ;''pszInputPath'' (PSZ) - input :Fully-qualified input path. Note: This parameter must be a valid path. The...")
- 23:03, 24 May 2025 Martini talk contribs created page WpclsQueryActiveDesktopHWND (Created page with "{{DISPLAYTITLE:wpclsQueryActiveDesktopHWND}} This class method returns the handle of the active WPDesktop object. It is specific to version 3 or higher of the OS/2 operating system. ==Syntax== <PRE> hwndDesktop = _wpclsQueryActiveDesktopHWND(somSelf); </PRE> ==Parameters== ;''somSelf'' (M_WPDesktop *) - input :Pointer to the WPDesktop class object. ==Returns== ;''hwndDesktop'' (HWND) - returns :Handle of the active desktop object's frame window. :{| cl...")
- 22:59, 24 May 2025 Martini talk contribs created page M WPDesktop (Redirected page to WPDesktop) Tag: New redirect
- 22:59, 24 May 2025 Martini talk contribs created page WpclsQueryActiveDesktop (Created page with "{{DISPLAYTITLE:wpclsQueryActiveDesktop}} This class method returns a pointer to the active WPDesktop object. It is specific to version 3 or higher of the OS/2 operating system. ==Syntax== <PRE> WPDesktop = _wpclsQueryActiveDesktop(somSelf); </PRE> ==Parameters== ;''somSelf'' (M_WPDesktop *) - input :Pointer to the WPDesktop class object. ==Returns== ;''WPDesktop'' (WPDesktop *) - returns :Pointer to the active desktop object. :{| class="wikitable" ! Va...")
- 22:57, 24 May 2025 Martini talk contribs created page WpclsObjectFromHandle (Created page with "{{DISPLAYTITLE:wpclsObjectFromHandle}} This class method extracts the object pointer for an instance represented by the given handle. It is specific to version 3 or higher of the OS/2 operating system. ==Syntax== <PRE> pObject = _wpclsObjectFromHandle(somSelf, hObject); </PRE> ==Parameters== ;''somSelf'' (M_WPObject *) - input :Pointer to the WPObject class object. ;''hObject'' (HOBJECT) - input :Persistent object handle. ==Returns== ;''pObject'' (WPObj...")
- 22:52, 24 May 2025 Martini talk contribs created page WpclsNew (Created page with "{{DISPLAYTITLE:wpclsNew}} This class method creates a new instance of a given class of object. ==Syntax== <PRE> wpclsNew = _wpclsNew(somSelf, pszTitle, pszSetupEnv, Folder, fLock); </PRE> ==Parameters== ;''somSelf'' (M_WPObject *) - input :Pointer to the WPObject class object. ;''pszTitle'' (PSZ) - input :Pointer to a null-terminated string which contains the initial title of the object as it is to appear when displayed on the user interface underneath an...")
- 22:50, 24 May 2025 Martini talk contribs created page WpclsMakeAwake (Created page with "{{DISPLAYTITLE:wpclsMakeAwake}} This class method is called to allow the specified class to awaken an object. ==Syntax== <PRE> _wpclsMakeAwake(somSelf, pTitle, ulStyle, hptrIcon, pObjData, Folder, ulUser); </PRE> ==Parameters== ;''somSelf'' (M_WPObject *) - input :Pointer to the WPObject class object. ;''pTitle'' (`PSZ`) - input :Pointer to a string containing a title to set on the object. If this value is NULL, the class default value is used. ;''ulStyle''...")
- 22:47, 24 May 2025 Martini talk contribs created page WpclsInsertMultipleObjects (Created page with "{{DISPLAYTITLE:wpclsInsertMultipleObjects}} This class method inserts multiple objects into a container at one time. It is specific to version 3 or higher of the OS/2 operating system. ==Syntax== <PRE> rc = _wpclsInsertMultipleObjects(somSelf, hwndCnr, pptlIcon, pObjectArray, pRecordParent, NumRecords); </PRE> ==Parameters== ;''somSelf'' (M_WPObject *) - input :Pointer to the WPObject class object. ;''hwndCnr'' (HWND) - input :Handle to the container windo...")
- 22:46, 24 May 2025 Martini talk contribs created page M WPObject (Redirected page to WPObject) Tag: New redirect
- 22:45, 24 May 2025 Martini talk contribs created page WpclsInitData (Created page with "{{DISPLAYTITLE:wpclsInitData}} This class method is called to allow the class object to initialize its instance data. ==Syntax== <PRE> wpclsInitData(somSelf); </PRE> ==Parameters== ;''somSelf'' (M_WPObject *) - input :Pointer to the WPObject class object. ==Returns== There is no return value for this method. ==Remarks== This method is called immediately after the class object is first awakened. When the class object is made dormant, the wpclsUnInitData me...")
- 22:44, 24 May 2025 Martini talk contribs created page WpclsIncUsage (Created page with "{{DISPLAYTITLE:wpclsIncUsage}} This class method increments the class usage count. It is specific to version 3 or higher of the OS/2 operating system. ==Syntax== <PRE> wpclsIncUsage(somSelf); </PRE> ==Parameters== ;''somSelf'' (M_WPObject *) - input :Pointer to the WPObject class object. ==Returns== There is no return value for this method. ==Remarks== The class usage count is used by the system to dynamically load and unload DLLs containing classes. ==How to Ov...")
- 22:42, 24 May 2025 Martini talk contribs created page WpclsFindOneObject (Created page with "{{DISPLAYTITLE:wpclsFindOneObject}} This class method finds an object matching a predefined set of properties. It is specific to version 3 or higher of the OS/2 operating system. ==Syntax== <PRE> Object = _wpclsFindOneObject(somSelf, hwndOwner, pszFindParams); </PRE> ==Parameters== ;''somSelf'' (M_WPObject *) - input :Pointer to the WPObject class object. ;''hwndOwner'' (HWND) - input :Handle of the owner window for any dialogs presented during the search. ;'...")
- 22:40, 24 May 2025 Martini talk contribs created page WpclsFindObjectNext (Created page with "{{DISPLAYTITLE:wpclsFindObjectNext}} This class method finds the next set of objects matching the criteria established by a previous call to wpclsFindObjectFirst. ==Syntax== <PRE> rc = _wpclsFindObjectNext(somSelf, hfind, pBuffer, pCount); </PRE> ==Parameters== ;''somSelf'' (M_WPObject *) - input :Pointer to the WPObject class object. ;''hfind'' (HFIND) - input :Handle associated with a previous wpclsFindObjectFirst or `wpclsFindObjectNext` method...")
- 19:27, 24 May 2025 Martini talk contribs created page SMPV211 - Appendix A (Created page with "The following is the source code for an actual PSD.")
- 19:26, 24 May 2025 Martini talk contribs created page SMPV211 - OS/2 for SMP V2.11 Tools (Created page with "{{SMPV211}} A Multiprocessor CPU Performance Monitor will be shipped with this product. This tool will display CPU utilization for each processor in bar graph and histogram modes. It will be written as a PM application and will display each processor's bar or line as a different color. This tool will also have the capability of placing each processor offline or online. This is useful to show the scalability of OS/2 for SMP V2.11. It may also be used for debug purposes....")
- 19:25, 24 May 2025 Martini talk contribs created page SMPV211 - The Single Processor Utility Program (Created page with "{{SMPV211}} As explained previously, some applications written for uniprocessor OS/2 may experience problems running under OS/2 for SMP V2.11 because they rely upon priorities between threads for accessing shared resources, or use the CLI/STI method for protecting resources like semaphores or memory. These types of application are called MP-safe. These programs will still run fine under OS/2 for SMP V2.11 if they are run in a uniprocessor mode. The EXECMODE program is a...")
- 19:23, 24 May 2025 Martini talk contribs created page SMPV211 - New Kernel Debugger Commands (Created page with "{{SMPV211}} The Kernel debugger architecture is such that only one thread can be in the debugger at any given time, so it uses a spinlock to serialize its access. If entered, the debugger must inform the user as to the state of all the processors, even though the other processors are still executing code. It accomplishes this by sending a spin command using and IPI (interprocessor interrupt) to all the other processors. When a processor receives a spin command sent by t...")
- 19:21, 24 May 2025 Martini talk contribs created page SMPV211 - New Device Helper (DevHlp) Routines (Created page with "Following are the new physical and virtual DevHlp routines. ==Physical DevHlps== The OS/2 kernel will provide new DevHlps for OS/2 for SMP V2.11 as follows. {| class="wikitable" |+ DevHlp Functions |- ! Function Name ! EQU Value ! Description |- | DevHlp_CreateSpinLock | 111 | Create a spinlock - SMP |- | DevHlp_FreeSpinLock | 112 | Free a spinlock - SMP |- | DevHlp_AcquireSpinLock | 113 | Acquire a spinlock - SMP |- | DevHlp_ReleaseSpinLock | 114 | Rel...")
- 19:19, 24 May 2025 Martini talk contribs created page SMPV211 - Avoiding Device Driver Deadlocks (Created page with "{{SMPV211}} Deadlock can be defined as an unresolved contention for use of a resource. Whenever any mutual exclusion primitive is used, the possibility of deadlock is introduced. This is evident even in uniprocessor system such as OS/2 with the use of semaphores. The possibilities of deadlock are greater in a multiprocessor environment because of the large requirement for mutual exclusion. The method of mutual exclusion for device drivers and the OS/2 SMP kernel is the s...")
- 19:17, 24 May 2025 Martini talk contribs created page SMPV211 - Application Considerations (Created page with "The following sections discuss application considerations of OS/2 for SMP V2.11. ==Application Compatibility Requirements== * An Application or associated subsystem must not use the 'INC' instruction as a semaphore without prepending a 'LOCK' prefix. On a UniProcessor (UP) system this instruction can be used as high performance semaphore without calling any other OS service if the semaphore is free and when the semaphore is clear and there are no waiters for the semaph...")
- 18:58, 24 May 2025 Martini talk contribs created page SMPV211 - Device Drivers In OS/2 for SMP V2.11 (Created page with "{{SMPV211}} This chapter describes the impacts to driver writers when writing device drivers for OS/2 for SMP V2.11. Existing device drivers should run on OS/2 for SMP V2.11 without modifications providing two simple rules are followed: *The driver must call DevHlp EOI to perform an EOI. *The driver must not mask or unmask interrupts directly. OS/2 2.x device drivers were written with only 8259 architecture in mind. The code that is most commonly executed in a device...")
- 18:57, 24 May 2025 Martini talk contribs created page SMPV211 - Understanding Spinlocks (Created page with "OS/2 for SMP V2.11 provides synchronization and serialization using spinlocks. A spinlock is simply a section of code that executes in a tight loop waiting for a variable to be cleared. ==Spinlocks== The defined mechanism for protection of critical resources in OS/2 MP is a spinlock. A spinlock is a serialization mechanism that is used to restrict access to a critical resource to the owner of the spinlock. Spinlocks are implemented in the LockManager, which is part of...")
- 18:03, 24 May 2025 Martini talk contribs created page SMPV211 - Platform Specific Drivers (PSDs) (Created page with "In OS/2 for SMP V2.11, all of the platform specific code has been removed from the operating system, and placed into a Platform Specific Driver. These drivers provide an abstraction layer for the underlying hardware by allowing the operating system to call generic functions to perform platform-specific operations without worrying about the actual hardware implementation. This allows OS/2 for SMP V2.11 to support new MP hardware platforms without modifying the operating s...")