Difference between revisions of "Missing ReactOS Functionality"

From ReactOS Wiki
Jump to: navigation, search
m (Typos, Windows names)
(147 intermediate revisions by 30 users not shown)
Line 1: Line 1:
This page is supposed to contain a list of APIs, Functionality, COM Interfaces, drivers, application, extensions or other that Windows has but ReactOS doesn't. There are other similar pages in this wiki that might help, e.g. [[Version_Status]], [[CFI | Community Funded Ideas]] and [[Roadmap]]. This page is intended as a list of general tasks that need to be done in ReactOS. If a certain component already exists, consider filing a bug report.
+
This page contains a list of APIs, COM interfaces, drivers, application, extensions or other functionality that Windows has but ReactOS does not. There are other similar pages in this wiki that might help, e.g. [[Version Status]] and [[Roadmap]]. This page is intended as a list of general tasks that need to be done in ReactOS. If a certain component already exists, consider filing a bug report.
  
= General =
+
Statuses: <span style="color:orange">''planned''</span>, <span style="color:green">'''implementation started'''</span>, <span style="color:red"><s>implementation finished</s></span>.
  
* WMI http://msdn.microsoft.com/en-us/library/aa394582%28VS.85%29.aspx
+
== General ==
* Diskpart http://support.microsoft.com/kb/300415 (command line partitioning tool)
+
* Boot from non-primary/logical/secondary partition; Boot from [http://jira.reactos.org/browse/CORE-7378 some primary partitions]
* Use Event Tracing!!! http://www.microsoft.com/whdc/devtools/tools/EventTracing.mspx (turn debug channels into event channels??)
+
* [[ReactOS Update|Automatic Updates]]
 +
* <span style="color:green">'''[[ReactOS Search|Search]]'''</span>
 +
* <span style="color:green">'''[[Login System|User Login]]'''</span>
 +
* WMI [http://msdn.microsoft.com/en-us/library/aa394582%28VS.85%29.aspx]
 +
* <span style="color:green">'''Diskpart'''</span> [http://support.microsoft.com/kb/300415] (command line partitioning tool)
 +
* <span style="color:green">'''Disk Defragmenter'''</span> ([http://jira.reactos.org/browse/ROSAPPS-332 ROSAPPS-332]) [http://msdn.microsoft.com/en-us/library/aa363911%28VS.85%29.aspx]
 +
* Use Event Tracing [http://www.microsoft.com/whdc/devtools/tools/EventTracing.mspx] (turn debug channels into event channels??)
 
* Hibernation support
 
* Hibernation support
* LSASS
+
* LSASS [http://technet.microsoft.com/en-us/library/cc961760.aspx]
** Multi user support
+
* <span style="color:green">'''Multi user support'''</span>
*** Fast User Switching
+
* Multi session support
* LDAP/ActiveDirectory
+
* Fast User Switching
* TCP/IP Traffic Shaping/Scheduling
+
* LDAP/ActiveDirectory [http://msdn.microsoft.com/en-us/library/cc223122.aspx]
* Task Scheduler
+
* <span style="color:green">'''Task Scheduler'''</span>
* [[Printing]]
+
* <span style="color:green">'''[[Printing]]'''</span>
 +
* <span style="color:green">'''HTML Applications'''</span> [http://msdn.microsoft.com/en-us/library/ms536496(VS.85).aspx] – HTML files with a .hta extension that run as Windows Applications using the MSHTML (IE) Engine – see {{JIRA|12813}}
 +
* Animated Mouse Cursors ({{JIRA|14166}})
 +
* Security Support Provider Interface (and the MS provided default packages) [http://msdn.microsoft.com/en-us/library/aa380493%28v=vs.85%29.aspx]
 +
* <span style="color:green">'''[[File Systems#NTFS|NTFS]]'''</span>
 +
* WOWEXEC to run older Windows applications, based on 16 bit code. (A partial implementation of NTVDM exists.  ''Aside:'' There are no "free" compilers for 16bit Windows NE style code as of 2018).
  
= Win32 features =
+
== Win32 features ==
 +
* [[ReactOS Terminal Services|Terminal Server]]
 +
** Wtsapi32.dll/ Mstlsapi.dll [http://msdn.microsoft.com/en-us/library/aa383468(VS.85).aspx]
 +
* <span style="color:green">'''shdocvw'''</span> [http://www.geoffchappell.com/viewer.htm?doc=studies/windows/ie/shdocvw/index.htm&tx=17]
 +
* <span style="color:green">'''browseui'''</span> [http://www.geoffchappell.com/viewer.htm?doc=studies/windows/ie/browseui/history/index.htm]
 +
 
 +
=== Introduced in Windows NT ===
 +
* NT-based <span style="color:green">'''CHKDSK'''</span> [http://technet.microsoft.com/en-us/library/bb491051.aspx]
 +
* <span style="color:green">'''Dr. Watson'''</span> [[User:Petr-akhlamov/Crash Reports|'''[i]''']]
 +
 
 +
=== Introduced in Windows 98 ===
 +
* System File Checker [http://support.microsoft.com/?scid=kb%3Ben-us%3B310747&x=13&y=11] (nice, but not absolutely needed)
  
* [[ReactOS Terminal Services|Terminal Server]]
+
=== Introduced in Windows ME ===
** Wtsapi32.dll/ Mstlsapi.dll http://msdn.microsoft.com/en-us/library/aa383468(VS.85).aspx
+
*System Restore [https://web.archive.org/web/20100304235609/http://msdn.microsoft.com/en-us/library/ms811705.aspx]
* shdocvw http://www.geoffchappell.com/viewer.htm?doc=studies/windows/ie/shdocvw/index.htm&tx=17
 
* browseui http://www.geoffchappell.com/viewer.htm?doc=studies/windows/ie/browseui/history/index.htm
 
* Layered windows http://msdn.microsoft.com/en-us/library/ms997507.aspx - see {{Bug|1691}}
 
* ClearType
 
  
== Introduced in Windows XP ==
+
=== Introduced in Windows 2000 ===
 +
* Windows File Protection [http://support.microsoft.com/kb/222193/en-us]
 +
* <span style="color:green">'''Layered windows'''</span> [http://reactos.org/node/870 '''[i]'''] [http://msdn.microsoft.com/en-us/library/ms997507.aspx] – see {{Bug|1576|jira}}
 +
* Data Protection API (required for IE 7+) [http://msdn.microsoft.com/en-us/library/ms995355.aspx]
 +
* WebDAV [[wikipedia:WebDAV]]
  
* Side by Side Assemblies http://msdn.microsoft.com/en-us/library/aa376307(VS.85).aspx
+
=== Introduced in Windows XP ===
 
* Image Mastering API (needed for many cd writing applications)
 
* Image Mastering API (needed for many cd writing applications)
* Data Protection API (only stub needed) (required for IE 7+)
+
* <span style="color:green">'''Window ghosting'''</span>(A window manager feature that lets the user minimize, move, or close the main window of an application that is not responding) – see {{JIRA|11944}}
* Window ghosting (A window manager feature that lets the user minimize, move, or close the main window of an application that is not responding)
+
* <span style="color:green">'''Error Reporting'''</span> [http://msdn.microsoft.com/en-us/library/bb513636(VS.85).aspx] (Would be tremendously helpful to development) ({{JIRA|8269}})
* Visual Styles http://msdn.microsoft.com/en-us/library/bb773187(VS.85).aspx
+
* <span style="color:green">'''[[MUI]] Support'''</span> [http://msdn.microsoft.com/en-us/goglobal/dd218459.aspx] (An alternative is worked on by Stefan Fulea- see {{JIRA|10335}})
 +
* <span style="color:green">'''Application Compatibility'''</span> [http://technet.microsoft.com/ru-ru/library/cc736503(WS.10).aspx] [[User:Petr-akhlamov/Compatibility_mode|'''[i]''']]
 +
* Prefetching [http://www.microsoft.com/whdc/archive/XP_kernel.mspx#E3KAC]
 +
* Background Intelligent Transfer Service (BITS) [http://msdn.microsoft.com/en-us/library/bb968799.aspx] (optional, stuff that would be nice to have)
 +
* VirtualWiFi architecture [https://www.microsoft.com/en-us/research/project/virtualwifi/]
  
== Introduced in Windows Vista ==
+
=== Introduced in Windows XP x64, Windows Server 2003 ===
 +
* Data Execution Prevention (DEP) [http://msdn.microsoft.com/en-us/library/aa366553(VS.85).aspx]
 +
* Kernel Patch Protection (KPP) [http://www.microsoft.com/whdc/driver/kernel/64bitpatch_FAQ.mspx]
  
* User Interface Privilege Isolation (UIPI) see: ChangeWindowMessageFilter  
+
=== Introduced in Windows Vista ===
* Condition Variables http://msdn.microsoft.com/en-us/library/ms682052(VS.85).aspx
+
* User Interface Privilege Isolation (UIPI) see: ChangeWindowMessageFilter
* One Time Initialization http://msdn.microsoft.com/en-us/library/aa363808(VS.85).aspx
+
* User Account Control (UAC) [http://technet.microsoft.com/en-us/library/cc709628(WS.10).aspx]
* ThreadPool API http://msdn.microsoft.com/en-us/library/ms686766(VS.85).aspx
+
* Address Space Layout Randomization (ASLR) [http://blogs.msdn.com/b/michael_howard/archive/2006/05/26/address-space-layout-randomization-in-windows-vista.aspx]
* Windows Error Reporting http://msdn.microsoft.com/en-us/library/bb513636(VS.85).aspx
+
* <span style="color:red"><s>Condition Variables</s></span> (<s>{{JIRA|7546}}</s>) [http://msdn.microsoft.com/en-us/library/ms682052(VS.85).aspx]
* Wait Chain Transversal http://msdn.microsoft.com/en-us/library/ms681623(VS.85).aspx
+
* One Time Initialization [http://msdn.microsoft.com/en-us/library/aa363808(VS.85).aspx]
* Kernel Transaction Manager http://msdn.microsoft.com/en-us/library/aa366288(VS.85).aspx
+
* ThreadPool API [http://msdn.microsoft.com/en-us/library/ms686766(VS.85).aspx]
* Desktop Window Manager http://msdn.microsoft.com/en-us/library/aa969540(VS.85).aspx
+
* Wait Chain Traversal [http://msdn.microsoft.com/en-us/library/ms681623(VS.85).aspx]
* MUI Support http://msdn.microsoft.com/en-us/library/dd317706%28VS.85%29.aspx
+
* Kernel Transaction Manager [http://msdn.microsoft.com/en-us/library/aa366288(VS.85).aspx]
 +
* Desktop Window Manager [http://msdn.microsoft.com/en-us/library/aa969540(VS.85).aspx]
 +
* Windows Search  [http://msdn.microsoft.com/en-us/library/aa965362(VS.85).aspx]
 +
* Windows Diagnostics Infrastructure (WDI) [http://www.geoffchappell.com/viewer.htm?doc=notes/windows/wdi/index.htm]
 +
* Windows Display Driver Model  [http://msdn.microsoft.com/en-us/library/aa480220.aspx]
  
== Introduced in Windows 7 ==
+
=== Introduced in Windows 7 ===
 +
* <span style="color:orange">''New API Functions''</span> [[User:Petr-akhlamov/Compatibility_mode#NT_6.0_API_support|'''[i]''']] [http://msdn.microsoft.com/en-us/library/dd433624%28VS.85%29.aspx]
 +
* Jump Lists [http://windows.microsoft.com/en-us/windows7/products/features/jump-lists]
 +
* Pin to Taskbar [http://windows.microsoft.com/en-us/windows7/Pin-a-program-to-the-taskbar]
 +
* <span style="color:red"><s>Window Snapping</s></span> [http://windows.microsoft.com/en-us/windows7/products/features/snap]
 +
* Wallpaper Rotation [http://windows.microsoft.com/en-us/windows7/create-a-desktop-background-slide-show]
 +
* Multi-touch Support [http://msdn.microsoft.com/en-us/magazine/ee336016.aspx] (optional)
 +
* exFAT (Extended File Allocation Table) [http://msdn2.microsoft.com/en-us/library/aa914353.aspx]
 +
* DPI settings are per-user [http://msdn.microsoft.com/en-us/library/dd371771(VS.85).aspx]
 +
* Wireless Hosted Network [https://msdn.microsoft.com/en-us/library/windows/desktop/dd815243(v=vs.85).aspx]
  
= Drivers =
+
=== Introduced in Windows 8 ===
 +
* Supervisor Mode Execution Prevention [http://blog.ptsecurity.com/2012/09/intel-smep-overview-and-partial-bypass.html]
 +
* <span style="color:red"><s>Windows To Go</s></span> [http://en.wikipedia.org/wiki/Windows_To_Go] (ReactOS has LiveCDs instead)
  
* Re-enable ACPI and update ACPICA core (http://www.acpica.org/) - see {{Bug|3363}} and {{Bug|4775}}
+
=== Introduced in Windows 10 ===
 +
* APPX packaging for desktop apps
 +
 
 +
== Multiprocessing ==
 +
Multiple processors are not supported at this time. Even if the PC has multiple processors or multiple cores, ReactOS will use only one core.
 +
 
 +
However, ReactOS can perform [https://www.webopedia.com/TERM/M/multiprocessing.html multiprocessing] to allow many processes (programs) to run concurrently.
 +
 
 +
== Drivers ==
 
* Bugfix/implement VBE 1.02/2.00/3.00+  support (special cases for buggy cards might be necessary)
 
* Bugfix/implement VBE 1.02/2.00/3.00+  support (special cases for buggy cards might be necessary)
 +
** http://www.virtualbox.de/browser/trunk/src/VBox/Additions/WINNT/Graphics
 +
** http://navozhdeniye.narod.ru/vbemp.htm
 
** http://www.talula.demon.co.uk/freebe/
 
** http://www.talula.demon.co.uk/freebe/
** http://www.geocities.com/bearwindows/vbemp.htm
 
 
** http://et6000.narod.ru/
 
** http://et6000.narod.ru/
* USB class drivers
+
* <span style="color:green">'''[[USB]] 3.0'''</span> specs [http://www.usb.org/developers/docs/usb_30_spec_032310.zip]
* HID class drivers
+
* <span style="color:green">'''[[USB]] 3.1'''</span> specs
* UDF (ISO/IEC 13346) driver (DVD)
+
* <span style="color:red"><s>UDF (ISO/IEC 13346) driver. (DVD)</s></span> We have it since 2017 [http://www.osta.org/specs/pdf/udf260.pdf]
 
* Partition Manager
 
* Partition Manager
 
* Volume Manager
 
* Volume Manager
* PCMCIA
+
* PCMCIA/Express Bus driver
* TDI
 
 
* WMIlib
 
* WMIlib
* Windows Driver Framework
+
* Windows Driver Framework [http://www.microsoft.com/whdc/driver/wdf/default.mspx]
* Usermode Driver Framework
+
* Usermode Driver Framework [http://www.microsoft.com/whdc/driver/wdf/UMDF.mspx]
  
= Display =
+
== Display ==
 +
* Support/bugfix EDID compliance [[wikipedia:Extended display identification data]]
 +
* Multimonitor support
 +
* Screen Rotation
 +
* [[Missing ReactOS Functionality#Introduced in Windows Vista| WDDM]]
  
* Support/bugfix EDID compliance http://en.wikipedia.org/wiki/Extended_display_identification_data
+
== Networking ==
* Videomode change support
+
* Internet Protocol Version 6 [http://technet.microsoft.com/en-us/network/bb530961.aspx]
* Multimonitor support
+
* DHCP Server
 +
* SMB Filesystem Server/Client [http://wiki.samba-tng.org/doku.php]
 +
** [[File Systems#SMBFS|SMBFS]]
 +
** [[Samba]]
 +
* <span style="color:green">'''NFS'''</span> Server/<span style="color:green">'''Client'''</span> [http://tools.ietf.org/html/rfc5661]
 +
* Tunnel (P-t-P) Network Communication
 +
** PPPoE Client ({{JIRA|10791}})
 +
** PPTP Client
 +
** L2TP Client
  
= Networking =
+
== Low Priority Framework implementations ==
 +
* MFC and Visual C support runtimes...
 +
* Visual Basic Runtime
 +
* .NET alternative such as Mono
 +
* Windows Runtime
  
* Internet Protocol Version 6 http://technet.microsoft.com/en-us/network/bb530961.aspx
+
[[Category:Ideas]]
* DHCP Server
 
* SMB Filesystem Client
 
* NFS Server/Client
 

Revision as of 19:41, 5 October 2019

This page contains a list of APIs, COM interfaces, drivers, application, extensions or other functionality that Windows has but ReactOS does not. There are other similar pages in this wiki that might help, e.g. Version Status and Roadmap. This page is intended as a list of general tasks that need to be done in ReactOS. If a certain component already exists, consider filing a bug report.

Statuses: planned, implementation started, implementation finished.

General

  • Boot from non-primary/logical/secondary partition; Boot from some primary partitions
  • Automatic Updates
  • Search
  • User Login
  • WMI [1]
  • Diskpart [2] (command line partitioning tool)
  • Disk Defragmenter (ROSAPPS-332) [3]
  • Use Event Tracing [4] (turn debug channels into event channels??)
  • Hibernation support
  • LSASS [5]
  • Multi user support
  • Multi session support
  • Fast User Switching
  • LDAP/ActiveDirectory [6]
  • Task Scheduler
  • Printing
  • HTML Applications [7] – HTML files with a .hta extension that run as Windows Applications using the MSHTML (IE) Engine – see CORE-12813
  • Animated Mouse Cursors (CORE-14166)
  • Security Support Provider Interface (and the MS provided default packages) [8]
  • NTFS
  • WOWEXEC to run older Windows applications, based on 16 bit code. (A partial implementation of NTVDM exists. Aside: There are no "free" compilers for 16bit Windows NE style code as of 2018).

Win32 features

Introduced in Windows NT

  • NT-based CHKDSK [12]
  • Dr. Watson [i]

Introduced in Windows 98

  • System File Checker [13] (nice, but not absolutely needed)

Introduced in Windows ME

Introduced in Windows 2000

Introduced in Windows XP

  • Image Mastering API (needed for many cd writing applications)
  • Window ghosting(A window manager feature that lets the user minimize, move, or close the main window of an application that is not responding) – see CORE-11944
  • Error Reporting [18] (Would be tremendously helpful to development) (CORE-8269)
  • MUI Support [19] (An alternative is worked on by Stefan Fulea- see CORE-10335)
  • Application Compatibility [20] [i]
  • Prefetching [21]
  • Background Intelligent Transfer Service (BITS) [22] (optional, stuff that would be nice to have)
  • VirtualWiFi architecture [23]

Introduced in Windows XP x64, Windows Server 2003

  • Data Execution Prevention (DEP) [24]
  • Kernel Patch Protection (KPP) [25]

Introduced in Windows Vista

  • User Interface Privilege Isolation (UIPI) see: ChangeWindowMessageFilter
  • User Account Control (UAC) [26]
  • Address Space Layout Randomization (ASLR) [27]
  • Condition Variables (CORE-7546) [28]
  • One Time Initialization [29]
  • ThreadPool API [30]
  • Wait Chain Traversal [31]
  • Kernel Transaction Manager [32]
  • Desktop Window Manager [33]
  • Windows Search [34]
  • Windows Diagnostics Infrastructure (WDI) [35]
  • Windows Display Driver Model [36]

Introduced in Windows 7

  • New API Functions [i] [37]
  • Jump Lists [38]
  • Pin to Taskbar [39]
  • Window Snapping [40]
  • Wallpaper Rotation [41]
  • Multi-touch Support [42] (optional)
  • exFAT (Extended File Allocation Table) [43]
  • DPI settings are per-user [44]
  • Wireless Hosted Network [45]

Introduced in Windows 8

  • Supervisor Mode Execution Prevention [46]
  • Windows To Go [47] (ReactOS has LiveCDs instead)

Introduced in Windows 10

  • APPX packaging for desktop apps

Multiprocessing

Multiple processors are not supported at this time. Even if the PC has multiple processors or multiple cores, ReactOS will use only one core.

However, ReactOS can perform multiprocessing to allow many processes (programs) to run concurrently.

Drivers

Display

Networking

  • Internet Protocol Version 6 [52]
  • DHCP Server
  • SMB Filesystem Server/Client [53]
  • NFS Server/Client [54]
  • Tunnel (P-t-P) Network Communication

Low Priority Framework implementations

  • MFC and Visual C support runtimes...
  • Visual Basic Runtime
  • .NET alternative such as Mono
  • Windows Runtime