Avalon: Longhorn's Display Model
Yet another dramatic change in the Longhorn OS is the elimination of the Windows graphics device interface (GDI), which is the basis for display in every previous Windows version. Instead, Longhorn's display is based on WinFX, which uses a 3-D graphics model similar to the model that game programmers use. WinFX has major implications for both users and network administrators: Graphics performance (particularly in 3-D applications) will probably improve.
At PDC, one demonstration showed Longhorn operating with an animated screen background that had little or no impact on foreground computer performance; a Graphics Processing Unit (GPU) handled the animation. The catch, of course, is that any computer running Longhornincluding serverswill require a GPU and dedicated video memory. Although you can feasibly run the PDC Longhorn pre-beta version on a computer without dedicated video memory, I can say from experience that performance is awful.
Microsoft has revised Longhorn's top-level UIcode-named Aeroso that it includes a sidebar feature that permits a limited number of applications to run in small tiled windows on one side of the display. (The display space that the sidebar uses isn't available for nonsidebar applications.) The sidebar is intended for dynamic applications such as stock tickers and WebCamsin most Longhorn screenshots, including Figure 1, it includes an analog clock. Developers choose whether to add sidebar support to their applications (basically, this support involves providing a mode in which the application runs in a small, fixed-size window), so not all applications will use it. Pre-Longhorn legacy applications, in particular, won't be able to use this functionality.
Wrangling Longhorn
The pre-beta version of Longhorn that PDC attendees received is available through the Microsoft Developer Network (MSDN), but it's clearly a work in progress, and users should be aware of several caveats before attempting to install it. Besides a GPU and dedicated video memory, the Longhorn pre-beta requires a local DVD drive. Microsoft isn't making Longhorn available on CD-ROM, probably because it takes up so much spacemore than 5GB for Longhorn and the associated software development kit (SDK) in versions for 64-bit and 32-bit AMD and Intel processors.
Instead of providing a product key for the pre-beta, Microsoft requires users to log on to a secure Web site with a pre-beta ID and password. This ID and password, which are associated with a machine name but not with a particular hardware configuration, generate a product key. If you find that the product key doesn't run on one system, you can install it on another. After you install the product key, you must activate it within 14 days.
End-user systems require 256MB of RAM, an 800MHz processor, and a DX7 GPU with 32MB of dedicated VRAM. For developer systems, Microsoft recommends 1GB of RAM, a 1.6GHz processor, and a DX9 GPU with 64MB of dedicated VRAM. In practice, the PDC pre-beta appears to have a memory footprint of 400MB to 500MB, so performance will be poor on systems that have less than 512GB of RAMand as with all Windows versions, more memory is better.
The pre-beta doesn't support upgrading an existing Windows installation to Longhorn, so a clean installation is your only option. I've discovered, however, that you can install it in a dual-boot configurationthe only requirement is to install it on a separate partition, which must be NTFS-formatted. The OS files take up about 2.6GB of disk space, exclusive of data files.
The pre-beta release notes provide a long list of features that don't work in the current versionfor example, data corruption can occur when writing to (or formatting) CD-W or DVD-W discs, Windows File Protection (WFP) is disabled, only administrators can schedule tasks, some features don't work correctly on 64-bit systems, and several Microsoft Outlook Express features are disabled. Some Dell computers require a BIOS update before you install Longhorn. On my test bed, a locally constructed system built on an ASUSTek Computer motherboard with a 1GHz AMD Athlon CPU, Longhorn didn't recognize my audio hardware. Microsoft states clearly in the pre-beta documentation that this version of Longhorn isn't intended for production environments.
The existence of an industrial-strength relational database engine on each computer that runs Longhornwhether a desktop, server, or laptoppaves the way for a dramatic change in programming. A new release of Visual Studio (VS) and a related update to the Microsoft .NET runtime libraryboth code-named Whidbeyexploit this shift. The new version of VS is built around a new Extensible Application Markup Language (XAML) programming model that provides Windows programmers with some of the same data independence that has long been available to HTML (i.e., Web) programmers.
For example, XAML lets you describe a dialog box in terms of its width and height in inches or percentages of the available display space. This functionality also lets you use a simple text editor to perform Windows programmingjust as you can edit HTML in Notepad. For example, the XAML document that Figure 2 shows, from Introducing Longhorn for Developers (http://msdn.microsoft.com/longhorn/understanding/books/rector/default.aspx), defines 14-point red text.
The beauty of this functionality is that you can change the point size and color at will without having to recompile the program. And the information resides in an XAML file that you can edit with a text editor, rather than in the Windows registry.
The XAML programming model, coupled with Longhorn's database features, promises a quantum leap in programmer productivity for both server and desktop. At PDC, for example, Microsoft demonstrated adding per-user logon security (not just password protection) to an existing Web siteit took about a dozen lines of code. The same task today would take even the most experienced programmer several weeks to write from scratch.