940 likes | 1.3k Views
Microsoft Windows Vista: Beta Preview. Rob Bergin Senior Systems Engineer Emerging Technologies rbergin@gmail.com. Session Outline. Many Faces of Vista (7 versions) Bill Gates WinHEC presentation Quick history of Windows 64-bit architecture Computing for Everyone
E N D
Microsoft Windows Vista:Beta Preview Rob Bergin Senior Systems EngineerEmerging Technologiesrbergin@gmail.com
Session Outline • Many Faces of Vista (7 versions) • Bill Gates WinHEC presentation • Quick history of Windows • 64-bit architecture • Computing for Everyone • Longhorn (next-gen Windows) • Windows Vista Preview • Virtual Server 2005 SP1 • Overview of enhancements • Windows virtualization futures
Ars Technica’s Versions 1-6 • Starter Edition • “It will limit users to three concurrent applications, and provide only basic TCP/IP networking, and won't be suitable for most games.” • Home Basic Edition • See Windows XP - Home • Home Premium Edition • “the next-generation of Media Center capabilities, including support for HDTV, DVD authoring, and even DVD ripping backed up (of course) by Windows DRM” • Windows Vista Professional Edition • “support for non-Microsoft networking protocols and AD Domains” • Small Business Edition • “includes a networked backup solution” • Enterprise Edition • “Virtual PC integration, encrypt an entire volume of information”
Ars Technica’s Versions #7 • Ultimate Edition (per Paul Thurrott) • “The best operating system ever offered for a personal PC, optimized for the individual. Windows Vista Ultimate Edition is a superset of both Vista Home Premium and Vista Pro Edition, so it includes all of the features of both of those product versions, • Game Performance Tweaker with integrated gaming experiences, • Podcast-like creation utility (under consideration, may be cut), • online "Club" services (exclusive access to music, movies, services and preferred customer care) • Microsoft is still investigating how to position its most impressive Windows release yet, and is looking into offering Ultimate Edition owners such services • extended A1 (anti-virus/anti-spyware ) subscription • free music downloads • free movie downloads • Online Spotlight • entertainment software • preferred product support • custom themes
John Dvorak’s Versions • Vista Kiddie Edition • “Bringing back Microsoft Bob” • Microsoft Vista—Porn Edition • “All the great porn sites would be pre-bookmarked. The screen savers and wallpaper would be all porn all the time. For users at work, there would be a built-in "boss" key capability that would switch the machine to a faux Enterprise edition.” • Microsoft Vista—Kitchen Edition • “a rugged kitchen edition with a file system specifically suited to storing recipes and videos of Jacques Pepin cooking his way” • Microsoft Vista Gamer Case-Mod Edition • “the OS could control flashing lights inside the machine or make the disk-drive light blink wildly. It can be ultraoptimized for games. Perhaps Microsoft could return to the efficient DOS code for that! 64-bit architecture”
John Dvorak’s Versions • Microsoft Vista for Desperate Housewives • “Hey, wait--that's a TV show. There would be a copyright problem." Not if it's a test–marketed, licensed product and sold specifically to fans of the show, not to mention actual desperate housewives.” • Microsoft Vista for Costco Customers • For the multi-PC house, an eight-pack! • Microsoft Vista Linux Distro Edition • “Actually be MS-Linux with the same GUI as Vista” • Microsoft Vista OS-X Special Edition • This would be a version that looked and felt exactly like OS-X, in case OS-X for the x86 gets into the wild and starts spreading. Microsoft can say it's already been there and done that with OS-XP.
Windows Vista Brief overview
Longhorn • Codename for the next major version of Windows • Major release (although most technologies have been seen before) • Currently in alpha technical previews • Due for release 2006? (when ready!) • Interim updates • e.g. Windows XP Service Pack 2 • Windows 2003 Server “SE”
Document UI Media Objects T/SQL XML Remoting PeerStore Schedules Models Services Schemas Collaboration Adaptive UI Engine People Groups Controls Signaling Desktop Services Desktop Window Manager ObjectSpaces Contacts Media Synchronization(WinFS, Win32..) Connector Page/SiteComposition Presentation Object Manager Desktop Composition Engine Documents .. DataSet Common Services (Router, Queue, Topic…) Policy Engine Personalization & Profiling Services Media Services Data Model InfoAgent (PreferenceRules..) SQL XML Message Exchange Channels (Stream, Reliable…) Items Membership and Security Services Animation andComposition MediaProcessing Capture and Sourcing Windows Forms ChannelSecurity Provider Framework Transport Channels (IPC, HTTP, TCP…) Relationships FileSystem Services (MetaDataHandlers..) Providers Health Monitoring/ Recovery Engine Hardware Rendering Software Rendering and Sinks Extensions Communications Manager (Port) ADO.NET ASP.NET CLR Network Class Library Base Class Libraries Networking Memory Manager Code Execution Loader Security Serialization Network Services Demand Activation and Protocol Health Hosting Layer PNRP Native WIR SIP TCP Listener UDP Listener IPC Listener Storage Transactions GDI/GDI+ Window Manager Global Audio Engine DirectXGraphics Lightweight Transaction Manager TransactionCoordinator Redirections Internet Connection Firewall Graphics drivers Protocols DDI Input Manager Audio Drivers DirectX Graphics Mini port KernelTransactionManager CommonLoggingFile System TransactedFile System NTFS FAT 16/32 Filter Engine TPC, UDP IPV4, IPV6 IPSEC QOS HTTP Listener Plug andPlay MemoryManager PowerManager Config.Manager Process Manager SecurityReference Monitor LPCFacility File System Cache IO Manager Device and File System Drivers .. WIR NDIS .. Kernel Mode Kernel Hardware Abstraction Layer Longhorn Architecture Presentation Storage Communication Avalon WinFS Indigo Base Operating System Services Location Service
WinFX Client Application Model Web & Service Application Model Data Systems Application Model Mobile PC & Devices Application Model Command Line Compact Framework System.Console Win FS Yukon Mobile PC Optimized Avalon Windows Forms ASP.NET / Indigo NTService System.Data.SqlServer System.Windows.Forms System.Windows System.Storage System.Web System.Windows System.Windows.Forms System.ServiceProcess Communication Data Presentation System.Collaboration System.Search System.Discovery System.Data System.Windows System.Messaging SqlClient DataSet RealTimeEndpoint UI Element Explorer Media Annotations System.DirectoryServices ActiveDirectory TransientDataSession SqlTypes Mapping Documents Controls Animation System.Remoting Monitoring SignalingSession SqlXML ObjectSpaces Text Element Dialogs Controls System.Runtime.Remoting Logging Uddi Media OdbcClient ObjectSpace Shapes SideBar Control Relevance Activities OleDbClient Query Shape Notification Panel Navigation OracleClient Schema Ink Design System.Web.Services System.MessageBus Transport Queue Web.Service System.Storage Port PubSub System.Windows.Forms System.Web.UI Description Item Core Channel Router Forms Page WebControls Discovery Relationship Contact Service Policy Control Control Adaptors Protocols Media Location Peer Group Print Dialog HtmlControls Design Audio Message Design MobileControls Video Document System.Net System.Web Images Event HttpWebRequest NetworkInformation System.Help System.Speech Personalization System.Xml FtpWebListener Sockets System.Drawing Recognition Synthesis Caching Schema Xpath SslClientStream Cache SessionState System.NaturalLanguageServices Serialization Query WebClient Fundamentals Security Base & Application Services Configuration Deployment/Management System.Windows.TrustManagement System.Timers System.Text System.Web.Configuration System.Collections System.Web System.Security System.Globalization Generic System.MessageBus.Configuration System.Location Administration Permissions Authorization System.Web.Security System.Serialization Extension System.Configuration Management System.ComponentModel Policy AccessControl System.Threading Management System.Resources System.CodeDom Principal System.Management Credentials System.MessageBus.Security System.Runtime System.Reflection Token Cryptography System.Deployment Serialization InteropServices System.EnterpriseServices System.Diagnostics CompilerServices System.Transactions
Windows Vista Aero Interface/Shell/GUI
Windows Vista WinFS
WinFS Is • All end-user data lives in Longhorn • New user experience in Longhorn Shell • A trustworthy place to store data • Data model built on relational database technology • Filesystem capabilities built on NTFS • Everyday Information - domain-specific schemas • Services that make data active
Items The new atomic unit of data Items have subsumed Files Copy, put in Folders, etc. A group of simple and complex types that represent data Defined in a schema, arranged in types Structured, Semi-Structured, and, Opaque Persisted Relationships Explicitly relate Items together E.g.; Author binds Document to Contact Schema can model complex items Containment, reference, embedding, categories, etc. Extensions Provide ability to add new data to existing Item types Models Framework WinFS Data Model APIs Objects T/SQL XML Services Schemas People Synchronization(WinFS, …) Documents InfoAgent (Rules, …) … Core WinFS Data Model Items Operations Relationships Filesystem Srvcs (Handlers, …) Extensions Relational Engine NTFS
Windows Everyday Information Documents, Messages, Annotations, Notes Media, Audio, Video, Images Events, Appointments, Locations, UserTask Windows System SystemTasks, Config, Programs Explorer, Help, Security New Schemas Developers can define own data shape Comprised of Scalars Complex Types XML Binary/Filestream Models Framework WinFS Schemas APIs Objects T/SQL XML Services Schemas People Synchronization(WinFS, …) Documents InfoAgent (Rules, …) … Core WinFS Data Model Items Operations Relationships Filesystem Srvcs (Handlers, …) Extensions Relational Engine NTFS
WinFS Schema <ItemType Name="Person” BaseType="Core.Contact" ... > <Property Name="PersonalNames” Type="MultiSet“ MultiSetOfType="FullName“ Nullable="true"> <Property Name="AddressLine“ Type="WinFS.String" Nullable="true"> <RelationshipType Name="Employment“ BaseType="WinFS.Relationship“ AllowsHolding="true“ AllowsEmbedding="false“ AllowsReference="true"> <Property Name=“IrisScan” Type=“WinFS.FileStream” …/> </ItemType> Street Street City City State State Zip Zip Street Street Street Street City City City City State State State State Zip Zip Zip Zip LastName LastName FirstName FirstName Table View of Person Table View of Person IrisScan IrisScan Addresses Addresses Name Name ItemId ItemId NTFS stream NTFS stream Example Example
Longhorn And Filesystems • Files can live solely in an NTFS volume • Available for boot • E.g., C:\Windows is in NTFS • Volume can be mounted on down level machine • E.g., Firewire drive on both XP and Longhorn • Items can live solely in WinFS • File-backed Items • Accessible through standard Win32 APIs • Metadata Handlers get data in and out of file streams • User data moved into WinFS • I.e., C:\Documents and Settings • Has Import/Export utilities
Models Framework WinFS ServicesSynchronization • Synchronize one WinFS with another • Keep My Contacts and My Files in sync across my home machines • Peer to Peer sharing • Synchronize WinFS with other data sources • Keep My Contacts in sync with online email contacts, enterprise CRM, etc. APIs Objects T/SQL XML Services Schemas People Synchronization(WinFS, …) Documents InfoAgent (Rules, …) … Core WinFS Data Model Items Operations Relationships Filesystem Srvcs (Handlers, …) Extensions Relational Engine NTFS
Synchronization Overview • Approach • Multi-master replication • Replicas make changes independently • Net-change synchronization • Looking at cumulative changes, not logs • A set of common services for all data sources and all schemas • Change tracking, change enumeration, conflict handling, etc. • Extending • Schema design • Granularity of change units is declared in the WinFS schemas • Custom conflict resolution handlers • Extend the system conflict policies with code • Synchronization Adaptors • Outside datasources for one way or bidirectional synchronization
Users want to control how their PCs behave It’s called a personal computer after all Every aspect of the system can be personalized InfoAgent enables rich, flexible customization “When I receive a high priority email from a customer, show me a popup message if I’m at my desk, otherwise forward it to my cell phone” “When I download new photos from my camera, relates them to the events on my calendar” Models Framework WinFS ServicesInfoAgent APIs Objects T/SQL XML Services Schemas People Synchronization(WinFS, …) Documents InfoAgent (Rules, …) … Core WinFS Data Model Items Operations Relationships Filesystem Srvcs (Handlers, …) Extensions Relational Engine NTFS
Notifications And InfoAgent ‘Active Data’ – Subscribe to WinFS changes • Item change subscriptions • Item Domain containment/query subscriptions InfoAgent Integration • Inclusive set of events, contexts, and actions • Preferences stored as WinFS items • Unified management of notification rules Events Preferences Actions Contexts
Longhorn Microsoft Shell
Weak cmd shell Weak language spotty coverage GUI focus Hard to automate SDK Focus Programmers Foundation for task-based management Focused on power users and admins Provides: Interactive shell Cmdlets Utilities Scripting language Remote scripting Microsoft Shell Problem Solution: MSH
Longhorn Deployment
ClickOnce Vision Bring the ease & reliability of web application deployment to client applications.
Install Goals • Reduce install fragility • Allow what’s low impact • Ex. App file copy, start menu integration, etc… • Can always undo what was installed • Disallow what’s not low impact • Apps never run with admin rights (LUA) • Driver registration, COM objects, etc.. • Custom actions; large source of install uncertainty • Expand the definition of “low impact” • Requires OS Changes. Starts with Longhorn
Deployment Options • ‘Installed’ Applications • From Web, UNC or CD • Start Menu, Add/Remove Programs • Varied update options • ‘Launched' Applications • App launches but doesn’t “install” • No Start Menu, Add/Remove Programs • Always update on launch
Update Options • On App Startup • If found, ask user to update app • After App Startup • If found, ask user to update on next run • Programmatic • Integrate update experience into app • Required • Update can specify minimum version required • Background Updates • Updates drizzle in silently – like Windows Updates • “Longhorn” only
Secure Updates • Only the original deployer can update • No auto-deployment of viruses • Manifests are signed • XMLDSIG • Deployer key needed to publish updates
“Longhorn Web” Apps • Integrated with Browser • Install UI built into browser • Best possible user experience • Leverages Avalon app/navigation model • No shell presence (ex. Start Menu shortcut) • Runs in semi-trust • Progressive Install • App automatically installs as it’s used • File level install