A road to Windows
Longhorn WinFS, WinFX, Avalon, XAML, Indigo.....
BY
ARUN KUMAR MISHRA
What is Windows "Longhorn"? "Longhorn" is the codename for a major wave of technology and platform software from Microsoft. This generation of software will include new versions of Windows, Windows Server, .NET, MSN, Microsoft Office, and other products. Windows "Longhorn" is the next major desktop Windows release. WinFX is the backbone of Longhorn. The technologies of WinFX are broken up into presentation ("Avalon") and communication ("Indigo"). Microsoft hopes to make Longhorn what it calls a "high performance, robust, and safe operating system." To accomplish this, it will need to overhaul the way user accounts work in Windows. Today, Windows XP supports Limited User accounts, administrator accounts (and others, in XP Pro and newer), but few people use anything but administratorlevel accounts because the Limited User account is almost useless. In Longhorn, Microsoft will introduce the new least privileged user account (LUA), which is basically a secure code compartment in which most application code will typically run. When trusted applications need administrator-level access, they can temporarily run in Protected Admin mode. This feature will help sidestep most of the problems home users now face with Limited User accounts, but administrators in businesses can turn it off. As with Windows XP SP2, Longhorn will provide strong security warnings and guidance when it detects errant actions. However, Longhorn's warning notifications can occur because of local code as well, and not just because of Internet-based communications, as in XP SP2. The idea is that users will feel safe, and they will be able to undo any action, further strengthening the security aura. Overall, the security and management advancements in Longhorn will be evolutionary when compared with Windows XP with Service Pack 2. For example, the new security policy features in XP SP2 will be expanded dramatically in Longhorn, but will work the same way. So administrators will face a shorter learning curve with understanding how Group Policy works in Longhorn. Longhorn will support a new updating model called hot patching, through which Microsoft will be able to apply updates to any non-kernel code, including drivers, without requiring a reboot. Longhorn will still need to be rebooted after certain patches, of course, but there will be much fewer than with Windows XP SP2 or Windows Server 2003: 70 percent less is the goal. Additionally, Longhorn will feature a new instant-on capability that will see Longhorn-savvy systems resume from Standby in 2 seconds or less. And cold boot time should be 50 percent less than with XP on the same system. IT Operational Efficiency For businesses looking at deploying Longhorn on the desktop, Longhorn will offer a number of advantages over Windows XP, reducing the costs of deployment, management and support. Longhorn will be able to detect and eliminate spyware and malware, using next-generation versions of the Windows AntiSpyware and anti-virus products that Microsoft is now developing. Administrators will also be able to scan PCs and the network for vulnerabilities. Longhorn will include technology, presumably a new form of the Encrypting File System (EFS), that helps prevent data exposure from lost or stolen laptops. You'll be able to forward event logs to a central location. In Longhorn, applications will launch and load files 15 percent faster than with Windows XP. Longhorn will feature new image creation and management tools that will make deployment much simpler. Longhorn's componentized underpinnings will reduce the number of install images corporations are required to maintain. A new version of the User State Migration Tool (USMT) will further improve state migration by taking advantage of Longhorn's native scripting environment. Additionally, Longhorn will feature a new version of Remote Assistance. Work Smarter Longhorn will offer more natural ways to access, organize and use information, and is designed to improve Information Worker (IW) productivity. The key to this, of course, is the new Fast Search feature, which many people incorrectly assumed was being removed from Longhorn when Microsoft delayed WinFS to a post-Longhorn release. That's not the
Microsoft Longhorn
Page 2 of 9
case. Longhorn fast search will provide near-instant searching of your PC, the local network, and the Internet. And it's designed to be intuitive to existing Windows users. Fast Search will feature new ways to organize data, including Lists, AutoLists and filters. Search results will include data from different store types (documents, email messages, pictures, etc.), and can be sorted by custom meta-data. And Longhorn's new shell windows, which will feature a handy "breadcrumb" navigation feature, will also include instant view filtering based on Fast Search technology and file preview. Another Fast Search feature, called Stacks, will help aggregate content by such things as authors, keywords, type, and so on. You can then group Stacks by various properties, such as name, size, modified date, type, or authors, in order to provide multiple relevant views on the same data. Microsoft believes that Fast Search will reduce the time users spend searching for files on their PC by 80 percent. And re-directed folder synchronization will be 50 percent faster than with Windows XP. (Speaking of WinFS, Microsoft will ship a preview of that relational storage technology when the Longhorn client is released in mid-2006. WinFS, when it ships, will enable even more powerful search than does Fast Search. However, Microsoft has not yet determined when it will ship WinFS or how it will package and distribute the technology.) Longhorn will more reliably resume from crashes, and include better application management and back-up and restore functionality. With Longhorn, creating ad hoc networks based on peer-to-peer technologies will be simple and seamless, opening up new avenues for group collaboration. Microsoft sees information workers creating these ad hoc networks in meetings so they can share presentations and collaborate on documents. A new domain-like networking scheme called a castle will replace workgroups for home users. In a castle type network, user credentials can move from machine to machine without a centralized server. Stay Connected Longhorn's ability to synchronize data between PCs and various portable devices will be unsurpassed. It will also be a wireless networking wunderkind. Or, as Microsoft puts it, Longhorn will let you "work together and accomplish more anytime, anywhere." There you go. Alpha Longhorn builds have hinted at what's to come: A universal synchronization manager called SyncManager will manage the connections between software and hardware. And the new wireless networking stack will support Anywhere Remote Access and a more seamless way to transition between networks, and, in the case of multiple available networks, automatically utilize the one with the most bandwidth. Next Generation Platform Conceptually, the Longhorn platform will be based on Avalon (presentation subsystem), Indigo (messaging and Web services), and the WinFX programming model, which is based on .NET managed code. Last August, Microsoft revealed that these technologies would be provided "down level" to users running Windows XP with Service Pack 2 and Windows Server 2003 with Service Pack 1. It would seem, peripherally, that Longhorn doesn't have a lot of unique technology to offer developers. That's not quite true. First, by providing these technologies to existing users, Microsoft is dramatically expanding the markets for applications and services based on Avalon and Indigo, giving developers incentive to adopt these technologies more quickly. In this way, WinFX will perform the same role the Win32 API did over a decade ago. Second, Longhorn will include unique new features that are not available to XP SP2 users, making that platform more valuable to Longhorn adopters. The most obvious of these, of course, is the Aero user interface, which will make video-quality 3D effects a natural part of the PC experience. One thing users should be aware of is that Longhorn will include a new kernel and will thus not offer the same level of compatibility with legacy 16-bit and 32-bit code that Windows XP does today. For business users, Microsoft believes that Virtual PC 2007 will help broaden corporations' compatibility options. But the company will also ship an early release of the Longhorn Compatibility Toolkit in 2005 to get users ready for the changes.
Microsoft Longhorn
Page 3 of 9
WinFS The Longhorn generic storage subsystem, code-named "WinFS," can store data of all types and use one mechanism to access it. This is a huge change in an OS that has relied on multiple, incompatible storage for data including the registry, event log messages, contact information, and e-mail, or simply used multiple flat files for data such as images and audio. Since WinFS is implemented using database technologies, you get an efficient and flexible mechanism to query for data items, the ability to replicate data to stores on other machines, and facilities to handle backups and restores. WinFS provides T-SQL views of the Item tables, with one view per item type. To enforce the security of the store and the consistency of the data, the data can only be read through the views and can only be modified using stored procedures. WinFS type is an item that is made up of elements that are either items, nested elements, or scalar types—or a collection of any of these. An item is the unit of consistency and coherence, so when an item is copied or deleted, all the elements within the item are also copied or deleted. A nested element can only be part of a single item. This behavior is different from the way it works in .NET. For example, a System.Storage.Contacts.Person object has a property called PrimaryName that is a nested element of type FullName. If you create two Person objects with the same PrimaryName (for example, a father and son who have the same name) then you should create two FullName objects, one for each Person object. If you use the same FullName object for both Person objects you will get an exception when you try to save the Person objects to the store because although they are valid .NET objects, they are not valid WinFS objects.
WinFX The WinFX SDK provides you with a set of managed Application Programming Interfaces (APIs), documentation, samples, and tools that allow you to create a wide variety of applications for Windows. At a high level, WinFX consists of these basic components:
•
.NET Framework 2.0
•
“Avalon” Presentation Subsystem
•
“Indigo” Communication Subsystem
.NET Framework2.0 The Microsoft .NET Framework version 2.0 Beta extends the .NET Framework version 1.1 with new features, improvements to existing features, and enhancements to the documentation. This section provides information about some key additions and modifications. The core API contains classes that are shared by all types of WinFX applications. They are largely part of the System namespace as well as descendants such as System. Collections. The .NET Framework APIs include support for:
•
Basic value and reference types, such as Int32, String, and Uri
•
Collections and Data Structures
•
Data
•
Graphics and Drawing
Microsoft Longhorn
Page 4 of 9
•
Input/Output
•
Basic networking
•
Threading and runtime services
•
Security
The .NET Framework also provides support for creating Web applications and Windows applications. ASP.NET is a unified Web platform that provides all the services needed to build enterprise-class Web applications. The classes that make up the API are largely part of the System. Web namespace, or its descendants.. Windows Forms is a platform for developing Windows client applications. A Windows Forms application can also act as the local user interface in a multi-tier distributed solution. Windows Forms extends the core API with a clear, objectoriented, extensible set of classes that enable you to develop rich Windows client applications. The classes that make up the API are largely part of the System.Windows.Forms namespace, or its descendants. For details, see Windows Forms. “Avalon” Presentation Subsystem “Avalon” is the code name for Microsoft’s unified presentation subsystem for Windows. It consists of a display engine and a set of managed classes that allow you to create rich, visually-stunning applications. "Avalon" is a new graphics subsystem that will enable developers to build applications that provide breakthrough user experiences. It provides a unified architecture for presenting user interfaces, documents and media. “Avalon” also will enable developers to easily take advantage of leading-edge graphics hardware, and will provide native support for declarative, markup-based programming, making it simpler to build Windows-based applications. “Avalon” also introduces “XAML”, which allows you to use an XML-based model to declaratively manipulate the “Avalon” object model. The classes that make up the API are largely part of the System.Windows namespace or its descendants. The primary components are:
•
An application model with support for navigation, windows, and dialog boxes
•
UI data binding
•
A rich set of extensible layout and control objects
•
2D and 3D graphics
•
Animation
•
Media
•
Documents
XAML XAML (Extensible Application Markup Language) is a markup language that maps XML markup to objects in the .NET Framework and WinFX™, enabling developers and designers to work together to create user experiences much the way HTML enables developers and designers to create user experiences. XAML is not Avalon specific, but it is designed to work with the type system of the .NET Framework’s common language runtime.
Microsoft Longhorn
Page 5 of 9
“Indigo” Communication Subsystem "Indigo" is a platform for building secure, reliable, transactional distributed applications based on Web service standards. It unifies a broad array of distributed systems capabilities in a compose-able and extensible way, spanning transports, security systems, messaging patterns, encodings, network topologies and hosting models. “Indigo” is a new Service-oriented communications infrastructure built on top of web services protocols. The advanced web service support in “Indigo” provides interoperable secure, reliable, and transacted messaging. The “Indigo” service-oriented programming model is built on the .NET Framework and radically simplifies development of connected systems. “Indigo” unifies a broad array of distributed systems capabilities in a composable, extensible architecture that supports multiple transports, messaging patterns, encodings, network topologies, and hosting models. It is the next version of several existing products: ASP.NET’s web methods (“ASMX”) and WSE, .NET Remoting, Enterprise Services, and System.Messaging. The classes that make up the “Indigo” API are largely part of the System.ServiceModel namespace and its subnamespaces. “Indigo” supports a variety of scenarios, including:
•
One-way and duplex messaging
•
Synchronous and asynchronous remote procedure calls
•
Callbacks
•
Sessions
•
Multi-contract services
•
Transport- and message-based security, reliability, and ordered delivery
•
Queued messaging
•
Transaction support
New interface for Windows is called WinFX™ - a comprehensive programming model built on the managed code technology pioneered in the .NET Framework. If you know how to write managed code on the .NET Framework today, WinFX will seem like second nature, because it’s a superset of the .NET Framework, optimized for Longhorn and exposing all new system functionality. If you’re a Win32 programmer, your existing applications can incorporate WinFX-based functionality very easily. Will there be different Windows Longhorn versions? Yes. Like Windows XP, Windows Longhorn will ship in different editions, though they might change from today's Home, Professional, Tablet PC, Media Center, 64-Bit Professional (Itanium), Professional Edition x64, and Embedded Editions. So what will be new and different in Windows Longhorn? Here's what we know about Longhorn at this early stage:
•
Longhorn will feature a task-based (or "iterative") interface that goes far beyond the task-based interface found today in Windows XP. Microsoft has been working to move beyond the dated desktop metaphor still used by most desktop operating systems. This new user interface, or "user
Microsoft Longhorn
Page 6 of 9
experience," is code-named "Aero" and is based on a new .NET-based graphics API called "Avalon," which replaces earlier graphics APIs such as GDI and GDI+, the latter of which debuted in Windows XP.
•
The Longhorn Start Menu and task bar will be enhanced with a new Sidebar component that can optionally appear locked to one side of the desktop. The Sidebar is an XML-based panel that includes links to local and remote resources.
•
Longhorn will require 3D video hardware to render special effects that will make the screen more photorealistic and deep. This doesn't mean that the basic windows and mouse interface is being replaced, just that it will look a lot better.
•
Longhorn will optionally include the Palladium security technology Microsoft is developing with Intel and AMD (see the next question for details).
•
Longhorn will include new anti-virus (AV) APIs that will help developers more easily integrate their wares into the base OS. Microsoft will also offer Longhorn customers a subscription-based AV feature that use AutoUpdate to keep your system up-to-date with new virus signatures.
•
Longhorn will include integrated recordable DVD capabilities and will work with every type of recordable DVD format. Digital media enthusiasts will be able to copy video from a digital camcorder directly to recordable DVD, bypassing the system's hard drive entirely, if desired.
•
Longhorn will include an advanced version of the successful Error Reporting Tool (ERT) that shipped in Windows XP; the goal is that only a small number of customers should have to report a bug to Microsoft before the company fixes it and ships the fix electronically and automatically to users.
•
Longhorn will include a new Setup routine that installs the OS in about 15 minutes.
•
Longhorn will feature hundreds of new APIs that will let provide access to the new system's features. The Win32 API from previous Windows versions is being replaced by a new .NET-based API called WinFX, for example. It will also feature a new communications and collaboration subsystem, dubbed Indigo.
One thing that has changed is that the initial release of Longhorn will no longer include the Windows Future Storage (WinFS) relational database-based storage engine as originally planned. Instead, Microsoft will deliver WinFS as a free out-of-band upgrade for Longhorn users a year after Longhorn ships. I keep hearing that WinFS is a new file system. Is Microsoft abandoning NTFS? No. WinFS is implemented as an add-on to NTFS and is not a completely new file system. Rather, it is a new storage engine built on the NTFS file system. So what's the point? Microsoft is trying to make it easier for you to find your data on our ever-increasing hard drives. By adding relational database capabilities to the file system, it will take less time to find documents, email, and other data. After all, as one Microsoft executive asked me recently, "Why can we find anything we want on the Internet in seconds, but it takes so long to find our own data on our own PCs?" In addition to the underlying WinFS technology, Microsoft is also adding a new file system concept called Libraries, which will organize like collections of data in Longhorn, regardless of where they are physically stored in the system. For example, a Photos & Movies Library would collect links to every digital photo and digital video on your system. "I should not care about location when I save," says Microsoft VP Chris Jones. "Why can't I just click on my computer and it shows me my documents? It is a computer. It should know what a document is, what I have edited and annotated, what I have searched for before, and what other places I have looked for documents. It is not just documents on my computer I am looking for. It is documents I care about." So what's changing from a developer's standpoint?
Microsoft Longhorn
Page 7 of 9
In the technology generations leading up to Longhorn, Microsoft has been moving to a .NET-based managed code environment dubbed WinFX, and the Longhorn generation will finally mark a clean split with the Win32 APIs of the past. That is, Win32 will be in maintenance mode, and all new development will occur with WinFX managed APIs. One such API, Avalon, forms the basis for the new Desktop Compositing Engine (DCE) in Longhorn that replaces GDI and GDI+. These and other new Longhorn APIs will utilize the XML Application markup language (XAML) to make Longhorn more accessible to developers than ever before. The idea is to significantly reduce the number of APIs and make the APIs more standardized. Today, there are over 76,000 Win32 APIs, and countless wrappers. With Longhorn, Microsoft hopes to reduce the API set to 8,000 to 10,000. Another significant change in Longhorn involves device drivers. In the past, Microsoft allowed customers to use nonsigned drivers, which helped compatibility, but caused stability problems. No more: In Longhorn, users hoping to take advantage of the system's exciting new capabilities will only be able to use signed drivers. Developers interested in Longhorn should examine the Visual Studio 2005 "Whidbey" release, currently in beta, and the Longhorn SDK. which includes developer-accessible UI components and behaviors. This sounds like a huge change from today's Windows. Will my current applications still work with Longhorn? Yes. Microsoft has even pledged to retain DOS compatibility with Longhorn, though it's currently unclear whether DOS support will be improved over what's available today in Windows XP. What's with this Palladium stuff I keep hearing about? One of the most exciting aspects of Longhorn is its optional integration with Palladium, Microsoft's technology for realizing its Trustworthy Computing vision. Palladium--now called Next Generation Secure Computing Base (NGSCB)--is basically a secure run-time environment for Windows and other operating systems that allows a coming generation of software applications and services to protect the end user from privacy invasion, outside hacking, spam, and other electronic attacks. Palladium requires special hardware security chips and microprocessors (which will be made by Intel and AMD) and doesn't interfere with the normal operation of the PC. That is, Palladium-based PCs will still operate normally, working with legacy operating systems and applications. But specially-made Palladium applications and services will offer a range of features of functionality not found in the non-Palladium world, and if the initiative is successful, we'll one day be running only Palladium-based software. If you're familiar with the .NET model, you might be aware of the notion of "managed" and "non-managed" (or legacy) code. Palladium will institute a similar model for PC software, where a trusted execution mode is used for Palladium applications and services and the old, "untrusted" mode is used for legacy code. Microsoft designed Palladium around the following ideals:
•
Palladium will tell you who you're dealing with online, and what they're doing. It will uniquely identify you to your PC and can limit what arrives (and runs on) that computer. Information that comes in from the Internet will be verified before you can access it.
•
Palladium protects information using encryption to seal data so that "snoops and thieves are thwarted." The system can maintain document integrity so that documents can't be altered without your knowledge.
•
Palladium stops viruses and worms. The system won't run unauthorized programs, preventing viruses from trashing your system.
•
Palladium stops spam. Spam will be stopped before it even hits your email inbox. Unsolicited mail that you might actually want to receive will be allowed through if it has credentials that meet your user-defined standards.
•
Palladium safeguards privacy. In addition to the system's ability to seal data on your PC, Palladium can also seal data sent across the Internet using software agents that ensure the data reaches only the proper people. Newsweek reports that the agent has been nicknamed "My Man," a goof on ".NET My Services," "My Documents," and other similar names at Microsoft.
•
Palladium controls information after it's sent from your PC. Using Digital Rights Management (DRM) technology, Palladium can be used to securely distribute music, movies, and other intellectual property securely over the Internet. Movie studios and the recording industry could use this
Microsoft Longhorn
Page 8 of 9
technology to let their customers exercise their fair use rights to copy audio CDs and movies, for example. "It's a funny thing," says Bill Gates. "We came at this thinking about music, but then we realized that e-mail and documents were far more interesting domains." Gates says that Palladium could ensure that email designated as private could not be forwarded or copied to other people, for example. Or, the Newsweek reports reads, "you could create Word documents that could be read only in the next week. In all cases, it would be the user, not Microsoft, who sets these policies."
Microsoft Longhorn
Page 9 of 9