Storage
NTFS
- Self Healing
NTFS in Windows Vista and Windows Server 2008 includes
technologies that enable on-the-fly detection and repair of file system
corruptions. This self healing behavior provides increased system
availability and reliability by mitigating the need to conduct offline scans
and recovery. Application crashes or other unexpected behaviors caused by
corrupted metadata or system files can be avoided or reduced to one-time
occurrences instead of repeated occurrences due to detection of the problem
files and automatically replacing them with uncorrupted backups. Authorized
users may monitor and set the self healing state of volumes, initiate repair
operations, and receive progress information about such operations via the
fsutil repair command context.
- Symbolic Links
NTFS in Windows Vista and Windows Server 2008 includes
support for symbolic links for files and directories. Symbolic links
(sometimes referred to as symlinks or
soft links) are
implemented using reparse points. Unlike junctions, symbolic links are
always evaluated on the client system, whereas junctions are evaluated on the
server. Symbolic links can be created using absolute or relative paths,
though only absolute links may span volumes. The target files or directories
for symbolic links can be located on local or remote systems. SMB 2.0
supports symbolic links so they may be used in networked scenarios. Possible
link types include the following:
- Local Link to a Local Target
- Local Link to a Remote Target
- Remote Link to Remote Target
- Remote Link to Local Target
For security, only local source symbolic links
are enabled by default, and only Administrators may create symbolic links by
default. Both of these defaults can be changed. Evaluation of remote source
symbolic links can be enabled through the Group Policy editor (gpedit.msc) under
Computer Configuration |
Administrative Templates | System | NTFS File System | Selectively allow the
evaluation of a symbolic link, or via the fsutil behavior command
context. Symbolic link creation privileges may be assigned to other users or
groups via the Security Policy editor (secpol.msc) under Local Policies | User
Rights Assignment | Create symbolic links.
-
Large Sector
Support
Hard drives have historically been designed with physical sector sizes of
512 bytes. This will soon not always be true as the storage industry
transitions to hard drive designs with larger physical sectors (usually
ranging form 1 to 4 kilobytes in size) that are multiples of 512 bytes. The
larger sector designs allow for enhanced data protection and correction algorithms for increased data
reliability and enable greater format efficiencies that free up space for
additional user data. In initial designs, 512 byte logical sectors are
exposed for backwards compatibility with hardware and software that cannot
address larger logical sectors. Windows 2000, XP, and Server 2003 support
large logical sector drives as data disks, but cannot boot from them. NTFS
and related components in Windows Vista and Windows Server 2008 include
support for large logical sector hard drives as both boot and data disks.
BIOS support is also required for the large logical sector boot disk
scenario. The Big
Sector technology consortium, of which Microsoft is a member, was formed
to support the industry in transitioning to large sector hard drives.
- Transactional NTFS (TxF) / Transactional Registry (TxR)
With the inclusion of the Kernel
Transaction Manager (KTM), full ACID transactional semantics are now a
fundamental part of the Windows platform. Transactional NTFS and
Transactional Registry technologies in Windows Vista and Windows Server 2008
work with the KTM to allow file and registry operations to be
performed in a transaction, preserving data integrity, isolating changes,
and reliably handling error conditions.
These operations can be local or distributed, and ISVs and administrators
can also integrate transaction support into their applications. NTFS
transactions can be monitored via the fsutil transaction command
context.
Common Log File System
First introduced in Windows Server 2003 R2, the Common Log File
System (CLFS) API provides high-performance, general-purpose file log services
that dedicated client applications can use, and multiple clients can share to
optimize log access. Any user-mode application that needs logging or recovery
support can use CLFS. The Common Log File
System (CLFS) saves log records in a sequential order, and can ensure
that the flushed log records are preserved even after a system failure.
Image Mastering API (IMAPI) version 2.0
IMAPI enables applications to stage and
burn images to CD and DVD optical storage media and other media that lay images
in the same manner. IMAPI version 2 is a complete redesign, that moves the API
to user mode, supports simultaneous recording to multiple drives, provides a
more extensible architecture allowing developers to create their own media
formats and file systems, and includes simplified, scriptable interfaces. IMAPI
version 1.0 interfaces now map to the version 2.0 interfaces.
UDF
UDF is a file system that is defined by the Optical Storage
Technology Association (OSTA). UDF is compliant with ISO-13346/ECMA-167 and is
the successor to the CD-ROM file system (CDFS or ISO-9660). The UDF format
supports a number of advanced features including long and Unicode filenames,
access control lists (ACL)s, alternate data streams, 64-bit file sizes, sparse
files, and writing to many different types of media. Windows has included
read-only support for various versions of the UDF standard since Windows 98. The
UDF file system driver in previous versions of Windows does not support ACLs or
alternate data streams. Windows Vista and Windows Server 2008 add read/write
support for versions of UDF up to UDF 2.50, read-only support for the latest
version, 2.60, and support for alternate data streams. Frequent updates to the
Windows optical stack are planned.
Previous Versions
Previous Versions is a technology in
Windows Vista and Windows Server 2008 that enables users to quickly recover from
accidental changes or deletions of files and folders. Previous Versions is based
on Volume Shadow Copy technology which first appeared in Windows Server
2003. Previous Versions automatically creates incremental copies of files and
folders as you work, and enables users to restore copies made at previous points
in time to recover from current mistakes.
Windows SuperFetch
Historically, memory management systems have used a process known
as demand paging to allocate physical memory to active applications as needed
while moving currently unused data to a pagefile on the hard drive. This process
allowed the operating system to maintain a pool of free physical memory for more
active applications while still being able to pull the data back from the
pagefile and into memory if an application requested it. According to Microsoft,
research has shown that demand paging generates many disk I/O requests, can
create usage patterns resembling random I/O, and contributes to poor system
performance due to the lack of optimal in-memory content and large latencies
caused by disk seeks. Windows SuperFetch and related technologies in Windows
Vista and Windows Server 2008 act to reduce these latencies by analyzing memory
usage patterns to determine the optimal memory content for a given user and
actively working to keep necessary content resident in memory rather than
reflexively fetching it upon request.
SuperFetch uses a lightweight, sophisticated tracking algorithm to determine
which pages a user uses most frequently. As a user goes about her daily
activities, SuperFetch builds a history of what information is most likely to be
needed. To build an effective page list, SuperFetch tracks several aspects of
the user’s computing session including but not limited to foreground
application, time of day, day of the week, and even whether the user is
currently using the PC. When the PC has free physical memory, SuperFetch places
candidate pages into the physical memory cache so Windows Vista can move them
directly into the working set instead of pulling them from disk. This provides
data when the user needs it, makes the PC more responsive, and eliminates delays
caused by random disk I/O. Flash memory devices can also be utilized to reduce
or eliminate mechanical latencies and reduce contention during simultaneous I/O
requests.
Windows ReadyBoost
Windows ReadyBoost works in concert with
Windows SuperFetch to increase system I/O performance and reduce latencies. By
using storage space on compliant removable media devices, such as some USB flash
drives, SD and Compact Flash cards,
Windows ReadyBoost can speed up your
computer. When you insert a Windows ReadyBoost compliant device, the AutoPlay
dialog will offer you the option to speed up your system using Windows
ReadyBoost. If you select this option, you can then choose how much memory to
use for this purpose. There are some situations where you
may not be able to use all of the memory on your storage device to speed up your
computer. Some USB flash drives contain both slow and fast flash memory, and
Windows can only use the fast flash memory to speed up your computer.
Windows ReadyBoost cache sizes can range from 230 MB up to 4 GB. Microsoft
recommends at least a 1:1 ratio of ReadyBoost cache size to main memory (RAM)
capacity. Higher ratios up to 3:1 will realize optimal performance benefits. For
instance, if your computer has 512 MB of RAM and you plug in a 4 GB USB flash
drive, setting aside from 512MB to 1.5GB of that drive will offer the best
performance boost. Every page of data in the ReadyBoost cache is a copy of a
page on disk. If the device is removed from the computer, no data is lost, but
the computer loses the performance boost and the operating system reverts to
sending requests to the disk. All data written to the cache on the ReadyBoost
device is compressed at a 2:1 ratio and encrypted using AES-128 to ensure
security of user data.
Windows ReadyDrive
Like Windows ReadyBoost, Windows ReadyDrive reduces or eliminates
mechanical latencies through the use of flash memory. ReadyDrive utilizes the
flash memory in solid state and hybrid harddrives to act as additional capacity
for SuperFetch, act as a write buffer for traditional hard drives, and provide a
persistent storage area for OEMs, ISVs, and administrators to pin data to speed
application loading upon system startup and resume, such as for launching
Windows HotStart applications, or for accessing applications and data while the
main operating system is offline, as with Windows Sideshow gadgets.
Resources:
Symbolic Links
http://msdn2.microsoft.com/en-us/library/aa365680.aspx
Common Log File System (CLFS)
http://msdn2.microsoft.com/en-us/library/aa363836.aspx
Kernel Transaction Manager
http://msdn2.microsoft.com/en-us/library/aa366295.aspx
Selected Scenarios for Maintaining Data Integrity with Windows Vista
http://technet2.microsoft.com/WindowsVista/en/library/4ac505e6-dd8b-4ae7-80fa-b9d77cd8104d1033.mspx
Introduction to Storage Technologies
http://www.microsoft.com/whdc/device/storage/stor-tech.mspx
Windows PC Accelerators: Performance Technology for Windows Vista
http://www.microsoft.com/whdc/system/sysperf/accelerator.mspx