The Winfs File System and Modern Encryption Methods
Essay by review • February 13, 2011 • Research Paper • 4,295 Words (18 Pages) • 1,727 Views
The WinFS File System
In the last decade there has been a “combination of trends and technologies” that will change the way people work with managing their data in the future. Because computers have become faster, bandwidth continues to increase, and data storage has increased, the amount of “digitally born data” has exploded (Rizzo, 2005). The increase in digital data has propelled Microsoft to invest in building a new way to manage data. WinFS (Windows Future Storage) is being developed by Microsoft to be used as an advanced storage system that shall be implemented on top of NTFS. Because WinFS is actually operating on top of NTFS, the only way to compare the two is to highlight the features of WinFS that distinguish it from NTFS.
“WinFS is modeled on the file system of the coming SQL server (Yukon), whose FS is based entirely on a relational database”(IbelshÐ"¤user, 2004). According to the Wikipedia encyclopedia, “WinFS is not a physical file system; rather it provides rich data modeling capabilities on top of the NTFS file system. But it still uses NTFS to store its data in physical files” (p. 4). The concept of WinFS is that it will identify different data by a form of Extensible Markup Language (XML) metadata and use this metadata to set up relationships among the data. This metadata is attributes “such as type of file (e.g., document, picture, music), creator, artist” (Wikipedia, 2006). WinFS will be able to utilize the metadata to aggregate data from two or more applications and organize “using attributes to describe the data in files and the relation of that data with other data. By creating a unified datastore, it promotes sharing and reuse of data between different applications” (Wikipedia, 2006).
WinFS is comprised of five components: Core WinFS, Data Model, Schemas, Services, and APIs. Below is a diagram detailing the different components.
The core WinFS building blocks (Rizzo. 2004, Figure 1)
Core WinFS helps provide the core services of a file system such as security, manageability, Win32 file access support, and import/export.
The Data Model includes the basic item structure, relationships, and extensions and can store data in all sorts of data structures. The WinFS item has replaced the file in NTFS. WinFS files data “in a cohesive data store, not just a file system” (Wildermuth, 2004, p. 2). The item is the data object. The item along with the core data contains the information concerning how this data relates with other data.
(Wildermuth, 2004 Figure 2)
In Wildermuth’s article A Developer’s Perspective on WinFS: Part1, he gives a very clear explanation of what an Item is in WinFS:
These specializations add new pieces of information specific to the type of object it represents. For example, a File has a timestamp and last accessed time; a Document has the author of the document; and a Person has the first and last name of the Person. This hierarchy continues to specialize as new types of objects are created to be stored in WinFS. This can be seen in Figure 3:
(Wildermuth, 2004, Figure 3)
For example, the Photo class consists of an Image, a Document, and an Item. While a Photo is a document, and therefore has an author, and last date changed, it is also an Image. Being an Image, it will need to store data like color depth, image size, and format. Lastly, the Photo needs even more data that the Image type has. It wants to store the type of camera it was taken with, the time the photo was taken, and whether a flash was used.
Each WinFS object that specializes (or inherits from) the Item primitive defines the actual fields that will be stored as part of the object. For example, a Contact object defines that a contact includes a name, one or more addresses, and other contact information. The base Item object only knows how to take that information and store it in WinFS. WinFS accomplishes this with NestedTypes and ScalarTypes. For example, here is a depiction of a contact in WinFS:
(Wildermuth, 2004, Figure 4)
Bob contains a number of pieces of information about him. He is male; he has one personal address, a home address, and the data associated with that address. These objects are stored as primitive types: ScalarType and NestedCollection. WinFS stores Bob as a Person and his gender as a ScalarType of the Person class. The Person class had a NestedCollection to hold a set of personal addresses. The Address within that collection is a NestedType that contains the component parts of the address. Each of these components parts is a ScalarType. This is the real structure of a person (though simplified). The use of ScalarTypes and NestedTypes allowed the structure of a Person to be defined. (p. 3-5)
The relationship is the relation between two or more items. This relationship is stored using logical links. “Links are physically stored using a link identifier, which specifies the name and intent of the relationship, such as type of or consists of. The link identifier is stored as an attribute of the data item. All the objects which has the same link id are consider to be related” (Wikipedia, 2006, p. 4). This eliminates duplicate data and the need to synchronize data between applications.
WinFS “needs to understand the type and structure of the data items, so that the information store in the data item can be available to any application that requests it” (Wikipedia, 2006, p. 4). The schemas achieve this. The WinFS schemas are everyday information such as documents, video images, audio, messages, appointments, and events. System related data such as configuration and programs are included in schemas.
The Services area of WinFS handles synchronization and rules. “These technologies sit on top of WinFS to provide capabilities that extend beyond the fundamentals of the system”(Rizzo, p. 4). Synchronization will allow the user to synchronize across a network or to other systems. WinFS is about sharing data between applications and different WinFS stores that might reside on different computers.
Problems with NTFS that WinFS Addresses
Having highlighted the features of WinFS, it is now important to describe the architecture
...
...