Technical features new to Windows Vista: Difference between revisions

Content deleted Content added
 
(14 intermediate revisions by 13 users not shown)
Line 1:
{{Short description|none}}
{{Windows Vista}}
[[Windows Vista]] (formerly codenamed Windows "Longhorn") has many significant new features compared with previous [[Microsoft Windows]] versions, covering most aspects of the operating system.
Line 8 ⟶ 9:
For graphics, Windows Vista introduces a new as well as major revisions to [[Direct3D]]. The [[Windows Display Driver Model|new display driver model]] facilitates the new [[Desktop Window Manager]], which provides the [[page tearing|tearing]]-free desktop and special effects that are the cornerstones of the [[Windows Aero]] [[graphical user interface]]. The new display driver model is also able to offload rudimentary tasks to the [[GPU]], allow users to install drivers without requiring a system reboot, and seamlessly recover from rare driver errors due to illegal application behavior.
 
At the core of the operating system, many improvements have been made to the memory manager, process scheduler, heap manager, and [[I/O scheduling|I/O scheduler]]. A [[Kernel Transaction Manager]] has been implemented that can be used by data persistence services to enable [[atomic transaction]]s. The service is being used to give applications the ability to work with the file system and registry using atomic transaction operations.
 
==Audio==
 
Windows Vista features a completely re-written audio stack designed to provide low-latency 32-bit floating point audio, higher-quality digital signal processing, bit-for-bit sample level accuracy, up to 144&nbsp;dB of dynamic range and new audio [[Application Program Interface|APIs]] created by a team including Steve Ball and Larry Osterman.<ref name="c9audio1">{{cite web
| url=http://channel9.msdn.com/ShowPost.aspx?PostID=123430
| title=Steve Ball - Learning about Audio in Windows Vista
Line 76 ⟶ 77:
 
===Other audio enhancements===
* A new set of user interface sounds have been introduced, including a new startup sound created with the help of [[King Crimson]]'s [[Robert Fripp]].<ref name="Channel9Fripp">{{cite web |url=http://channel9.msdn.com/Blogs/scobleizer/Robert-Fripp-Behind-the-scenes-at-Windows-Vista-recording-session |title=Robert Fripp - Behind the scenes at Windows Vista recording session |last=Scoble |first=Robert |author-link=Robert Scoble |date=January 4, 2006 |publisher=[[Microsoft]] |work=[[Channel 9 (Microsoft)|Channel 9]] |access-date=April 25, 2015 |archive-date=March 12, 2011 |archive-url=https://web.archive.org/web/20110312122309/http://channel9.msdn.com/Blogs/scobleizer/Robert-Fripp-Behind-the-scenes-at-Windows-Vista-recording-session |url-status=live }}</ref> The new sounds are intended to complement the [[Windows Aero]] [[graphical user interface]], with the new startup sound consisting of two parallel melodies that are played in an intentional "Win-dows Vis-ta" rhythm. According to [[Jim Allchin]], the new sounds are intended to be gentler and softer than the sounds used in previous versions of Windows.<ref name="WindowsVistaSounds">{{cite web |url=http://windowsvistablog.com/blogs/windowsvista/archive/2006/11/09/the-sounds-of-windows-vista.aspx |title=The Sounds of Windows Vista |last=Allchin |first=Jim |author-link=Jim Allchin |date=November 9, 2006 |archive-url=https://web.archive.org/web/20061110152317/http://windowsvistablog.com/blogs/windowsvista/archive/2006/11/09/the-sounds-of-windows-vista.aspx |archive-date=November 10, 2006 |publisher=[[Microsoft]] |work=Windows Vista Team Blog |access-date=April 25, 2015}}</ref> Microsoft engineer and musician Steve Ball created the user interface sounds,<ref name="VistaSoundsQ&A">{{Cite web |last=Flores |first=Chris |date=June 13, 2008 |title=Windows Vista Sounds Q&A |url=http://windowsteamblog.com/blogs/windowsvista/archive/2008/06/13/windows-vista-sounds-q-a.aspx |archive-url=https://web.archive.org/web/20090509105254/http://windowsteamblog.com/blogs/windowsvista/archive/2008/06/13/windows-vista-sounds-q-a.aspx |archive-date=May 9, 2009 |website=The Windows Blog}}</ref> while the startup sound is a collaboration between three people: [[King Crimson]]'s [[Robert Fripp]] composing the melody and soundscape, [[Tucker Martine]] creating the rhythm, and Ball handling the harmonization and orchestration.<ref name="Channel9Fripp">{{cite web |url=http://channel9.msdn.com/Blogs/scobleizer/Robert-Fripp-Behind-the-scenes-at-Windows-Vista-recording-session |title=Robert Fripp - Behind the scenes at Windows Vista recording session |last=Scoble |first=Robert |author-link=Robert Scoble |date=January 4, 2006 |publisher=[[Microsoft]] |work=[[Channel 9 (Microsoft)|Channel 9]] |access-date=April 25, 2015 |archive-date=March 12, 2011 |archive-url=https://web.archive.org/web/20110312122309/http://channel9.msdn.com/Blogs/scobleizer/Robert-Fripp-Behind-the-scenes-at-Windows-Vista-recording-session |url-status=live }}</ref> Ball also used Fripp and Martine's materials to create the new [[Windows Media Center]] startup sound.<ref name="VistaSoundsQ&A"/>
* The new Volume Mixer displays a percentage value showing the current system volume while the volume level is being changed. Previous versions of Windows only displayed a volume meter.
* Windows Vista also allows controlling system-wide volume or volume of individual audio devices and individual applications separately.<ref name="AudioImprovements"/><ref name="Softpedia">{{cite web |url=http://archive.news.softpedia.com/news/The-Windows-Vista-Volume-Mixer-41882.shtml |title=The Windows Vista Volume Mixer |last=Oiaga |first=Marius |date=December 7, 2006 |publisher=[[Softpedia]] |access-date=April 25, 2015 |archive-url=https://web.archive.org/web/20150214074429/http://archive.news.softpedia.com/news/The-Windows-Vista-Volume-Mixer-41882.shtml |archive-date=February 14, 2015 |url-status=dead |df=mdy-all }}</ref> This feature can be used from the new ''Volume Control'' windows or programmatically using the overhauled audio API. Different sounds can be redirected to different audio devices as well.
* Windows Vista includes integrated [[microphone array]] support which is intended to increase the accuracy of the [[Technical features new to Windows Vista#Speech recognition|speech recognition]] feature and allow a user to connect multiple microphones to a system so that the inputs can be combined into a single, higher-quality source.<ref name="AudioImprovements"/><ref name="AudioInnovationsWP">{{cite web |url=http://blogs.technet.com/b/windowsvista/archive/2006/08/24/450038.aspx |title=Audio Innovations in Windows Vista |date=August 24, 2006 |publisher=[[Microsoft]] |work=[[Microsoft TechNet|TechNet]] |access-date=April 25, 2015 |archive-date=January 9, 2015 |archive-url=https://web.archive.org/web/20150109105946/http://blogs.technet.com/b/windowsvista/archive/2006/08/24/450038.aspx |url-status=live }}</ref><ref name="MicrophoneArray">{{cite web |url=http://download.microsoft.com/download/9/c/5/9c5b2167-8017-4bae-9fde-d599bac8184a/MicArrays.doc |title=Microphone Array Support in Windows |date=April 21, 2014 |author=[[Microsoft]] |format=DOC |access-date=April 25, 2015 |archive-date=March 4, 2016 |archive-url=https://web.archive.org/web/20160304132915/http://download.microsoft.com/download/9/c/5/9c5b2167-8017-4bae-9fde-d599bac8184a/MicArrays.doc |url-status=live }}</ref>
Microsoft has also included a new high quality voice capture [[DirectX]] Media Object (DMO) as part of [[DirectShow]] that allows voice capture applications such as [[instant messaging|instant messengers]] and speech recognition applications to apply [[Echo cancellation#Acoustic echo cancellation|Acoustic Echo Cancellation]] and microphone array processing to speech signals.<ref name="AcousticEcho">{{cite web |url=https://technet.microsoft.com/en-us/library/cc753619.aspx |title=Eliminating Acoustic Echo |publisher=[[Microsoft]] |work=[[Microsoft TechNet|TechNet]] |date=17 November 2009 |access-date=April 25, 2015 |archive-date=March 4, 2016 |archive-url=https://web.archive.org/web/20160304194500/https://technet.microsoft.com/en-us/library/cc753619.aspx |url-status=live }}</ref>
 
===Speech recognition===
Line 86 ⟶ 88:
Windows Vista is the first Windows operating system to include fully integrated support for [[speech recognition]]. Under Windows 2000 and XP, Speech Recognition was installed with Office 2003, or was included in Windows XP Tablet PC Edition.
 
Windows Speech Recognition allows users to control their machine through voice commands, and enables dictation into many applications. The application has a fairly high recognition accuracy and provides a set of commands that assists in dictation.{{Citation needed|date=February 2007}} A brief speech-driven tutorial is included to help familiarize a user with speech recognition commands. Training could also be completed to improve the accuracy of speech recognition.
 
Windows Vista includes speech recognition for 8 languages at release time: English (U.S. and British), Spanish, German, French, Japanese and Chinese (traditional and simplified). Support for additional languages is planned for post-release.
Line 110 ⟶ 112:
===XPS print path===
{{see also|XML Paper Specification}}
The XPS Print Path introduced in Windows Vista supports high quality 16-bit color printing.<ref>{{Cite web |url=http://blogs.msdn.com/b/adrianford/archive/2008/10/22/16-bits-and-more-printing-on-windows.aspx |title=16 bits and more printing on Windows |access-date=2010-06-22 |archive-date=2012-01-15 |archive-url=https://web.archive.org/web/20120115155328/http://blogs.msdn.com/b/adrianford/archive/2008/10/22/16-bits-and-more-printing-on-windows.aspx |url-status=live }}</ref> The XPS print path uses [[XML Paper Specification]] (XPS) as the [[spooling|print spooler]] file format, that serves as the [[page description language]] (PDL) for printers. The XPS spooler format is the intended replacement for the [[Windows Metafile|Enhanced Metafile]] (EMF) format which is the [[print spooler]] format in the [[Graphics Device Interface]] (GDI) print path.<ref>{{Cite web |url=http://download.microsoft.com/download/9/c/5/9c5b2167-8017-4bae-9fde-d599bac8184a/Vista_print.docx |title=XPS and Color Printing Enhancements in Microsoft Windows Vista |access-date=2008-05-09 |archive-date=2008-12-29 |archive-url=https://web.archive.org/web/20081229061340/http://download.microsoft.com/download/9/c/5/9c5b2167-8017-4bae-9fde-d599bac8184a/Vista_print.docx |url-status=live }}</ref> XPS is an [[XML]]-based (more specifically [[XAML]]-based) [[Color management|color-managed]] [[Device Independence|device]] and [[Resolution independence|resolution independent]] [[Vector graphics|vector-based]] paged document format which encapsulates an exact representation of the actual printed output. XPS documents are packed in a [[ZIP (file format)|ZIP]] container along with text, fonts, raster images, 2D [[vector graphics]] and [[Digital rights management|DRM]] information. For printers supporting XPS, this eliminates an intermediate conversion to a printer-specific language, increasing the reliability and fidelity of the printed output. Microsoft claims that major printer vendors are planning to release printers with built-in XPS support and that this will provide better fidelity to the original document.<ref name="c9xps">{{cite web
| url=http://channel9.msdn.com/Showpost.aspx?postid=137532
| title=Inside Windows Vista Printing
Line 129 ⟶ 131:
The XPS print path can automatically calibrate [[color profile]] settings with those being used by the display subsystem. Conversely, XPS print drivers can express the configurable capabilities of the printer, by virtue of the ''XPS PrintCapabilities'' [[Class (computer science)|class]], to enable more fine-grained control of print settings, tuned to the individual printing device.
 
Applications which use the [[Windows Presentation Foundation]] for the display elements can directly print to the XPS print path without the need for image or colorspace conversion. The XPS format used in the spool file, represents advanced graphics effects such as 3D images, glow effects, and gradients as Windows Presentation Foundation primitives, which are processed by the printer drivers without [[rasterisation|rasterization]], preventing rendering artifacts and reducing computational load. When the legacy [[Graphics Device Interface#GDI printers|GDI Print Path]] is used, the XPS spool file is used for processing before it is converted to a GDI image to minimize the processing done at raster level.
 
===Print schemas===
Line 148 ⟶ 150:
| archive-url=https://web.archive.org/web/20060830131226/http://www.microsoft.com/technet/itsolutions/network/evaluate/new_network.mspx
| url-status=live
}}</ref> It includes a native implementation of [[IPv6]], as well as complete overhaul of [[IPv4]]. IPv6 is now supported by all networking components, services, and the user interface. In IPv6 mode, Windows Vista can use the Link Local Multicast Name Resolution ([[LLMNR]]) protocol to resolve names of local hosts on a network which does not have a [[DNS server]] running. The new TCP/IP stack uses a new method to store configuration settings that enables more dynamic control and does not require a computer restart after settings are changed. The new stack is also based on a strong [[Host model (networking)|host model]] and features an infrastructure to enable more modular components that can be dynamically inserted and removed.
 
The user interface for configuring, troubleshooting and working with network connections has changed significantly from prior versions of Windows as well. Users can make use of the new "Network Center" to see the status of their network connections, and to access every aspect of configuration. The network can be browsed using ''Network Explorer'', which replaces [[Windows XP|Windows XP's]] "[[My Network Places]]". Network Explorer items can be a shared device such as a scanner, or a file share. ''Network Location Awareness'' uniquely identifies each network and exposes the network's attributes and connectivity type. Windows Vista graphically presents how different devices are connected over a network in the ''Network Map'' view, using the [[Link Layer Topology Discovery|LLTD]] protocol. In addition, the ''Network Map'' uses LLTD to determine connectivity information and media type (wired or wireless). Any device can implement LLTD to appear on the ''Network Map'' with an icon representing the device, allowing users one-click access to the device's user interface. When LLTD is invoked, it provides metadata about the device that contains static or state information, such as the [[MAC address]], IPv4/IPv6 address, [[signal strength]] etc.
 
Support for [[Wireless LAN|wireless networks]] is built into the network stack itself, and does not emulate wired connections, as was the case with previous versions of Windows. This allows implementation of wireless-specific features such as larger frame sizes and optimized error recovery procedures. Windows Vista uses various techniques like [[RWIN|Receive Window]] Auto-scaling, [[Explicit Congestion Notification]], TCP Chimney offload and Compound TCP to improve networking performance. [[Quality of service]] (QoS) policies can be used to prioritize network traffic, with [[traffic shaping]] available to all applications, even those that do not explicitly use QoS APIs. Windows Vista includes in-built support for peer-to-peer networks and [[Server Message Block|SMB]] 2.0. For improved network security, Windows Vista supports for 256-bit and 384-bit [[Diffie-Hellman]] (DH) algorithms, as well as for 128-bit, 192-bit and 256-bit [[Advanced Encryption Standard]] (AES) is included in the [[network stack]] itself, while integrating [[IPsec]] with [[Windows Firewall]].
 
==Kernel and core OS changes==
* The new [[Kernel Transaction Manager]] enables [[Atomicity (database systems)|atomic transaction]] operations across different types of objects, most significantly file system and registry operations.<ref>{{cite web
| url=http://msdn.microsoft.com/en-us/library/aa365993.aspx
| title=About Kernel Transaction Manager
Line 166 ⟶ 168:
}}</ref>
 
* The memory manager and processes scheduler have been improved. The scheduler was modified to use the cycle counter register of modern processors to keep track of exactly how many [[Central Processing Unit|CPU]] cycles a thread has executed, rather than just using an interval-timer interrupt routine, resulting in more deterministic application behaviour.<ref>[https://technet.microsoft.com/en-us/magazine/cc162494.aspx Inside the Windows Vista Kernel: Part 1] {{Webarchive|url=https://web.archive.org/web/20090521102641/http://technet.microsoft.com/en-us/magazine/cc162494.aspx |date=2009-05-21 }}, Microsoft Technet</ref><ref>{{Cite web |url=https://technet.microsoft.com/en-us/magazine/cc162494.aspx |title=Inside the Windows Vista Kernel: Part I |access-date=2017-08-26 |archive-date=2009-05-21 |archive-url=https://web.archive.org/web/20090521102641/http://technet.microsoft.com/en-us/magazine/cc162494.aspx |url-status=live }}</ref> Many kernel data structures and algorithms have been rewritten. Lookup algorithms{{specify|date=December 2012}} now run in [[constant time]], instead of [[linear time]] as with previous versions.
* Windows Vista includes support for [[condition variable]]s and [[reader-writer lock]]s.
* Process creation overhead is reduced by significant improvements to DLL address-resolving schemes.
Line 173 ⟶ 175:
* ''Threaded DPC'' [https://web.archive.org/web/20090424065603/http://msdn.microsoft.com/en-us/library/ms795178.aspx], conversely to an ordinary DPC (Deferred Procedure Call), decreases the system latency improving the performance of time-sensitive applications, such as audio or video playback.
* Data Redirection: Also known as ''data virtualization'', this virtualizes the [[Windows Registry|registry]] and certain parts of the file system for applications running in the [[Principle of least privilege|protected user context]] if [[User Account Control]] is turned on, enabling legacy applications to run in non-administrator accounts. It automatically creates private copies of files that an application can use when it does not have permission to access the original files. This facilitates stronger file security and helps applications not written with the [[least user access]] principle in mind to run under stronger restrictions. ''Registry virtualization'' isolates write operations that have a global impact to a per-user ___location. Reads and writes in the {{mono|HKLM\Software}} section of the [[Windows Registry|Registry]] by user-mode applications while running as a standard user, as well as to folders such as "Program Files", are "redirected" to the user's profile. The process of reading and writing on the profile data and not on the application-intended ___location is completely transparent to the application.
* Windows Vista supports the [[PCI Express]] 1.1 specification, including PCI Express NativeHot ControlPlug and [[Active State Power Management|ASPM]]. PCI Express registers, including capability registers, are supported, along with save and restore of configuration data.<ref>{{Cite web|title=Active State Power Management in Windows Vista|url=https://studylib.net/doc/7453014/active-state-power-management-in-windows-vista|access-date=2021-03-19|website=studylib.net|language=en|archive-date=2021-04-02|archive-url=https://web.archive.org/web/20210402174332/https://studylib.net/doc/7453014/active-state-power-management-in-windows-vista|url-status=live}}</ref> If [[BIOS]] indicates it supports PCI Express Native Control, Windows Vista will try to control features like [[Active State Power Management|ASPM]]; otherwise such PCI Express features may be controlled by BIOS.
* Native support and generic driver for [[Advanced Host Controller Interface]] (AHCI) specification for [[Serial ATA]] drives, SATA [[Native Command Queuing]], [[Hot swapping|Hot plugging]], and [[Aggressive Link Power Management|AHCI Link Power Management]].
* Full support for the [[Advanced Configuration and Power Interface|ACPI]] 2.0 specification, and parts of ACPI 3.0.<ref name="kernelfeatures">[http://download.microsoft.com/download/9/c/5/9c5b2167-8017-4bae-9fde-d599bac8184a/kernel-en.doc Windows NT 6.x Kernel Changes] {{Webarchive|url=https://web.archive.org/web/20070303223841/http://download.microsoft.com/download/9/c/5/9c5b2167-8017-4bae-9fde-d599bac8184a/kernel-en.doc |date=2007-03-03 }}. (Word document)</ref> Support for throttling power usage of individual devices has been improved.
* [[Windows Vista SP1]] supports [[Windows Hardware Error Architecture]] (WHEA).
* Kernel-mode [[Plug-And-Play]] enhancements include support for PCI multilevel rebalance, partial arbitration of resources to support PCI subtractive bridges, asynchronous device start and enumeration operations to speed system startup, support for setting and retrieving custom properties on a device, an enhanced ejection API to allow the caller to determine if and when a device has been successfully ejected, and diagnostic tracing to facilitate improved reliability.<ref>{{Cite web |url=http://www.microsoft.com/whdc/system/pnppwr/pnp/default.mspx |title=Plug and Play: Architecture and Driver Support |website=[[Microsoft]] |access-date=2007-05-26 |archive-url=https://web.archive.org/web/20040616023120/http://www.microsoft.com/whdc/system/pnppwr/pnp/default.mspx |archive-date=2004-06-16 |url-status=dead }}</ref>
* The [[Windows Vista Startup Process|startup process for Windows Vista]] has changed completely in comparison to earlier versions of Windows. The [[NTLDR]] boot loader has been replaced by a more flexible system, with NTLDR's functionality split between two new components: [[winload.exe]] and [[Windows Boot Manager]].<ref name="bcd-faq">See [http://www.microsoft.com/technet/windowsvista/library/85cd5efe-c349-427c-b035-c2719d4af778.mspx Boot Configuration Data Editor Frequently Asked Questions] {{Webarchive|url=https://web.archive.org/web/20061208002701/http://www.microsoft.com/technet/windowsvista/library/85cd5efe-c349-427c-b035-c2719d4af778.mspx |date=2006-12-08 }} for details on BCD.</ref> A notable change is that the Windows Boot Manager is invoked by pressing the [[space bar]] instead of the F8 [[function key]].<ref>{{Cite web |url=http://blogs.msdn.com/windowsvistanow/archive/2008/12/05/the-space-bar-is-the-new-f8-when-it-comes-to-vista-and-server-2008-boot-options.aspx |title=The space bar is the new F8 when it comes to Vista and Server 2008 boot options |access-date=2010-05-18 |archive-date=2009-05-24 |archive-url=https://web.archive.org/web/20090524094408/http://blogs.msdn.com/windowsvistanow/archive/2008/12/05/the-space-bar-is-the-new-f8-when-it-comes-to-vista-and-server-2008-boot-options.aspx |url-status=live }}</ref> The F8 key still remains assigned for advanced boot options once the Windows Boot Manager menu appears.
* On [[Extensible Firmware Interface|UEFI]] systems, beginning with Windows Vista Service Pack 1, the x64 version of Windows Vista has the ability to boot from a disk with a [[GUID Partition Table]].
* Windows Vista includes a completely overhauled and rewritten ''Event logging'' subsystem, known as [[Windows Event Log]] which is [[XML]]-based and allows applications to more precisely log events, offers better views, filtering and categorization by criteria, automatic log forwarding, centrally logging and managing events from a single computer and remote access.
* Windows Vista includes an overhauled [[Task Scheduler]] that uses hierarchical folders of tasks. The Task Scheduler can run programs, send email, or display a message. The Task Scheduler can also now be triggered by an [[XPath]] expression for filtering events from the ''Windows Event Log'', and can respond to a workstation's lock or unlock, and as well as the connection or disconnection to the machine from a ''Remote Desktop''. The Task Scheduler tasks can be scripted in [[VBScript]], [[JScript]], or [[Windows PowerShell|PowerShell]].
* ''Restart Manager'': The ''Restart Manager'' works with Microsoft's update tools and websites to detect processes that have files in use and to gracefully stop and restart services to reduce the number of reboots required after applying updates as far as possible for higher levels of the software stack. Kernel updates, logically, still require the system to be restarted.<ref>{{cite web | url=http://msdn.microsoft.com/en-us/library/aa373654.aspx | title=Restart Manager | author=Microsoft | publisher=Microsoft | work=MSDN Library | access-date=2008-12-21 | archive-url=https://web.archive.org/web/20090112123045/http://msdn.microsoft.com/en-us/library/aa373654.aspx | archive-date=2009-01-12 | url-status=dead }}</ref> In addition, the Restart Manager provides a mechanism for applications to stop and then restart programs. Applications that are written specifically to take advantage of the new ''Restart Manager'' features using the API can be restarted and restored to the same state and with the same data as before the restart. Using the ''Application Recovery and Restart'' APIs in conjunction with the ''Restart Manager'' enables applications to control what actions are taken on their behalf by the system when they fail or crash such as recovering unsaved data or documents, restarting the application, and diagnosing and reporting the problem using [[Windows Error Reporting]].
<!-- Deleted image removed: [[Image:Vista Shutdown.png|thumb|right|A screenshot of Windows Vista's shutdown overlay UI|{{deletable image-caption|1=Tuesday, 22 September 2009}}]] -->
* When shutting down or restarting Windows, previous Windows versions either forcibly terminated applications after waiting for few seconds, or allowed applications to entirely cancel shutdown without informing the user. Windows Vista now informs the user in a full-screen interface if there are running applications when exiting Windows orand allows continuing with or cancelling the initiated shutdown. The reason registered, if any, for cancelling a shutdown by an application using the new ''ShutdownBlockReasonCreate'' API is also displayed.<ref>[http://msdn.microsoft.com/en-us/library/bb394721.aspx Shutdown Changes for Windows Vista] {{Webarchive|url=https://web.archive.org/web/20110427092544/http://msdn.microsoft.com/en-us/library/bb394721.aspx |date=2011-04-27 }} and [http://www.developer.com/net/cplus/article.php/3647411 Handling OS shutdown in Windows Vista] {{Webarchive|url=https://web.archive.org/web/20070429095017/http://www.developer.com/net/cplus/article.php/3647411 |date=2007-04-29 }}</ref>
* ''Clean service shutdown'': Services in Windows Vista have the capability of delaying the system shutdown in order to properly flush data and finish current operations. If the service stops responding, the system terminates it after 3 minutes. Crashes and restart problems are drastically reduced since the Service Control Manager is not terminated by a forced shutdown anymore.
 
Line 207 ⟶ 209:
 
* [[Transactional NTFS]] allows multiple file/folder operations to be treated as a single operation, so that a crash or power failure won't result in half-completed file writes. Transactions can also be extended to multiple machines.
* [[Image Mastering API]] (''IMAPI v2'') enables [[DVD]] burning support for applications, in addition to CD burning.<ref name="WindowsVistaOpticalPlatform">{{cite web |url=http://download.microsoft.com/download/5/b/9/5b97017b-e28a-4bae-ba48-174cf47d23cd/sto068_wh06.ppt |title=Optical Platform: Windows Vista and Beyond |last2=Walp |first2=David |last1=Mangefeste |first1=Tony |date=2006 |publisher=[[Microsoft]] |format=PPT |archive-url=https://web.archive.org/web/20110604214913/http://download.microsoft.com/download/5/b/9/5b97017b-e28a-4bae-ba48-174cf47d23cd/STO068_WH06.ppt |archive-date=June 4, 2011 |access-date=December 21, 2015}}</ref> ''IMAPI v2'' supports multiple optical drives, even recording to multiple drives simultaneously, unlike IMAPI in Windows XP which only supported recording with one optical drive at a time.<ref name="WhatsNewIMAPI">{{cite web |url=https://msdn.microsoft.com/en-us/library/aa366457.aspx |title=Image Mastering API - What's New |author=[[Microsoft]] |work=[[Microsoft Developer Network|MSDN]] |access-date=December 21, 2015 |archive-date=April 4, 2016 |archive-url=https://web.archive.org/web/20160404150431/https://msdn.microsoft.com/en-us/library/aa366457.aspx |url-status=live }}</ref> In addition, multiple filesystems are supported. Applications using ''IMAPI v2'' can create, and burn [[disc image]]s—it is extensible in the sense that developers can write their own specific media formats and create their own file systems for its programming interfaces.<ref name="WindowsVistaOpticalPlatform"/> ''IMAPI v2'' is implemented as a [[Dynamic-link library|DLL]] rather than as a [[Windows service|service]] as was the case in [[Windows XP]],<ref>{{Cite web |url=http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=1105007&SiteID=1 |title=IMAPI 2.0 is a DLL, not a Windows service |access-date=2012-08-02 |archive-date=2012-08-02 |archive-url=http://webarchive.loc.gov/all/20120802025110/http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=1105007&SiteID=1 |url-status=dead }}</ref> and is also scriptable using [[VBScript]].<ref name="WindowsVistaOpticalPlatform"/> ''IMAPI v2'' is also available for Windows XP.<ref name="IMAPIUpdateDes">{{cite web |url=https://support.microsoft.com/en-us/kb/952011 |title=Description of the Image Mastering API v2.0 (IMAPIv2.0) update package in Windows Feature Pack for Storage 1.0 |author=[[Microsoft]] |work=Support |access-date=December 21, 2015 |archive-date=January 14, 2016 |archive-url=https://web.archive.org/web/20160114030139/https://support.microsoft.com/en-us/kb/952011 |url-status=live }}</ref> With the Windows Feature Pack for Storage installed, ''IMAPI 2.0'' supports Recordable Blu-ray Disc ([[BD-R]]) and Rewritable Blu-ray Disc ([[BD-RE]]) media as well.<ref name="IMAPIUpdateDes"/> Windows DVD Maker can burn [[DVD-Video]] discs, while Windows Explorer can burn data on DVDs ([[DVD±R]], DVD±R DL, DVD±R RW) in addition to [[DVD-RAM]] and CDs.
* [[Live File System]]: A writable [[Universal Disk Format|UDF]] file system.<ref name="WindowsVistaOpticalPlatform"/> The Windows [[Universal Disk Format|UDF]] file system (UDFS) implementation was read-only in OS releases prior to Windows Vista. In Windows Vista, [[Mount Rainier (packet writing)|Packet writing]] (incremental writing) is supported by UDFS, which can now format and write to all mainstream optical media formats ([[Magneto-optical drive|MO]], CDR/RW, DVD+R/RW, DVD-R/RW/RAM). Write support is included for UDF format versions up to and including 2.50, with read support up to 2.60. UDF symbolic links, however, are not supported.<ref name="FilingCabinet">{{cite web |url=https://blogs.technet.com/filecab/articles/454702.aspx |title=Universal Disk FOrmat (UDF) Beta Chat Transcript (September 01, 2006) |publisher=[[Microsoft]] |work=MSDN Blogs |access-date=December 21, 2015 |archive-date=February 28, 2009 |archive-url=https://web.archive.org/web/20090228015926/http://blogs.technet.com/filecab/articles/454702.aspx |url-status=live }}</ref>
* [[Common Log File System]] (CLFS) API provides a high-performance, general-purpose log-file subsystem that dedicated user-mode and kernel-mode client applications can use and multiple clients can share to optimize log access and for data and event management.
Line 213 ⟶ 215:
* ''File System Mini Filters model'' which are kernel mode non-device drivers, to monitor filesystem activity, have been upgraded in Windows Vista. The ''Registry filtering model'' adds support for redirecting calls and modifying parameters and introduces the concept of altitudes for filter registrations.
* ''Registry notification hooks'', introduced in Windows XP, and recently enhanced in Windows Vista, allow software to participate in registry related activities in the system.
* Support of UNIX-style [[NTFS symbolic link|symbolic links]].<ref name="SymbolicLinks">{{cite web |url=http://msdn.microsoft.com/en-us/library/aa365680%28VS.85%29.aspx?s=41 |title=Symbolic Links |author=[[Microsoft]] |work=[[Microsoft Developer Network|MSDN]] |access-date=December 21, 2015 |archive-date=December 23, 2015 |archive-url=https://web.archive.org/web/20151223072803/https://msdn.microsoft.com/en-us/library/aa365680(VS.85).aspx?s=41 |url-status=live }}</ref> Previous Windows versions had support for a type of cross-volume [[NTFS reparse point|reparse points]] known as [[NTFS junction point|junction points]] and [[hard link]]s. However, junction points could be created only for directories and stored absolute paths, whereas hardlinks could be created for files but were not cross-volume. [[NTFS symbolic link]]s can be created for any object and are cross-volume, cross-host (work over [[Uniform Naming Convention|UNC]] paths), and store relative paths. However, the cross-host functionality of symbolic links does not work over the network with previous versions of Windows or other operating systems, only with computers running [[Windows Vista]] or a later Windows operating system. Symbolic links can be created, modified and deleted using the ''Mklink'' utility which is included with Windows Vista. Microsoft has published some developer documentation on symbolic links in the MSDN documentation.<ref name="SymbolicLinks"/> In addition, [[Windows Explorer]] is now symbolic link-aware and deleting a symbolic link from Explorer just deletes the link itself and not the target object. Explorer also shows the symbolic link target in the object's properties and shows a shortcut icon overlay on a junction point.
* A new tab, "Previous Versions", in the ''Properties'' dialog for any file or folder, provides read-only snapshots of files on local or network volumes from an earlier point in time. This feature is based on the [[Volume Shadow Copy]] technology.
* A new file-based [[disk image]] format called [[Windows Imaging Format]] (WIM), which can be mounted as a partition, or booted from. An associated tool called [[ImageX]] provides facilities to create and maintain these image files.
Line 239 ⟶ 241:
 
* Signed drivers are required for usage of PUMA, PAP (Protected Audio Path), and PVP-OPM subsystems.
* Driver packages that are used to install driver software are copied in their entirety into a "Driver Store", which is a repository of driver packages and located in <code>C:\Windows\System32\DriverStore</code>. In essence, DriverStore is similar to [[WinSxS]] but stored for device drivers. This ensures that drivers that need to be repaired or reinstalled won't need to ask for source media to get "fresh" files. The Driver Store can also be preloaded with drivers by an OEM or IT administrator to ensure that commonly used devices (e.g. external peripherals shipped with a computer system, corporate printers) can be installed immediately. Adding, removing and viewing drivers from the "Driver Store" is done using {{mono|PnPUtil.exe}}<ref>{{Cite web |url=http://support.microsoft.com/kb/937793 |title=The staging and the installation of driver packages by using the PnP Utility (Pnputil.exe) in Windows Vista |access-date=2007-10-27 |archive-date=2009-07-22 |archive-url=https://web.archive.org/web/20090722095346/http://support.microsoft.com/kb/937793 |url-status=live }}</ref> A new setting in [[Device Manager]] allows deleting the drivers from the Driver Store when uninstalling the hardware.
* Since Windows Vista, there has a "delete the driver software for this device" clickbox in confirmation dialog when uninstalling a hardware device in Device Manager.
* Support for [[Windows Error Reporting]]; information on an "unknown device" is reported to Microsoft when a driver cannot be found on the system, via Windows Update, or supplied by the user. OEMs can hook into this system to provide information that can be returned to the user, such as a formal statement of non-support of a device for Windows Vista, or a link to a web site with support information, drivers, etc.
 
===Processor Power Management===
Windows Vista includes the following changes and enhancements in processor [[Centralpower processing unit|processormanagement]] power management:<ref name="PPM">{{cite web |url=http://download.microsoft.com/download/0/0/b/00bba048-35e6-4e5b-a3dc-36da83cbb0d1/ProcPowerMgmt.docx |title=Processor Power Management in Windows Vista and Windows Server 2008 |author=[[Microsoft]] |date=November 20, 2007 |format=DOCX |access-date=April 26, 2015 |archive-url=https://web.archive.org/web/20150131214603/http://download.microsoft.com/download/0/0/b/00bba048-35e6-4e5b-a3dc-36da83cbb0d1/ProcPowerMgmt.docx |archive-date=2015-01-31 |url-status=dead }}</ref>
* Native operating system support for PPM on multiprocessor systems, including systems using processors with multiple logical threads, multiple cores, or multiple physical sockets.
* Support for all ACPI 2.0 and 3.0 processor objects.
Line 261 ⟶ 264:
{{main|Windows Vista I/O technologies}}
 
* '''[[Windows Vista I/O technologies#SuperFetch|SuperFetch]]''' caches frequently- used applications and documents in memory, and keeps track of when commonly used applications are usually loaded, so that they can be pre-cached and it also prioritizes the programs currently used over background tasks. SuperFetch aims to negate the negative performance effect of having anti-virus or backup software run when the user is not at the computer. Superfetch is able to learn at what time of a given day an application is used and so it can be pre-cached.
* '''[[ReadyBoost]]''', makes PCs running Windows Vista more responsive by using [[flash memory]] on a [[USB flash drive|USB drive]] (USB 2.0 only), [[SD Cardcard]], [[Compact Flash]], or other form of flash memory, in order to boost system performance. When such a device is plugged in, the Windows [[Autoplay]] dialog offers an additional option to use it to speed up the system; an additional "ReadyBoost" tab is added to the drive's properties dialog where the amount of space to be used can be configured.<ref name="readyboostJim Allchin">{{cite web
| url=http://blogs.msdn.com/tomarcher/archive/2006/04/14/576548.aspx
| title=ReadyBoost - Using Your USB Key to Speed Up Windows Vista
Line 276 ⟶ 279:
 
* '''ReadyBoot''' uses an in-RAM cache to optimize the [[Windows Vista Startup Process|boot process]] if the system has 700MB or more memory. The size of the cache depends on the total RAM available, but is large enough to create a reasonable cache and yet allow the system the memory it needs to boot smoothly. ReadyBoot uses the same ReadyBoost service.<ref>{{Cite web |url=http://www.microsoft.com/technet/technetmag/issues/2007/03/VistaKernel/ |title=Inside the Windows Vista kernel |website=[[Microsoft]] |access-date=2007-04-30 |archive-url=https://web.archive.org/web/20070331073321/http://www.microsoft.com/technet/technetmag/issues/2007/03/VistaKernel/ |archive-date=2007-03-31 |url-status=dead }}</ref>
* '''[[Windows Vista I/O technologies#ReadyDrive|ReadyDrive]]''' is the name Microsoft has given to its support for [[hybrid drive]]s, a new design of [[hard drive]] developed by [[Samsung]] and Microsoft. Hybrid drives incorporate [[non-volatile memory]] into the drive's design, resulting in lower power needs, as the drive's spindles do not need to be activated for every write operation. Windows Vista can also make use of the NVRAM to increase the speed of booting and returning from hibernation.<ref name="performance">{{cite web
| url=http://www.microsoft.com/windowsvista/features/foreveryone/performance.mspx
| title=Windows Vista: Performance
Line 309 ⟶ 312:
{{main|.NET Framework}}
 
Windows Vista is the first client version of Windows to ship with the .NET Framework. Specifically, it includes .NET Framework 2.0 and [[.NET Framework 3.0]] (previously known as WinFX) but not version 1.0 or 1.1.{{Citation needed|date=February 2007}} The .NET Framework is a set of [[managed code]] [[application programming interface|APIs]] that is slated to succeed [[Win32]]. The Win32 API is also present in Windows Vista, but does not give direct access to all the new functionality introduced with the .NET Framework. In addition, .NET Framework is intended to give programmers easier access to the functionality present in Windows itself.
 
.NET Framework 3.0 includes APIs such as [[ADO.NET]], [[ASP.NET]], [[Windows Forms]], among others, and adds four core frameworks to the .NET Framework:
Line 320 ⟶ 323:
====WPF====
{{main|Windows Presentation Foundation}}
'''Windows Presentation Foundation''' (codenamed Avalon) is the overhaul of the graphical subsystem in Windows and the flagship [[resolution independence|resolution independent]] API for [[2D graphics|2D]] and [[3D graphics|3D]] [[Computer graphics|graphics]], [[Raster graphics|raster]] and [[vector graphics]] ([[Extensible Application Markup Language|XAML]]), fixed and adaptive documents ([[XML Paper Specification|XPS]]), advanced [[typography]], [[animation]] ([[Extensible Application Markup Language|XAML]]), data binding, audio and video in [[Windows Vista]]. WPF enables richer control, design, and development of the visual aspects of Windows programs. Based on DirectX, it renders all graphics using [[Direct3D]]. Routing the graphics through Direct3D allows Windows to offload graphics tasks to the [[Graphics Processing Unit|GPU]], reducing the workload on the computer's [[Central processing unit|CPU]]. This capability is used by the [[Desktop Window Manager]] to make the desktop, all windows and all other shell elements into 3D surfaces. WPF applications can be deployed on the desktop or hosted in a web browser ([[XBAP]]).
 
The 3D capabilities in WPF are limited compared to what's available in Direct3D. However, WPF provides tighter integration with other features like [[user interface]] (UI), documents, and media. This makes it possible to have 3D UI, 3D documents, and 3D media. A set of built-in controls is provided as part of WPF, containing items such as button, menu, and list box controls. WPF provides the ability to perform control composition, where a control can contain any other control or layout. WPF also has a built-in set of data services to enable application developers to bind data to the controls. Images are supported using the Windows Imaging Component. For media, WPF supports any audio and video formats which Windows Media Player can play. In addition, WPF supports time-based [[animation]]s, in contrast to the frame-based approach. This delinks the speed of the animation from how slow or fast the system is performing. [[wikt:Text|Text]] is anti-aliased and rendered using [[ClearType]].
 
WPF uses Extensible Application Markup Language ([[Extensible Application Markup Language|XAML]]), which is a variant of [[Extensible Markup Language|XML]], intended for use in developing user interfaces. Using XAML to develop user interfaces also allows for separation of model and view. In XAML, every element maps onto a class in the underlying API, and the attributes are set as properties on the instantiated classes. All elements of WPF may also be coded in a .NET language such as C#. The XAML code is ultimately compiled into a managed assembly in the same way all .NET languages are, which means that the use of XAML for development does not incur a performance cost.
 
====WCF====
Line 368 ⟶ 371:
===Media Foundation===
{{main|Media Foundation}}
Media Foundation is a set of [[Component Object Model|COM]]-based APIs to handle audio and video playback that provides [[DXVA|DirectX Video Acceleration]] 2.0 and better resilience to CPU, I/O, and memory stress for glitch-free low-latency playback of audio and video. It also enables high color spaces through the multimedia processing pipeline. [[DirectShow]] and [[Windows Media|Windows Media SDK]] will be gradually deprecated in future versions.
 
===Search===
{{main|Windows Search}}
The Windows Vista ''Instant Search'' index can also be accessed programmatically using both [[.NET Framework|managed]] as well as [[Win32|native]] code.<ref>{{cite web |title=Searching data |date=2 November 2006 |url=http://msdn.microsoft.com/en-us/library/ms717470.aspx |access-date=2007-03-17 |archive-date=2009-01-13 |archive-url=https://web.archive.org/web/20090113084720/http://msdn.microsoft.com/en-us/library/ms717470.aspx |url-status=live }}</ref> Native code connects to the index catalog by using a ''Data Source Object'' retrieved from Windows Vista shell's Indexing Service [[OLE DB]] provider. Managed code use the ''MSIDXS'' [[ADO.NET]] provider with the index catalog name. A catalog on a remote machine can also be specified using a [[Path (computing)#Uniform Naming Convention|UNC]] path. The criteria for the search is specified using a [[SQL]]-like syntax.
 
The default catalog is called ''SystemIndex'' and it stores all the properties of indexed items with a predefined naming pattern. For example, the name and ___location of documents in the system is exposed as a table with the column names ''System. ItemName'' and ''System. ItemURL'' respectively.<ref>{{cite web | url = http://blogs.msdn.com/cheller/archive/2006/11/10/windows-vista-search-syntax-update.aspx | title = Windows Vista Search: Syntax Update | author = Catherine Heller | access-date = 2007-06-23 | archive-date = 2007-07-03 | archive-url = https://web.archive.org/web/20070703133350/http://blogs.msdn.com/cheller/archive/2006/11/10/windows-vista-search-syntax-update.aspx | url-status = live }}</ref> An SQL query can directly refer these tables and index catalogues and use the ''MSIDXS'' provider to run queries against them. The search index can also be used via [[OLE DB]], using the ''CollatorDSO'' provider.<ref name="SIP">{{cite web | url = http://msdn.microsoft.com/en-us/library/bb266517.aspx | title = Querying the Index Programmatically | publisher = MSDN | access-date = 2007-06-23 | archive-date = 2009-02-05 | archive-url = https://web.archive.org/web/20090205004910/http://msdn.microsoft.com/en-us/library/bb266517.aspx | url-status = live }}</ref> However, OLE DB provider is read-only, supporting only ''SELECT'' and ''GROUP ON'' SQL statements.
Line 417 ⟶ 420:
* When accessing files with the [[ANSI]] character set, if the total path length is more than the maximum allowed 260 characters, Windows Vista automatically uses the alternate short names (which has an 8.3 limit) to shorten the total path length. In [[Unicode]] mode, this is not done as the maximum allowed length is 32,000.
* The long "Documents and Settings" folder is now just "Users", although a symbolic link called "Documents and Settings" is kept for compatibility. The paths of several [[special folder]]s under the user profile have changed.
* New support for [[infrared]] receivers and [[Bluetooth#Bluetooth 2.0 + EDR|Bluetooth 2.0]] wireless standards; devices supporting these can transfer files and sync data wirelessly to a Windows Vista computer with no additional software.
* A non-administrator user can share only the folders under his user profile. In addition, all users have a ''Public'' folder which is shared, though an administrator can override this.
* '''Network Projection'''<ref>{{Cite web |url=http://www.microsoft.com/presspass/newsroom/winxp/VistaBeta1FS.mspx |title=Microsoft release regarding Network Projection |website=[[Microsoft]] |access-date=2007-03-07 |archive-date=2007-03-31 |archive-url=https://web.archive.org/web/20070331082307/http://www.microsoft.com/presspass/newsroom/winxp/VistaBeta1FS.mspx |url-status=live }}</ref> is used to detect and use network-connected projectors. It can be used to display a presentation, or share a presentation with the machine which hosts the projector. Users can do this over a network so multiple sources can be connected at different times without having to keep moving the sources or projectors around. The network projector can be connected to the network via wireless or cable (LAN) technology to make it even more flexible. Users can not only connect to the network projector remotely but can also remotely configure it. Network projectors are designed to transmit and display still images, such as photographs and slides —not high-bandwidth transmissions, such as video streams. The projector can transmit video, but the playback quality is often poor.<ref>{{Cite web |url=http://windows.microsoft.com/en-us/windows/network-projectors-faq#1TC=windows-7 |title=Network projectors: Frequently asked questions - Windows Help |access-date=2016-03-16 |archive-date=2016-03-22 |archive-url=https://web.archive.org/web/20160322234324/http://windows.microsoft.com/en-us/windows/network-projectors-faq#1TC=windows-7 |url-status=live }}</ref> Binary ''%windir%\system32\NetProj.exe'' implement Network Projection feature.
Line 424 ⟶ 427:
* The ''Fax service'' and model are fully account-based. Fax-aware applications such as [[Windows Fax and Scan]] can send multiple documents in a single fax submission. The Fax Service API generates [[TIFF]] files for each document and merges them into a single TIFF file. Users can right-click a document in Windows Explorer and select ''Send to Fax Recipient''.
* Windows Vista introduces the 'Assistance Platform' based on [[Microsoft Assistance Markup Language|MAML]]. '''Help and Support''' is intended to be more meaningful and clear. '''Guided Help''', or '''Active Content Wizard''' is an automated tutorial and self-help system available with the release of Windows Vista where a series of animated steps show users how to complete a particular task.<ref>{{cite web | url=http://digitalfive.org/content/guided-help-in-windows-vista.html | title=Guided Help in Windows Vista | date=June 5, 2006 | author=Kristan M. Kenney | work=digitalfive | access-date=2007-02-26 | archive-url=https://web.archive.org/web/20070929224252/http://digitalfive.org/content/guided-help-in-windows-vista.html | archive-date=2007-09-29 | url-status=dead }}</ref> It highlights only the options and the parts of screen that are relevant to the task and darkening the rest of the screen. A separate file format is used for ACW help files. The guided help SDK got replaced in [[Windows 7]] with the Windows Troubleshooting Platform.
* All standard text editing controls and all versions of the 'RichEdit' control now support the [[Text Services Framework]]. Also, all Tablet/Ink API applications and all HTML applications which use Internet Explorer's [[Trident (layout engine)|Trident layout engine]] support the Text Services Framework.<ref>{{Cite web |url=http://msdn.microsoft.com/en-us/library/aa371122.aspx |title=Enabling Text Correction for Custom Ink Collectors |access-date=2008-12-21 |archive-date=2009-01-12 |archive-url=https://web.archive.org/web/20090112163014/http://msdn.microsoft.com/en-us/library/aa371122.aspx |url-status=live }}</ref>
* Windows Data Access Components (Windows DAC) replace [[Microsoft Data Access Components|MDAC 2.81]] which shipped with Windows XP Service Pack 2.
* '''DFS Replication''',<ref>{{cite web