Difference between revisions of "Version Status"
BrentNewland (talk | contribs) (Added some links for the File Systems section) |
BrentNewland (talk | contribs) (Added lots of section links to encourage wiki expansion) |
||
Line 1: | Line 1: | ||
{{Warning|If you are not a developer and you want to edit the status of a component, then ask its current developer/maintainer first. Quote him on the Discussion page. This is mandatory to make sure the information is authoritative.}} | {{Warning|If you are not a developer and you want to edit the status of a component, then ask its current developer/maintainer first. Quote him on the Discussion page. This is mandatory to make sure the information is authoritative.}} | ||
+ | ==Current Component Status== | ||
<table class="wikitable" border="1" cellpadding="3" cellspacing="0" style="border: gray solid 1px; border-collapse: collapse; width: 90%;"> | <table class="wikitable" border="1" cellpadding="3" cellspacing="0" style="border: gray solid 1px; border-collapse: collapse; width: 90%;"> | ||
<tr> | <tr> | ||
Line 17: | Line 18: | ||
<tr> | <tr> | ||
− | <td>Operating system localization</td> | + | <td>[[Translation_Introduction|Operating system localization]]</td> |
<td>Depends on language. Ask appropriate language maintainer.</td> | <td>Depends on language. Ask appropriate language maintainer.</td> | ||
</tr> | </tr> | ||
Line 36: | Line 37: | ||
<tr> | <tr> | ||
− | <td>Win32k</td> | + | <td>[[Win32k.sys|Win32k]]</td> |
<td> | <td> | ||
Support for '''User mode printer drivers''': unimplemented.<br/> | Support for '''User mode printer drivers''': unimplemented.<br/> | ||
Line 58: | Line 59: | ||
<tr> | <tr> | ||
− | <td>Bootloader</td> | + | <td>[[FreeLoader|Bootloader]]</td> |
<td>In a rather good shape, needs further development in terms of adding more features and fixing existing. We switched to the NT-compatible booting method with {{rev|43273}}. Old bootmethod has been removed in {{rev|52491}}.</td> | <td>In a rather good shape, needs further development in terms of adding more features and fixing existing. We switched to the NT-compatible booting method with {{rev|43273}}. Old bootmethod has been removed in {{rev|52491}}.</td> | ||
</tr> | </tr> | ||
Line 67: | Line 68: | ||
<tr> | <tr> | ||
− | <td>Memory manager (MM)</td> | + | <td>[[NewCc#Ok_so_about_NewMM|Memory manager (MM)]]</td> |
<td>In a process of a soft rewrite, resulting in a functional equivalent of NT's (2003's) memory manager, without made up ROS-specific implementations and assumptions.</td> | <td>In a process of a soft rewrite, resulting in a functional equivalent of NT's (2003's) memory manager, without made up ROS-specific implementations and assumptions.</td> | ||
</tr> | </tr> | ||
Line 77: | Line 78: | ||
<tr> | <tr> | ||
− | <td>Common Cache (CC)</td> | + | <td>[[NewCc|Common Cache (CC)]]</td> |
<td>Stays as it is for now, adapting to the changing memory manager. There exist three rewrites: No-Cc (a version of the kernel which does no caching at all, very slow); cache-manager-rewrite, started long time ago, but still occasionally maintained in a working condition; arty-cc by Art Yerkes, totally new Cc with a good, separated from Mm architecture, WIP.</td> | <td>Stays as it is for now, adapting to the changing memory manager. There exist three rewrites: No-Cc (a version of the kernel which does no caching at all, very slow); cache-manager-rewrite, started long time ago, but still occasionally maintained in a working condition; arty-cc by Art Yerkes, totally new Cc with a good, separated from Mm architecture, WIP.</td> | ||
</tr> | </tr> | ||
Line 105: | Line 106: | ||
<tr> | <tr> | ||
− | <td>PNP manager</td> | + | <td>[[How_PnP_Works_in_ReactOS|PNP manager]]</td> |
<td>Supports all driver operations. However, the functional logic is not always the same as in Windows. Implementation is also still very different from Windows PNP. A complete rewrite of the kernel part is planned in the future.</td> | <td>Supports all driver operations. However, the functional logic is not always the same as in Windows. Implementation is also still very different from Windows PNP. A complete rewrite of the kernel part is planned in the future.</td> | ||
</tr> | </tr> | ||
Line 129: | Line 130: | ||
<tr> | <tr> | ||
− | <td>OpenGL</td> | + | <td>[[OpenGL]]</td> |
<td>Uses software rendering by default, via Mesa3D ICD driver. API is almost complete, only few wgl* functions are missing. Can load various ICD drivers and works fine on WinXP too.</td> | <td>Uses software rendering by default, via Mesa3D ICD driver. API is almost complete, only few wgl* functions are missing. Can load various ICD drivers and works fine on WinXP too.</td> | ||
</tr> | </tr> | ||
<tr> | <tr> | ||
− | <td>DirectX</td> | + | <td>[[DirectX]]</td> |
<td>D3D9, D3D8 & DDraw APIs are supported via WineD3D - wrapper translating DirectX functions to OpenGL.</td> | <td>D3D9, D3D8 & DDraw APIs are supported via WineD3D - wrapper translating DirectX functions to OpenGL.</td> | ||
</tr> | </tr> | ||
<tr> | <tr> | ||
− | <td colspan="2" style="background: #eee; font-weight: bold; font-size: 120%">Sound</td> | + | <td colspan="2" style="background: #eee; font-weight: bold; font-size: 120%">[[Supported_Hardware/Sound_Cards|Sound]]</td> |
</tr> | </tr> | ||
Line 163: | Line 164: | ||
</table> | </table> | ||
+ | |||
+ | ==See Also== | ||
+ | [[Missing_ReactOS_Functionality|Missing ReactOS functionality]] | ||
+ | |||
+ | [[Ideas|Ideas]] | ||
+ | |||
+ | [[Supported_Hardware|Supported Hardware]] |
Revision as of 04:51, 2 March 2012
Warning: If you are not a developer and you want to edit the status of a component, then ask its current developer/maintainer first. Quote him on the Discussion page. This is mandatory to make sure the information is authoritative.
Current Component Status
Name | Current Status |
---|---|
General | |
Website localization | See RosCMS (permissions needed) or ask appropriate language maintainer. |
Operating system localization | Depends on language. Ask appropriate language maintainer. |
Software compatibility | See Compatibility Database |
Win32 Subsystem | |
Win32 DLLs | See Testman reports |
Win32k |
Support for User mode printer drivers: unimplemented. |
Core | |
Bootloader | In a rather good shape, needs further development in terms of adding more features and fixing existing. We switched to the NT-compatible booting method with r43273. Old bootmethod has been removed in r52491. |
Kernel | |
Memory manager (MM) | In a process of a soft rewrite, resulting in a functional equivalent of NT's (2003's) memory manager, without made up ROS-specific implementations and assumptions. |
Object manager (OB) | Nearly perfect. Functionally equivalent to 2003's OB. Tested code, works very good. Experienced only bugfixes during the last two years. |
Common Cache (CC) | Stays as it is for now, adapting to the changing memory manager. There exist three rewrites: No-Cc (a version of the kernel which does no caching at all, very slow); cache-manager-rewrite, started long time ago, but still occasionally maintained in a working condition; arty-cc by Art Yerkes, totally new Cc with a good, separated from Mm architecture, WIP. |
File system support | |
FAT32 | Needs a rewrite of a file system driver (fastfat), test it against windows 2003. Started in r38693 |
NTFS | Completely missing (not to count a very simple stubbed IFS driver). It would make sense to use NTFS 3g from Linux and develop an own driver, also should be developed against Windows 2003. |
Ext2 | Support in the kernel is missing for a good/known to work driver. |
Driver support | |
PNP manager | Supports all driver operations. However, the functional logic is not always the same as in Windows. Implementation is also still very different from Windows PNP. A complete rewrite of the kernel part is planned in the future. |
VXD | Not planned at all, it's a Win9x thing. |
2D/3D Graphics | |
GDI | Pretty good shape overall, missing Metafile support. Relies heavily on win32k. |
GDI+ | Completely shared with Wine, relies on GDI. |
OpenGL | Uses software rendering by default, via Mesa3D ICD driver. API is almost complete, only few wgl* functions are missing. Can load various ICD drivers and works fine on WinXP too. |
DirectX | D3D9, D3D8 & DDraw APIs are supported via WineD3D - wrapper translating DirectX functions to OpenGL. |
Sound | |
Portcls | Is a class driver for the audio driver subsystem. MIDI support is missing. HW testing needed for port driver implementation (IPortWavePci & IPortWaveRT). Portcls / sysaudio also need testing & bugfixing for WaveIn (audio recording). |
Sysaudio | Handles access to the audio port drivers by managing the device interfaces. Needs to map multiple audiostream to a virtual audio pin in kmixer. Portcls / sysaudio also need testing & bugfixing for WaveIn (audio recording). |
Wdmaud | Is a kernel mode component of wdmaud.drv . Implements the Wave / Mixer / MIDI API. Needs MIDI APIs implemented and WaveIn support + Mixer support. |
Kmixer | Performs mixing / conversions of streams. Currently very poorly implemented. Needs Kernel FPU float saving support before more work can be done. |