These are the latest topics at Windows 8 Forum.
Delivering reliable and trustworthy Metro style apps
As we developed the app model for Windows 8 and the new Metro style apps, a key architectural requirement has been to deliver apps to customers that can be used with confidence--confidence that apps will be well-behaved with respect to resources, that apps will not interfere with other apps, that apps use system resources with your permission, that apps can be installed and uninstalled with ease, and so on. These attributes require a robust platform and strong set of tools for developers. This is an effort that requires a fresh start and cannot be retrofitted on an existing system. Windows 8 is a fresh start in this regard. This post details some of the work we have done at the platform level to deliver reliable and trustworthy Metro style apps. This post is authored by John Hazen, a program manager on our Developer Experience team. --Steven
One of our core principles in the development of the Windows 8 Metro style app platform was to ensure that users would have confidence in their apps. This is a mission we’re in together; in this post, I explain our vision for app confidence and reliability and help you build confidence by design into your apps.
Let me start by explaining what we mean by confidence. Picture a customer browsing the Windows Store looking at a Metro style app; we want them to be thinking only about the app and whether or not it is right for them. We want them to assume—in fact be confident—that the app will behave the way they expect and thus will perform well on their system, will use only the data and information they authorize, and will harmoniously co-exist with their other applications.
Our goal with the platform is to help us all build great apps that embody this vision of confidence so that we get confidence by default. To that end we made investments throughout the system. Here’s how we picture it:

App Confidence: Windows 8 SDK for Metro style apps, Windows App Certification Kit, App Signatures,
App Container, Ratings and Reviews, Store Onboarding, Frictionless Install, Telemetry Feedback
This post covers these areas and towards the end goes into depth on our app capabilities. First, a quick overview:
- Windows Store – For customers, it starts with the Store, their one-stop-shop for Metro style apps. To get into the Store your app is reviewed for both technical and policy compliance, including security checks. After it’s published to the Store, your app will be rated and reviewed by the community. Together, the onboarding process and community reviews help create an environment in which customers can try apps with confidence.
- App install – Windows 8 handles all the details of deploying apps on your behalf so your customers don’t have to worry that installing, updating, or removing one app will adversely affect other apps.
- SDK – The Windows 8 SDK for Metro style apps provides a well-defined set of APIs that help you build reliable apps that conform to the Store onboarding requirements and provide the best experiences for your customers.
- App container and capabilities – Windows 8 provides a greater degree of separation between apps than was possible with traditional desktop apps, so you can build apps that interact with each other in more predictable ways, giving customers a more consistent experience.
We of course recognize that any onboarding process can be gamed, API sets can be abused, SDK limits cleverly avoided, and that app containers are not impenetrable. But we are confident that the investments we made in this new ecosystem will help you build apps that delight customers. This multi-dimensional approach is the most effective way to build customer confidence and we will improve each dimension over time as we learn from experience. Now let’s talk about confidence.
The Windows Store
Several folks on the team have shared quite a bit on the Windows Store Blog about the overall design and plan for the Store. If you have not had a chance yet, read about the Store, because it plays a central role in helping you connect with your customers. Let’s look at a few ways in which the Store helps build confidence in the app ecosystem.
First, the Store onboarding process establishes a consistent baseline for app quality and reliability. The technical conformance tests, contained in the Windows App Certification Kit, help you know that you meet the expected standards before you submit your app. As you and other devs continue to deliver apps that meet these standards, customers will be excited to discover and try out new apps, creating a stronger app ecosystem for all of us.
The Store also makes it easy for customers to provide ratings and reviews that will help the best apps stand out, enticing even more customers to try out the top rated apps with confidence. In the sample app listing page below, note the highlights not just for ratings and reviews, but also two other important elements of the app listing page. Prior to installing a new app, customers can see what permissions the app has once it is installed (more detail on this later in the blog). After installing an app if the customer has concerns about app content or behavior, they can easily report their concern and we can follow up with you to address any problems identified. Helping customers decide which apps best meet their needs and allowing customers to provide input and feedback is an important way to improve overall confidence in the Windows 8 app ecosystem.
App listing page from the Windows Store
Finally, the Store collects telemetry data that can help you investigate problems your customers see, including the number and types of crashes they suffered. We review this automated telemetry for indications that an app’s behavior is unreliable or inconsistent with the expectations of our customers. Our goal is to make effective use not only of the individual feedback that customers provide on apps through ratings and reviews, but also provide insight into how your app is actually behaving on customers’ machines and give you the opportunity to improve your app based on this data.
In all these ways, the Windows Store is your partner in connecting you with people who want your apps, and helping them have a great experience with your apps.
Apps are just a click away
When you have your customer’s attention on the app listing page, you don’t want anything to get in the way of your customer getting your app. On Windows 8, getting an app is a matter of clicking a single button. Customers no longer have to wade through a series of questions or click button after button. After logging into the Store, when they find something they like, they just click the button, confirm the purchase, and go!
The great news for you is that you don’t have to write a single line of installation code to make this magic happen; it is all provided for you as part of Windows 8. Not only is installation handled, but Windows uses digital signatures to ensure the integrity of your app all the way from the Store to installation and even when the app is loaded and running on your customer’s computer. If Windows detects that the app no longer matches its digital signature, it guides the customer to download a corrected version from the Store.
Because Windows installs each app in a discrete location with separate and private locations for each app’s data and settings, customers don’t have to worry that installing, or removing, one app will interfere with the behavior of other apps or their computer. Customers will be more willing to try more apps than ever before, knowing that installing and removing apps won’t degrade their experience over time (in fact, with Windows 8 contracts, each app you install makes the experience better). You benefit by knowing that there is little another app might do that will damage your customer’s experience of your app.
Having a single, verifiable, and consistent mechanism to install apps not only simplifies your work, it provides an easy and positive experience for your customers, giving them confidence to get even more of your great apps. You can learn more about app deployment in App packages and deployment.
Windows 8 SDK for Metro style apps
The better experience customers have with your apps, the more readily they will try new apps and updates as you release them. The Windows 8 SDK for Metro style apps is a great foundation for you to build apps that customers won’t hesitate to install.
We put a lot of thought into the API set we offer for Metro style apps, not only to simplify the Windows programming environment, but also to provide a well-tested platform on which you could confidently build your apps, knowing they will work well with the Windows 8 Metro style app model.
Resist the temptation to find ways to invoke APIs that are not included in the SDK. This ultimately undermines the expectations that customers have for your app. APIs that are outside the SDK are not guaranteed to work with Metro style apps either in this release or in future releases, so you may find that your app doesn’t function properly for all customers. These APIs may also not function properly in the async environment that is foundational to Metro style app design. Finally these APIs may undermine customer confidence by accessing resources or data that Metro style apps would not normally interact with. For all these reasons, we have provided checks in the Windows App Certification Kit to help you catch places where you might have inadvertently called interfaces not exposed by the SDK.
While it is possible to hide or obfuscate calls to APIs that are not included in the SDK, this is still a violation of customer expectations and Store policy. In the end, we have created this platform to help developers like you to build amazing apps that work well with the system and with other apps and devices to delight customers. Working with the Metro style SDK is fundamental to your realizing that goal.
Working well together and apart
A clean installation process is important to your customers, and the SDK helps you build apps that integrate well with the system. Beyond this, customers expect a high degree of reliability from your app and our platform. We help you achieve your reliability goals by providing a greater degree of separation between Metro style apps than is possible for traditional Windows desktop applications. On Windows 8, each Metro style app runs in the context of a unique app container that helps insulate it and its data from other Metro style apps.
App containers provide a few characteristics that are shared by all Metro style apps. They:
- Provide a dedicated environment for your app, including your own store for data and settings. You have little worry that some other Metro style app will change your app’s data, settings, or behavior.
- Help ensure that your app doesn’t accidently interfere with the reliability of the Windows platform itself, or accidently use your customers’ data or devices in ways they don’t expect.
- Provide a well-defined way to extend the capabilities of your app through declarations you make in the manifest and disclose to your customer in the app listing page.
Having this degree of separation makes it far easier to write apps that are reliable and respectful of the user. At the same time, we all want apps that interact well with one another. Windows 8 provides several mechanisms for Metro style apps to work with each other and with the platform to provide these satisfying experiences, including:
- App contracts, which are the glue that binds Metro style apps together and to the system UI.
- The FilePicker, which allows your app to interact with data the user selects.
- App capability declarations, which allow your app to programmatically interact with devices and data, when appropriate for your functionality.
These are all well-defined ways for your app to engage more deeply with other apps and the system. The app container exists to help you deliver on your customer’s expectations of reliability and respectful use of their system and data. The constraints of the app container are designed to help realize customers’ expectations for consistent and intuitive app behaviors, and using techniques that allow your app to run code outside of an app container is a violation of user trust and Store policy.
In our discussions with developers during this preview period, we have seen apps that have misunderstood or accidently misused some of these mechanisms, so let’s go into more detail about the app capabilities in particular.
App capability declarations
The app container can be extended in a variety of ways using capability declarations, each of which is designed to enable certain scenarios. Therefore, we recommend that you use them only under certain conditions. These capabilities fall into 4 primary buckets:
- Data libraries: By default, apps have no access to the customer’s data libraries, like the Music library, or the Documents library. We recommend that you use the FilePicker to interact with these libraries, but in some rare cases it is necessary for your app to be able to directly read and manage data in these locations.
- Device access: By default, apps can’t use devices that most users consider sensitive for their privacy, including the webcam, microphone, and location. When apps need these devices, they must both declare their intent, and get consent from the user.
- Network access: By default, apps have no access to the customer’s networks. Because most apps interact with the Internet, we enabled this particular capability in all the Visual Studio templates for Metro style apps. If your app needs more than just simple Internet access, you can read about your options below.
- User identity: These capabilities provide direct access to a particular customer’s corporate logon info, or to certificates associated with their identity. These capabilities, although rarely needed, are necessary for certain enterprise apps, and you might need to use them in scenarios like banking transactions in which a smartcard might be required for authorization.
Declaring a capability in any of these categories is as simple as checking it off in the Visual Studio manifest designer. But add capabilities only if they are critical to realizing a scenario for an app. During the Consumer Preview, we saw several apps submitted to the Store that declared every capability or a capability that was not essential for the app. So, while the list of possible capabilities is relatively short, it is worth reviewing in more detail each of these capabilities and how to use them.
Visual Studio's manifest designer
Data libraries
These capabilities grant your app access to user data that wasn’t necessarily created in your app. Users expect apps to be respectful of access to their private data. One way to honor the trust users place in your app is by declaring only the minimum access necessary for your app. In most cases you can avoid using these capabilities entirely by using the FilePicker, through which the user can browse files anywhere on their hard drive or network. For example, use the FilePicker to provide a File open experience, or to add Save as to your app in order to give your user the opportunity to save content from your app into their library locations or to removable storage.
| Manifest declaration | What it provides |
| musicLibrary | Provides the capability to add, change, or delete files in the Music Library for the local PC and HomeGroup PCs. |
| videoLibrary | Provides the capability to add, change, or delete files in the Videos Library for the local PC and HomeGroup PCs. |
| pictureLibrary | Provides the capability to add, change, or delete files in the Pictures Library for the local PC and HomeGroup PCs. |
| documentsLibrary | Provides the capability to add, change, or delete files in the Documents Library for the local PC. The app can only access file types in the Documents Library that are defined using the File Type Associations declaration. The app can't access Document Libraries on HomeGroup PCs. |
| removableStorage | Provides the capability to add, change, or delete files on removable storage devices. The app can only access file types on removable storage that are defined in the manifest using the File Type Associations declaration. The app can't access removable storage on HomeGroup PCs. |
During the Consumer Preview, we saw app submissions that declared these capabilities when they really didn’t need to. For example, apps declared documentsLibrary for a variety of reasons including:
- Storing app-specific settings in the documents library. The private store is designed to provide this function. You can learn more about app settings and storage here.
- Store a user-generated file. This is more properly accomplished using the FilePicker to allow the user to save the file to any location, including the documents library.
- Sharing a document with another app. The Sharing contract is designed for this purpose.
If your app is designed to be the primary handler on the system for a given file type, for example a Fax Viewer that needs to handle all .TIFF files in the user’s documents library, then declare this capability.
Device access
Many devices, like orientation sensors and accelerometers, are available to any app. But most customers consider certain devices more sensitive than others, given that they are strongly associated with user privacy. There are a lot of great apps you can build on these devices. For example, if you have a casual game that allows shared gameplay, using proximity is a great way to establish a connection between devices.
Because these devices are closely coupled to user privacy, Windows 8 ensures that if you declare the capability, the customer will be prompted to approve this access the first time your app tries to access the particular device. For example, if your app offers mapping, you likely want to access the customer’s geolocation data. The first time your app tries to get this info, the customer sees a prompt to approve your app’s access. This approval sticks until the customer decides to explicitly remove the access through Settings at a later time. Because the customer can decline your app’s access to these devices, even if you have added the capability to the manifest, design your app to handle the lack of access gracefully. For example, if the customer has denied your app access to the built in GPS, you could simply prompt the user to select their location from a map.
| Manifest declaration | What it provides |
| location | Provides access to the current location, which is obtained from dedicated hardware like a GPS sensor in the PC or derived from available network information. |
| webcam | Provides access to the webcam's video feed, which allows the app to capture snapshots and movies from connected webcams. |
| microphone | Provides access to the microphone's audio feed, which allows the app to record audio from connected microphones. |
| proximity | Provides the capability to connect to devices in close proximity to the PC via near field proximity radio. Near field proximity may be used to send files or communicate with an app on a nearby device. |
Network access
Most apps need an Internet connection, so the Visual Studio templates for Metro style apps include the internetClient capability by default. If your app doesn’t need to communicate over the Internet, you should remove this capability. The internetClientServer capability is generally used in peer-to-peer (P2P) scenarios like gaming or VOIP, but unless your app must open a port in the firewall, don’t use this capability. Use the privateNetworkClientServer capability when your app needs to communicate over private networks, for example between devices within a home, or over a corporate network connection.
| Manifest declaration | What it provides |
| internetClient | Provides outbound access to the Internet and networks in public places like airports and coffee shops. Most apps that require Internet should use this capability. |
| internetClientServer | Provides inbound and outbound access to the Internet and the networks in Public places like airports and coffee shops. This capability is a superset of internetClient. The internetClient capability doesn't need to be enabled if this capability is also enabled. |
| privateNetworkClientServer | Provides inbound and outbound access to Intranet networks that have an authenticated domain controller, or that the user has designated as either home or work networks. |
User identity
Most developers don’t need these capabilities. Use of these capabilities will be highly restricted and subject to additional onboarding policy and review. But there are cases where such capabilities are necessary and appropriate, for example some banks require two-factor authentication and need to allow customers to provide a smartcard that carries a digital certificate that confirms their identity. Other apps that are designed primarily for enterprise customers rather than consumers might need access to corporate resources that cannot be accesses without domain credentials.
| Manifest declaration | What it provides |
| enterpriseAuthentication | Provides the capability to connect to enterprise intranet resources that require domain credentials. |
| sharedUserCertificates | Provides the capability to access software and hardware certificates, such as smart card certificates, for validating a user's identity. When related APIs are invoked at runtime, the user must take action (insert card, select certificate, etc.). This capability is not necessary if your app includes a private certificate via a Certificates declaration. |
Building confidence
Customers want to safely enjoy Windows 8 and the apps you build. The Metro style app experience is designed to make it easy for you to build apps that everyone can try and buy with confidence. This sets up a constructive cycle where people love and buy lots of apps that then generates opportunities for developers to create and deliver even more great Metro style apps.
As I noted at the beginning, we’re in this together; we are confident that the collective investments we made in this new ecosystem will help you build apps that people will be delighted with, and we look forward to partnering with you in delivering amazing new experiences to our joint customers.
--John Hazen
Source: Windows 8 Blog (read more)
Delivering reliable and trustworthy Metro style apps
As we developed the app model for Windows 8 and the new Metro style apps, a key architectural requirement has been to deliver apps to customers that can be used with confidence--confidence that apps will be well-behaved with respect to resources, that apps will not interfere with other apps, that apps use system resources with your permission, that apps can be installed and uninstalled with ease, and so on. These attributes require a robust platform and strong set of tools for developers. This is an effort that requires a fresh start and cannot be retrofitted on an existing system. Windows 8 is a fresh start in this regard. This post details some of the work we have done at the platform level to deliver reliable and trustworthy Metro style apps. This post is authored by John Hazen, a program manager on our Developer Experience team. --Steven
One of our core principles in the development of the Windows 8 Metro style app platform was to ensure that users would have confidence in their apps. This is a mission we’re in together; in this post, I explain our vision for app confidence and reliability and help you build confidence by design into your apps.
Let me start by explaining what we mean by confidence. Picture a customer browsing the Windows Store looking at a Metro style app; we want them to be thinking only about the app and whether or not it is right for them. We want them to assume—in fact be confident—that the app will behave the way they expect and thus will perform well on their system, will use only the data and information they authorize, and will harmoniously co-exist with their other applications.
Our goal with the platform is to help us all build great apps that embody this vision of confidence so that we get confidence by default. To that end we made investments throughout the system. Here’s how we picture it:

App Confidence: Windows 8 SDK for Metro style apps, Windows App Certification Kit, App Signatures,
App Container, Ratings and Reviews, Store Onboarding, Frictionless Install, Telemetry Feedback
This post covers these areas and towards the end goes into depth on our app capabilities. First, a quick overview:
- Windows Store – For customers, it starts with the Store, their one-stop-shop for Metro style apps. To get into the Store your app is reviewed for both technical and policy compliance, including security checks. After it’s published to the Store, your app will be rated and reviewed by the community. Together, the onboarding process and community reviews help create an environment in which customers can try apps with confidence.
- App install – Windows 8 handles all the details of deploying apps on your behalf so your customers don’t have to worry that installing, updating, or removing one app will adversely affect other apps.
- SDK – The Windows 8 SDK for Metro style apps provides a well-defined set of APIs that help you build reliable apps that conform to the Store onboarding requirements and provide the best experiences for your customers.
- App container and capabilities – Windows 8 provides a greater degree of separation between apps than was possible with traditional desktop apps, so you can build apps that interact with each other in more predictable ways, giving customers a more consistent experience.
We of course recognize that any onboarding process can be gamed, API sets can be abused, SDK limits cleverly avoided, and that app containers are not impenetrable. But we are confident that the investments we made in this new ecosystem will help you build apps that delight customers. This multi-dimensional approach is the most effective way to build customer confidence and we will improve each dimension over time as we learn from experience. Now let’s talk about confidence.
The Windows Store
Several folks on the team have shared quite a bit on the Windows Store Blog about the overall design and plan for the Store. If you have not had a chance yet, read about the Store, because it plays a central role in helping you connect with your customers. Let’s look at a few ways in which the Store helps build confidence in the app ecosystem.
First, the Store onboarding process establishes a consistent baseline for app quality and reliability. The technical conformance tests, contained in the Windows App Certification Kit, help you know that you meet the expected standards before you submit your app. As you and other devs continue to deliver apps that meet these standards, customers will be excited to discover and try out new apps, creating a stronger app ecosystem for all of us.
The Store also makes it easy for customers to provide ratings and reviews that will help the best apps stand out, enticing even more customers to try out the top rated apps with confidence. In the sample app listing page below, note the highlights not just for ratings and reviews, but also two other important elements of the app listing page. Prior to installing a new app, customers can see what permissions the app has once it is installed (more detail on this later in the blog). After installing an app if the customer has concerns about app content or behavior, they can easily report their concern and we can follow up with you to address any problems identified. Helping customers decide which apps best meet their needs and allowing customers to provide input and feedback is an important way to improve overall confidence in the Windows 8 app ecosystem.
App listing page from the Windows Store
Finally, the Store collects telemetry data that can help you investigate problems your customers see, including the number and types of crashes they suffered. We review this automated telemetry for indications that an app’s behavior is unreliable or inconsistent with the expectations of our customers. Our goal is to make effective use not only of the individual feedback that customers provide on apps through ratings and reviews, but also provide insight into how your app is actually behaving on customers’ machines and give you the opportunity to improve your app based on this data.
In all these ways, the Windows Store is your partner in connecting you with people who want your apps, and helping them have a great experience with your apps.
Apps are just a click away
When you have your customer’s attention on the app listing page, you don’t want anything to get in the way of your customer getting your app. On Windows 8, getting an app is a matter of clicking a single button. Customers no longer have to wade through a series of questions or click button after button. After logging into the Store, when they find something they like, they just click the button, confirm the purchase, and go!
The great news for you is that you don’t have to write a single line of installation code to make this magic happen; it is all provided for you as part of Windows 8. Not only is installation handled, but Windows uses digital signatures to ensure the integrity of your app all the way from the Store to installation and even when the app is loaded and running on your customer’s computer. If Windows detects that the app no longer matches its digital signature, it guides the customer to download a corrected version from the Store.
Because Windows installs each app in a discrete location with separate and private locations for each app’s data and settings, customers don’t have to worry that installing, or removing, one app will interfere with the behavior of other apps or their computer. Customers will be more willing to try more apps than ever before, knowing that installing and removing apps won’t degrade their experience over time (in fact, with Windows 8 contracts, each app you install makes the experience better). You benefit by knowing that there is little another app might do that will damage your customer’s experience of your app.
Having a single, verifiable, and consistent mechanism to install apps not only simplifies your work, it provides an easy and positive experience for your customers, giving them confidence to get even more of your great apps. You can learn more about app deployment in App packages and deployment.
Windows 8 SDK for Metro style apps
The better experience customers have with your apps, the more readily they will try new apps and updates as you release them. The Windows 8 SDK for Metro style apps is a great foundation for you to build apps that customers won’t hesitate to install.
We put a lot of thought into the API set we offer for Metro style apps, not only to simplify the Windows programming environment, but also to provide a well-tested platform on which you could confidently build your apps, knowing they will work well with the Windows 8 Metro style app model.
Resist the temptation to find ways to invoke APIs that are not included in the SDK. This ultimately undermines the expectations that customers have for your app. APIs that are outside the SDK are not guaranteed to work with Metro style apps either in this release or in future releases, so you may find that your app doesn’t function properly for all customers. These APIs may also not function properly in the async environment that is foundational to Metro style app design. Finally these APIs may undermine customer confidence by accessing resources or data that Metro style apps would not normally interact with. For all these reasons, we have provided checks in the Windows App Certification Kit to help you catch places where you might have inadvertently called interfaces not exposed by the SDK.
While it is possible to hide or obfuscate calls to APIs that are not included in the SDK, this is still a violation of customer expectations and Store policy. In the end, we have created this platform to help developers like you to build amazing apps that work well with the system and with other apps and devices to delight customers. Working with the Metro style SDK is fundamental to your realizing that goal.
Working well together and apart
A clean installation process is important to your customers, and the SDK helps you build apps that integrate well with the system. Beyond this, customers expect a high degree of reliability from your app and our platform. We help you achieve your reliability goals by providing a greater degree of separation between Metro style apps than is possible for traditional Windows desktop applications. On Windows 8, each Metro style app runs in the context of a unique app container that helps insulate it and its data from other Metro style apps.
App containers provide a few characteristics that are shared by all Metro style apps. They:
- Provide a dedicated environment for your app, including your own store for data and settings. You have little worry that some other Metro style app will change your app’s data, settings, or behavior.
- Help ensure that your app doesn’t accidently interfere with the reliability of the Windows platform itself, or accidently use your customers’ data or devices in ways they don’t expect.
- Provide a well-defined way to extend the capabilities of your app through declarations you make in the manifest and disclose to your customer in the app listing page.
Having this degree of separation makes it far easier to write apps that are reliable and respectful of the user. At the same time, we all want apps that interact well with one another. Windows 8 provides several mechanisms for Metro style apps to work with each other and with the platform to provide these satisfying experiences, including:
- App contracts, which are the glue that binds Metro style apps together and to the system UI.
- The FilePicker, which allows your app to interact with data the user selects.
- App capability declarations, which allow your app to programmatically interact with devices and data, when appropriate for your functionality.
These are all well-defined ways for your app to engage more deeply with other apps and the system. The app container exists to help you deliver on your customer’s expectations of reliability and respectful use of their system and data. The constraints of the app container are designed to help realize customers’ expectations for consistent and intuitive app behaviors, and using techniques that allow your app to run code outside of an app container is a violation of user trust and Store policy.
In our discussions with developers during this preview period, we have seen apps that have misunderstood or accidently misused some of these mechanisms, so let’s go into more detail about the app capabilities in particular.
App capability declarations
The app container can be extended in a variety of ways using capability declarations, each of which is designed to enable certain scenarios. Therefore, we recommend that you use them only under certain conditions. These capabilities fall into 4 primary buckets:
- Data libraries: By default, apps have no access to the customer’s data libraries, like the Music library, or the Documents library. We recommend that you use the FilePicker to interact with these libraries, but in some rare cases it is necessary for your app to be able to directly read and manage data in these locations.
- Device access: By default, apps can’t use devices that most users consider sensitive for their privacy, including the webcam, microphone, and location. When apps need these devices, they must both declare their intent, and get consent from the user.
- Network access: By default, apps have no access to the customer’s networks. Because most apps interact with the Internet, we enabled this particular capability in all the Visual Studio templates for Metro style apps. If your app needs more than just simple Internet access, you can read about your options below.
- User identity: These capabilities provide direct access to a particular customer’s corporate logon info, or to certificates associated with their identity. These capabilities, although rarely needed, are necessary for certain enterprise apps, and you might need to use them in scenarios like banking transactions in which a smartcard might be required for authorization.
Declaring a capability in any of these categories is as simple as checking it off in the Visual Studio manifest designer. But add capabilities only if they are critical to realizing a scenario for an app. During the Consumer Preview, we saw several apps submitted to the Store that declared every capability or a capability that was not essential for the app. So, while the list of possible capabilities is relatively short, it is worth reviewing in more detail each of these capabilities and how to use them.
Visual Studio's manifest designer
Data libraries
These capabilities grant your app access to user data that wasn’t necessarily created in your app. Users expect apps to be respectful of access to their private data. One way to honor the trust users place in your app is by declaring only the minimum access necessary for your app. In most cases you can avoid using these capabilities entirely by using the FilePicker, through which the user can browse files anywhere on their hard drive or network. For example, use the FilePicker to provide a File open experience, or to add Save as to your app in order to give your user the opportunity to save content from your app into their library locations or to removable storage.
| Manifest declaration | What it provides |
| musicLibrary | Provides the capability to add, change, or delete files in the Music Library for the local PC and HomeGroup PCs. |
| videoLibrary | Provides the capability to add, change, or delete files in the Videos Library for the local PC and HomeGroup PCs. |
| pictureLibrary | Provides the capability to add, change, or delete files in the Pictures Library for the local PC and HomeGroup PCs. |
| documentsLibrary | Provides the capability to add, change, or delete files in the Documents Library for the local PC. The app can only access file types in the Documents Library that are defined using the File Type Associations declaration. The app can't access Document Libraries on HomeGroup PCs. |
| removableStorage | Provides the capability to add, change, or delete files on removable storage devices. The app can only access file types on removable storage that are defined in the manifest using the File Type Associations declaration. The app can't access removable storage on HomeGroup PCs. |
During the Consumer Preview, we saw app submissions that declared these capabilities when they really didn’t need to. For example, apps declared documentsLibrary for a variety of reasons including:
- Storing app-specific settings in the documents library. The private store is designed to provide this function. You can learn more about app settings and storage here.
- Store a user-generated file. This is more properly accomplished using the FilePicker to allow the user to save the file to any location, including the documents library.
- Sharing a document with another app. The Sharing contract is designed for this purpose.
If your app is designed to be the primary handler on the system for a given file type, for example a Fax Viewer that needs to handle all .TIFF files in the user’s documents library, then declare this capability.
Device access
Many devices, like orientation sensors and accelerometers, are available to any app. But most customers consider certain devices more sensitive than others, given that they are strongly associated with user privacy. There are a lot of great apps you can build on these devices. For example, if you have a casual game that allows shared gameplay, using proximity is a great way to establish a connection between devices.
Because these devices are closely coupled to user privacy, Windows 8 ensures that if you declare the capability, the customer will be prompted to approve this access the first time your app tries to access the particular device. For example, if your app offers mapping, you likely want to access the customer’s geolocation data. The first time your app tries to get this info, the customer sees a prompt to approve your app’s access. This approval sticks until the customer decides to explicitly remove the access through Settings at a later time. Because the customer can decline your app’s access to these devices, even if you have added the capability to the manifest, design your app to handle the lack of access gracefully. For example, if the customer has denied your app access to the built in GPS, you could simply prompt the user to select their location from a map.
| Manifest declaration | What it provides |
| location | Provides access to the current location, which is obtained from dedicated hardware like a GPS sensor in the PC or derived from available network information. |
| webcam | Provides access to the webcam's video feed, which allows the app to capture snapshots and movies from connected webcams. |
| microphone | Provides access to the microphone's audio feed, which allows the app to record audio from connected microphones. |
| proximity | Provides the capability to connect to devices in close proximity to the PC via near field proximity radio. Near field proximity may be used to send files or communicate with an app on a nearby device. |
Network access
Most apps need an Internet connection, so the Visual Studio templates for Metro style apps include the internetClient capability by default. If your app doesn’t need to communicate over the Internet, you should remove this capability. The internetClientServer capability is generally used in peer-to-peer (P2P) scenarios like gaming or VOIP, but unless your app must open a port in the firewall, don’t use this capability. Use the privateNetworkClientServer capability when your app needs to communicate over private networks, for example between devices within a home, or over a corporate network connection.
| Manifest declaration | What it provides |
| internetClient | Provides outbound access to the Internet and networks in public places like airports and coffee shops. Most apps that require Internet should use this capability. |
| internetClientServer | Provides inbound and outbound access to the Internet and the networks in Public places like airports and coffee shops. This capability is a superset of internetClient. The internetClient capability doesn't need to be enabled if this capability is also enabled. |
| privateNetworkClientServer | Provides inbound and outbound access to Intranet networks that have an authenticated domain controller, or that the user has designated as either home or work networks. |
User identity
Most developers don’t need these capabilities. Use of these capabilities will be highly restricted and subject to additional onboarding policy and review. But there are cases where such capabilities are necessary and appropriate, for example some banks require two-factor authentication and need to allow customers to provide a smartcard that carries a digital certificate that confirms their identity. Other apps that are designed primarily for enterprise customers rather than consumers might need access to corporate resources that cannot be accesses without domain credentials.
| Manifest declaration | What it provides |
| enterpriseAuthentication | Provides the capability to connect to enterprise intranet resources that require domain credentials. |
| sharedUserCertificates | Provides the capability to access software and hardware certificates, such as smart card certificates, for validating a user's identity. When related APIs are invoked at runtime, the user must take action (insert card, select certificate, etc.). This capability is not necessary if your app includes a private certificate via a Certificates declaration. |
Building confidence
Customers want to safely enjoy Windows 8 and the apps you build. The Metro style app experience is designed to make it easy for you to build apps that everyone can try and buy with confidence. This sets up a constructive cycle where people love and buy lots of apps that then generates opportunities for developers to create and deliver even more great Metro style apps.
As I noted at the beginning, we’re in this together; we are confident that the collective investments we made in this new ecosystem will help you build apps that people will be delighted with, and we look forward to partnering with you in delivering amazing new experiences to our joint customers.
--John Hazen
Source: Windows 8 Blog (read more)
Keeping your family safer with Windows 8
One of the intrinsic capabilities of Windows 8 is the ability to use multiple accounts on any PC. This makes it much easier for parents to use tools that can help protect their children from content on the Internet as they see fit. It is also a great way for each family member to maintain their own unique online identity while still sharing a single PC. Microsoft has been a leader in creating tools to help maintain a safe computing environment for all users as well as for parents in particular. With Windows 8 we have substantially improved the family safety features and services available. Phil Sohn, the senior program manager lead for Family Safety, describes how Family Safety features will work in Windows 8.
--Steven
Kids today grow up online. They use computers to do their homework, play games, communicate with friends, and access the wealth of information on the web. Computers give children access to many positive experiences; however, parents face challenges in monitoring what their children see online, the people they meet, and the information they share.
At Microsoft, we want to help parents create a healthy computing environment for their kids. We encourage parents to talk to their children about online safety and to set guidelines for their computer use. Microsoft and many safety advocates also recommend moving the family computer to a common room in the house so parents can glance over their kids’ shoulders to gain a better understanding of their online activities. Parenting techniques like this are important, but they may be difficult to employ if your household has multiple PCs or if your kids use laptops and tablets. And glancing over a teenager’s shoulder can be awkward for both parents and kids.
A safer Internet is just a click away
With Windows 8, you can monitor what your kids are doing, no matter where they use their PC. All you have to do is create a Windows user account for each child, check the box to turn on Family Safety, and then review weekly reports that describe your children’s PC use. No additional downloads, installation wizards, or configuration steps are required. Just check the box!
The “monitor first” approach
In the past, many of the industry software solutions for family safety (including Microsoft’s) focused on web filtering and other software-based restrictions. This resulted in a more complex setup experience and a constant stream of parental approval requests that could be difficult to manage. The end result was that many parents abandoned family safety products and returned to in-person supervision only—a tactic that has become less effective as computers have gotten more mobile.
Windows 8 gives you a “monitor first” approach, which provides informative activity reports for each child. As previously discussed on this blog, signing in to Windows 8 with a Microsoft account makes setup much simpler: just create a separate user account for each child and then check the box to turn on Family Safety. As soon as you do, you’ll receive a welcome email followed by weekly email reports summarizing your child’s computer activities. We expect you’ll find activity reports a great tool for teaching your kids about responsible computer use. Of course, you can also easily add restrictions by just clicking a link in the activity report. With the simplicity of activity reports, we believe more parents will adopt Family Safety, resulting in a safer computing environment for children.
Here’s what a Family Safety activity report looks like:
With a Microsoft account, you can take action from anywhere, on any device, because the reports are delivered directly to your email inbox. Any changes you make to Family Safety settings are stored in the cloud at familysafety.microsoft.com. These changes are then automatically applied to all Windows PCs where Family Safety is active.
Standard accounts for the kids
We’ve long recommended that parents log in as the computer administrator and make sure children have separate standard accounts. In Windows 8, accounts that the administrator –or “parent”—creates are automatically created as standard accounts. This approach has several benefits. Children:
- Won’t be able to access their parent’s email, online accounts, documents, etc.
- Can customize their own account settings without affecting their parent’s account
- Won’t be able to download malware or other questionable files because the SmartScreen Application Reputation service automatically prevents it
For parents who want more control
Activity reporting, which is on automatically in the new Family Safety, is the perfect solution for many parents. However, if you like more control, you can set up more powerful and customizable restrictions directly from links in the activity reporting email, or on familysafety.microsoft.com, if needed. In addition to the restrictions currently available in Windows 7, we’ve added some new ones in Windows 8, including:
- Web filtering: You can choose between several web filtering levels.

- SafeSearch: When web filtering is active, SafeSearch is locked into the “Strict” setting for popular search engines such as Bing, Google, and Yahoo. This will filter out adult text, images, and videos from your search results.
- Time limits: With Windows 8, you now can restrict the number of hours per day your child can use their PC. For example, you might set a limit of one hour on school nights and two hours on weekends. This is in addition to the bedtime limits currently available in Windows 7.
- Windows Store: Activity reports list the most recent Windows Store downloads, and you can set a game-rating level, which prevents your children from seeing apps in the Windows Store above a particular age rating.
- Application and game restrictions: As in Windows 7, you can block specific applications and games or set an appropriate game rating level.
Here is a short video showing how Family Safety works in Windows 8:
Download this video to view it in your favorite media player:
High quality MP4 | Lower quality MP4
Watch for Family Safety in Windows 8 Release Preview
We are continually striving to help you create a safe, family-friendly computing environment for your kids, but of course, we know that this means different things to different parents. Some parents prefer to simply keep an eye on their children. Others prefer to set up software restrictions on their child’s computing activities. We think the simplicity and power of the “monitor first” approach in Microsoft Family Safety addresses either style effectively and will lead to more family conversations about online safety, a safer computing experience for kids, and increased peace of mind for parents. Watch for these Family Safety features in the Release Preview.
--Phil
Source: Windows 8 Blog (read more)
Redesigning chkdsk and the new NTFS health model
We’ve written about tons of improvements in the OS kernel, networking, and file system. While for most client PCs, the tried and true chkdsk utility is one we rarely use anymore except in very rare circumstances, we are using Window 8 as an opportunity to improve this utility. We wanted to focus on rethinking how the utility works to increase availability and reduce downtime due to chkdsk operations. In looking at the real world usage of chkdsk, we note that corruptions are exceedingly rare though running chkdsk is not. While we’ve worked hard to reduce the manual invocation of disk tools (like defrag) we know many prefer to run them manually “just in case” and so we worked to improve the overall throughput of chkdsk, since running it reduces availability of the machine. With disk capacities becoming extremely large and multi-disk systems more common, we wanted to improve the utility. Kiran Bangalore, a program manager on our core system team, authored this post.
--Steven
In this blog post, I’ll talk about the new NTFS health model for Windows 8 and our redesigned tool for disk corruption detection and fixing, the chkdsk utility.
We’ve all experienced the frustration that can be caused by an unexpected chkdsk that pops up while restarting a computer at home or a server at the office. Beyond the surprise, there’s the interruption while waiting for the process to complete and Windows to be available. With Windows 8, we provide quick resolution to these problems when they arise, putting the user in control and making systems more available and more scalable.
One of our key design goals for Windows 8 was to increase availability and reduce the overall down-time of systems; this feature, along with other storage features such as Storage Spaces and the new ReFS file system, helps reduce the complexity of fixing corruptions and increases the overall availability of the entire system.
The previous chkdsk and NTFS health model
While exceedingly rare, there are a variety of unique causes for disk corruption today. Whether they are caused by media errors from the hard disk or transient memory errors, corruptions can happen in file system metadata (the information used to map physical blocks to that vacation photo you took last year). To maintain access to your data, Windows must isolate and correct these errors, and the way to do this is by running the chkdsk utility.
In past versions, NTFS implemented a simpler health model, where the file system volume was either healthy or not. In that model, the volume was taken offline for as long as necessary to fix the file system corruptions and bring the volume back to a healthy state. Downtime was directly proportional to the number of files in the volume.
Reliable telemetry data from systems all over the world have shown us that, although corruptions are quite rare, when chkdsk is needed, it can take between a few seconds to a few hours to run, depending on the number of files in the drive–and even longer for larger storage servers.
In Windows Vista and Windows 7, we made significant optimizations to the speed of chkdsk but, as hard disk capacities have continued to double every 18 months and the number of files per volume is increasing at an equal rate, chkdsk has taken longer and longer to complete (even with speed improvements) .
So in Windows 8, we’ve changed the way we approach the health model of NTFS and changed the way we fix corruptions so as to minimize the downtime due to chkdsk. We’ve also introduced a new file system for the future, ReFS, which does not require an offline chkdsk to repair corruptions.
File system health redone
The incredible growth in storage capacity and user data files has necessitated the redesign of the NTFS health model and chkdsk.
There were three important requirements for file system health that our customers made clear:
- Downtime caused by file system corruptions must be zero in continuously available configurations and nearly zero in all other configurations.
- A User or Administrator must be made aware of the file system health at all times.
- A User or Administrator should be able to easily fix their file system when a corruption occurs in a scheduled manner.
Our design included changes both in the file system and the chkdsk utility to ensure the best availability. The new design splits the process into the following phases to ensure a coordinated, rapid, and transparent resolution to the corruption.
We developed a new method of communication that describes types of corruptions as “verbs” that act upon the key components and points of the design – the file system driver (NTFS), the self-healing module, the spot-verification service, and the chkdsk utility. All file system corruptions are classified as needing one of 18 different “verbs” that we’ve defined in Windows 8. We have also left room for possible new verb definitions that can help us diagnose issues even better in the future.
Key design changes to help improve availability:
- Online self-healing: The NTFS self-healing feature was introduced in Windows Vista (and in Windows Server 2008) to reduce the need to run chkdsk. Self-healing is a feature built into NTFS that fixes certain classes of corruptions encountered during normal operation, and can make these fixes while still online. If all issues that are detected are self-healed online, there is no need for an offline repair. In Windows 8 we increased the number of issues that can be handled online and hence reduced any further need for chkdsk.
- Online verification: Some corruptions are intermittent due to memory issues and may not be a result of an actual corruption on the disk; so we added a new service to Windows 8, called the spot verification service. It is triggered by the file system driver and it verifies that there is actual corruption on the disk before moving the file system along in the health model. This new service runs in the background and does not affect the normal functioning of the system; it does nothing unless the file system driver triggers it to verify a corruption.
- Online identification and logging: When an issue is verified, this triggers an online scan of the file system, which runs as a maintenance task in the file system. In Windows 8, scheduled tasks that are for the maintenance of the computer run only when appropriate (during idle time, etc.). This scan can run as a background task while other programs continue to run in the foreground. As the file system is scanned, all issues that are found are logged for later correction.
- Precise and rapid correction – At the user or administrator’s convenience, the volume can be taken offline, and the corruptions logged in the previous step can be fixed. The downtime from this operation, called “Spotfix,” takes only seconds, and on Windows Server 8 systems with cluster shared volumes, we’ve eliminated this downtime completely. With this new model, chkdsk offline run time is now directly proportional to the number of corruptions, rather than being proportional to the number of files as in the old model.
Comparison of Windows Server: chkdsk /f vs chkdsk /spotfix
- Better manageability – To enable better transparency into the new health model, Windows now exposes the state of the file system via the following interfaces:
- Action Center – The health of the drive is most visible in the Action Center as the “Drive Status” (see figure below), which tells you when you need to take an action to bring the volume to a healthy state.
- Explorer: The health state is also exposed in Explorer, under Drive properties.
- PowerShell: You can also invoke the chkdsk functionality using a new cmdlet in PowerShell, REPAIR-VOLUME, which can be helpful for remote management of file system health.
- Server Manager: In Windows Server, you can also manage the volume health states directly from the server manager utility.
The new file system health model
In the new health model, the file system health status transitions through four states – some that are simply informational, and others that require you to act. The health states are:
- Online and healthy
- Online spot verification needed
- Online scan needed
- Spot fix needed
Windows 8 file system health states
- Online and healthy – In this state there are no detected file system corruptions and there is no action required of you. The file system remains in this state most of the time.
- Online spot verification needed – The file system stays in this transient state only for a brief instant after the file system finds a corruption that it cannot self-heal; it puts the volume in this state until the spot verification service verifies the corruption. Again, there is no user action required.
- Online scan needed– When the spot-verification service confirms the corruption, it puts the file system in the “online scan needed” state. In the next maintenance window, an online scan is performed; there is no user action required. This state is reflected in the Action Center, so you can run the scan manually if you want to do that before the next maintenance window. The scan is run as a background operation, which means that you can continue using the computer while the scan is performed. During this online scan, all verified issues and fixes are logged for later repair. On Windows Server 8 systems, idle time is determined by monitoring the CPU and storage idle times.
- Spot fix needed– The file system puts the volume in this state after the online scan is completed, if required, and this state is reflected in the Action Center. On client systems, you can restart the PC to fix all the file system issues logged in the previous step. The restart is quick (adding just a few additional seconds) and the PC is returned to a healthy state. For Windows Server 8 systems, a restart is unnecessary to fix corruptions on data volumes. Administrators can simply schedule a spot fix during the next maintenance window.
For more advanced users who want to avoid restarting their system to fix a non-system volume corruption, they can open the Properties dialog for the affected volume, and on the Tools tab, they’ll see an option to check the drive for file system errors. Corruption on drives that are not currently in use can be fixed without needing a full restart of the computer.
Conclusion
In Windows 8, we have made the detection and correction of file system errors more transparent and less intrusive. We believe these changes will be a welcome enhancement for you and we look forward to hearing your feedback.
-- Kiran Bangalore
Senior Program Manager, Windows Core Storage and File Systems
Download this video to view it in your favorite media player:
High quality MP4 | Lower quality MP4
FAQ
Q) Will the new health model work on removable drives?
Yes, this works on removable drives that report fixed media, like most external hard drives.
Q) How do I enable the new file system health model?
You don’t need to do a thing—the new file system health model is enabled by default.
Q) Will the new file system health model apply to Windows Server?
Yes, the health model is identical for both server and client. One thing that will be different by default is that the data drives will not be checked or fixed during boot of the system – this maintenance will be left to the administrator when time permits.
Q) Can I move between Windows 8 and Windows 7 and not affect the file system health model?
Yes, the file system health model will adapt to whichever operating system version it is mounted on.
Q) Will ReFS need to run chkdsk?
ReFS follows a different model for resiliency and does not need to run the traditional chkdsk utility.
Q) Will I ever need to run the old chkdsk /f?
There are cases where failing hardware can produce such severe corruption as to make the file system un-mountable; in these cases, you should perform a full, offline chkdsk to fix the file system. If for some reason this fails, we recommend that you restore from a backup.
Q) Is a reboot absolutely required to fix non-system volumes?
No, but the Action Center generally provides the simplest experience. If you’re an advanced user, you can fix non-system volumes by opening the properties of the drive, or by running chkdsk scan
Q) I run chkdsk /f often to check the status of our drives, is that needed anymore?
No, the system will inform you when a corruption is found, and you can then choose to run the chkdsk /scan to detect all the issues. An online chkdsk /scan will not take away from the availability of the drive or system.
Q) I run read-only chkdsk today to check the status of our drives; do I still need to do this?
No, we recommend you run chkdsk/scan instead, since this will also perform all possible online repairs and will also prepare for a spotfix, if needed.
Source: Windows 8 Blog (read more)
Black screen
Hi Forum
I have tried to make my first post here, but I am repeatedly told that I have to have 15 posts before I can post links. I do not know what line this system thinks is a link. So I guess for now I will just say hello.... until I get 15 posts.
So, what do you want to talk about? (read more)
FAQ - DVD playback and Windows Media Center in Windows 8
We thought we would follow up the previous post with an FAQ which is based on the comments and discussions, so Bernardo put this together so things are in one place. Some of these might be introductory for some but since the comments covered a lot of topics, it seemed reasonable to start at the beginning. --Steven
What are the codecs needed to play DVD?
A codec is software that is used to compress or decompress a digital media file, such as a song or video. MPEG-2 is widely used as the format of digital television signals that are broadcast by terrestrial (over-the-air), cable, and direct broadcast satellite TV systems, and DVD Video. Dolby Digital is the widely used audio standard for terrestrial (ATSC, over-the-air), cable, direct broadcast satellite TV systems, and DVD Video. Dolby audio is also a mandatory format in Blu-ray.
How has Windows handled DVD related decoder licensing prior to Windows 8?
The issue surrounding the incremental costs of codecs to play DVDs isn’t new to Windows. In Windows XP and Windows Vista we addressed it by offering specialized editions, such as Windows Media Center Edition, or codec add-ons to Windows Media Player. DVD playback was not included in Windows Vista Starter, Home Basic, Business, and Windows Vista Enterprise editions. OEMs (PC manufacturers) had the option to license Windows Vista Starter, Home Basic, and Business “with DVD” where we offered a version that includes the Dolby Digital codec to enable the OS to support DVD playback for a nominal price increase. In Windows 7, we decided to make these codecs available broadly in most editions, except Windows 7 Home Basic (available in some emerging markets) and Windows 7 Starter editions (available for netbooks and some emerging markets). That means royalties related to DVD playback in Windows 7 have been paid broadly, regardless of whether or not the PC has an optical drive. Based on sales and usage, we supplied codecs to a very large number of PCs that were not capable of playing DVDs or simply did not ever play DVDs.
Who pays decoder royalties associated with DVD playback on PCs?
Typically, media codecs are based on intellectual property (IP), often patents, held by consumer electronics consortiums or companies. The result is that entities who wish to sell products that include these codecs must pay royalties to the IP owners; sometimes to a single entity (e.g. Dolby Laboratories), and often through a license agency (e.g. MPEG-LA) who administers licensing for a number of IP holders under specific terms. The rules surrounding who pays these royalties vary by licensing program. According to the MPEG-LA program, the company that ships the end product is responsible for paying. In the case of new PCs with Windows pre-installed, that would be the PC OEMs. The Dolby program for Windows 7 was defined based on an agreement between Dolby and Microsoft where Microsoft has paid Dolby directly for the rights to Dolby Technologies built in Windows 7. Royalties are also paid by ISVs that include those technologies in their applications, even if those applications are bundled on new systems. This means that in many cases the same royalties can be paid multiple times over for a single PC (Microsoft pays some, OEM pays some, ISV pays some). In Windows 8, we will continue to include some technologies licensed by MPEG-LA and Dolby that will be paid by OEMs, but only those that relate to online media consumption (e.g. MPEG-2 container for H.264, Dolby Digital Plus audio) and not those related optical media. The costs associated with those codecs are lower, but significant, compared to optical media playback. Also, Windows 8 apps will be able to use these technologies as part of the Windows 8 Media Foundation APIs at no additional cost, as long as they are not providing optical media and broadcast related functionality.
How much does it cost the PC ecosystem to play DVDs?
Playing DVDs generally require MPEG-2 video compression and Dolby Digital (AC-3) audio. Even though it is possible to use other formats, the majority of commercial DVDs are encoded using these formats. In order to decode these formats, the playback device needs to be licensed to use these decoders. MPEG-2 decoder costs $2.00 per unit under current MPEG-LA terms. Dolby license is an additional cost that varies by the technology licensed, the type of device, and unit volume. While not related to Windows, Blu Ray would be an additional cost on top of these. So when you add all this up and apply to all Windows PCs, it is an ongoing cost of hundreds of millions of dollars per year to the PC ecosystem, well over a billion dollars over the lifecycle of the operating system and yet by most predictions the majority of PCs will not even be capable of playing DVDs.
Why can’t I just pay for DVD when I need it?
When we have DVD playback capabilities in software broadly like in Windows 7, there is no way to distinguish whether the PC will ever play a DVD disc but still this cost is carried on every PC. While we might think that the best solution is some sort of “just in time” charge back to Microsoft based on telemetry or an “anytime upgrade” this is not how the third-party licensing programs work as described above. So there isn't an approach where you buy Windows or a PC and only “pay as you go” if DVD playback is provided “in the box”. Once it is distributed as a player, a license is required.
Will devices with Windows 8 pre-installed be able to play DVDs out of the box?
This is ultimately an OEM choice for what peripherals and software to include in a given system. If a new device has an optical drive, it will most likely include necessary software and licenses making it a seamless experience to the vast majority of customers. Similarly, an add-on optical drive (internal or external) will almost certainly come with DVD playback software unless you intentionally purchase a white label drive (which might be a perfectly reasonable choice if the drive is simply for loading software). In all cases, there are numerous complete third-party applications that provide a broad range of support that is properly licensed. On the other hand, the ecosystem won’t have to pay for that software and related royalties on devices such as tablets, small form factor desktops, and laptops that are sold without optical drives.
What if I upgrade to Windows 8 on my current Windows 7 PC with a DVD drive?
If there is existing third-party playback software the Windows Upgrade Assistant will help determine if this software is compatible with Windows 8 and you will have the option to keep it during the upgrade to Windows 8. Otherwise, you will need to acquire third-party playback software after the upgrade to play DVDs. Alternatively, you can acquire the Windows 8 Media Center Pack or the Windows 8 Pro Pack post upgrade. Both Packs include Windows Media Center, including the ability to play DVDs.
Why can’t I buy a Windows 8 device that includes Windows Media Center pre-installed?
With the evolution of device form factors (tablets, thin and light, etc., none of which have optical drives) and change in media consumption patterns from optical disks and broadcast TV to online (Netflix, Youtube, Hulu, etc.), we concluded that we would no longer make DVD and broadcast TV capabilities available in all Windows editions, simply because the feature applies to a decreasing number of PCs sold. Instead, those capabilities will be available only to customers that want it via Add Windows Feature (aka Windows Anytime Upgrade). This ensures that the costs associated with playing DVDs and watching broadcast TV on PCs only apply to devices that have those capabilities and customers that want it.
Are you adding another Windows 8 edition called “Windows 8 Pro with Media Center”?
The Windows 8 Pro edition that includes Media Center will be named and branded Windows 8 Pro. The only difference is that it will include Media Center and you will also find a different string in the system properties where it will say “Windows 8 Pro with Media Center”. This is not a new edition of Windows 8.
Why do I have to upgrade to Windows 8 Pro to get Media Center?
Trends in Media Center usage show a decline in the number of customers that use it on a regular basis, starting from a relatively small base as we previously blogged about. When we look at actual usage, most customers using Media Center and playing DVDs used Windows Ultimate and XP Pro/Media Center. We believe those customers will also be interested in the additional features provided in the Windows 8 Pro edition, such as Boot from VHD, Client Hyper-V, etc., especially if they are using Media Center on a PC used for general tasks. Considering the audience and current usage, we conclude the vast majority of Media Center customers upgrading to Windows 8 will be to the Windows 8 Pro edition. In our efforts to keep the Windows 8 editions plan as simple as possible, Windows Media Center is only available on Windows 8 Pro. If you already have Windows 8 Pro and want to add Media Center, you just need to acquire the additional Media Center Pack as an in-place upgrade available via Add Windows Features (formerly Windows Anytime Upgrade).
What is the Windows 8 Pro Pack and why does it include Media Center?
Windows 8 Pro Pack is an upgrade from Windows 8 to Windows 8 Pro. Like we described above, Media Center is only available on Windows 8 Pro. When you acquire the Pro Pack, we make it a single step that takes you to Windows 8 Pro with Media Center. The cost of the Media Center Pack is essentially built into Pro Pack. Again, this is an attempt to add simplicity to the process of acquiring Media Center.
What version of Windows Media Center will be included in Windows 8?
The version of Media Center included in Windows 8 is what we shipped in the Windows 8 Consumer Preview. It is much consistent with what shipped in Windows 7.
Will CableCard and other devices continue to work with Media Center in Windows 8?
Yes, there is no change in hardware supported between Windows 7 and Windows 8.
Why doesn't Windows Media Player support DVD playback even after installing Media Center?
Based on the above discussion, it should be clear that we cannot enable DVD playback all the time in Windows Media Player. Given the ongoing feedback to avoid feature overlap and to avoid the complexity of behavior changing for a previously installed component, we only enable DVD playback in Media Center once it is installed.
Source: Windows 8 Blog (read more)
Making Windows Media Center available in Windows 8
In this post we wanted to update you on Media Center and Windows 8, specifically how we will make sure Windows 8 fully supports the capabilities of Media Center as it is in Windows 7. We took the feedback about maintaining the functionality very seriously, and we clearly understood what we’ve heard many of you saying around the value of Media Center for movies, Internet TV, broadcast TV, optical media, music, photos, and all the other scenarios it covers today. Many said in comments and email to us, that so long as the feature is available somehow it is fine. This post is how we will deliver on that and continue to support Media Center for another product lifecycle. This post was authored by Bernardo Caldas in the Windows Business Group, with help from Linda Averett who leads program management for the Developer Experience team.
--Steven
If you saw our recent post on the Windows 8 editions, then you know already that Windows Media Center will be available in Windows 8. You might also have noticed Windows Media Center is included in Windows 8 Consumer Preview. Media Center has always been subject of a lot of discussion and feedback in these forums as well as email. Today we would like to share more details about our plan and the motivations behind it.
First let’s step back and talk about media experiences in general. Windows 8 will deliver a world-class video and audio entertainment experience. Our focus is on providing a comprehensive video and audio platform for developers to build engaging and differentiated apps. The Windows 8 developer platform will contain a wide variety of industry-standard media formats, along with Internet Explorer 10, which supports the standard HTML5 web platform. It also includes the set of decoders (shown in the table below) and new developer functionality to deliver these modern media experiences.
Metro style apps can use any of the decoders included in Windows. These decoders are optimized for system reliability, battery life, and performance, and cover all key playback scenarios for mainstream content such as YouTube video, Netflix video, Amazon audio/video, H.264 web browsing/streaming, Hulu video, MP4 video, AVCHD video from camcorders, Ultraviolet video, and the HTML5 video tag. Metro style apps can also include additional decoders (such as FLAC, MKV, OGG, etc.) in their apps package for use within the apps.
| | Video | Audio |
| Decoders | H.264 VC-1/WMV MP4 Pt 2 | DD+ (non-disk) AAC WMA MP3 PCM |
| Format container | AVI MPEG-2 TS MP4 ASF | M4A ASF MP3 WAV |
In the process of building a robust platform, we’ve also evaluated which in-box media playback experiences we want to provide. The media landscape has changed quite significantly since the release of Windows 7. Our telemetry data and user research shows us that the vast majority of video consumption on the PC and other mobile devices is coming from online sources such as YouTube, Hulu, Netflix, or any of the other myriad of online and downloadable video services available. In fact, consumption of movies online in the United States will surpass physical video in 2012, according to this recent IHS Screen Digest research.
On the PC, these online sources are growing much faster than DVD & broadcast TV consumption, which are in sharp decline (no matter how you measure—unique users, minutes, percentage of sources, etc.). Globally, DVD sales have declined significantly year over year and Blu-ray on PCs is losing momentum as well. Watching broadcast TV on PCs, while incredibly important for some of you, has also declined steadily. These traditional media playback scenarios, optical media and broadcast TV, require a specialized set of decoders (and hardware) that cost a significant amount in royalties. With these decoders built into most Windows 7 editions, the industry has faced those costs broadly, regardless of whether or not a given device includes an optical drive or TV tuner.
Our partners have shared clear concerns over the costs associated with codec licensing for traditional media playback, especially as Windows 8 enables an unprecedented variety of form factors. Windows has addressed these concerns in the past by limiting availability of these experiences to specialized “media” or “premium” editions. At the same time, we also heard clear feedback from customers and partners that led to our much simplified Windows 8 editions lineup.
Given the changing landscape, the cost of decoder licensing, and the importance of a straight forward edition plan, we’ve decided to make Windows Media Center available to Windows 8 customers via the Add Features to Windows 8 control panel (formerly known as Windows Anytime Upgrade). This ensures that customers who are interested in Media Center have a convenient way to get it. Windows Media Player will continue to be available in all editions, but without DVD playback support. For optical discs playback on new Windows 8 devices, we are going to rely on the many quality solutions on the market, which provide great experiences for both DVD and Blu-ray.
We will offer two ways to acquire Windows Media Center:
| Starting point | | End-user upgrade | | Ending point |
| Windows 8 Pro | > | Windows 8 Media Center Pack | > | Windows 8 Pro |
| | | | | |
| Windows 8 | > | Windows 8 Pro Pack | > |
Windows 8 Pro is designed to help tech enthusiasts obtain a broader set of Windows 8 technologies. Acquiring either the Windows 8 Media Center Pack or the Windows 8 Pro Pack gives you Media Center, including DVD playback (in Media Center, not in Media Player), broadcast TV recording and playback (DBV-T/S, ISDB-S/T, DMBH, and ATSC), and VOB file playback. Pricing for these Packs, as well as retail versions of Windows 8, will be announced closer to the release date. To give you some indication of Media Center Pack pricing, it will be in line with marginal costs.
We are incredibly excited about the future of entertainment in Windows. We hope you have had a chance to try some of the new Windows 8 Metro style media applications such as the Video and the Music apps. These apps embody the characteristics that make Windows 8 great for both end users and developers, and are included with the Consumer Preview install, ensuring a great local media playback experience on Windows 8. There is much more to come, as developers embrace the power of the Windows 8 platform to delight media enthusiasts around the world!
--Bernardo and Linda
Source: Windows 8 Blog (read more)
Cloud services for Windows 8 and Windows Phone: Windows Live, reimagined
We have talked quite a bit about SkyDrive and using your Microsoft account for the sign-in and roaming capabilities of Windows 8. These are just two aspects of a broad service infrastructure that you can tap into when using Windows 8 (and Windows Phone, Xbox LIVE, and a host of other services and apps). We want to talk more about the capabilities and features of cloud services for Windows 8 and Windows Phone. To get started, Chris Jones, the VP of our Windows Live group responsible for the development and operations of all of the services and apps, authored this post to introduce the reimagined role of cloud services in Windows 8.
--Steven
Windows Live was first announced on November 1st, 2005, and in our press release we described it as “a set of personal Internet services and software designed to bring together in one place all of the relationships, information and interests people care about most, with more safety and security features across their PC, devices and the Web.” Since that time, we’ve been hard at work building software and services that deliver that promise, a foundation that we could rely on as we designed new versions of Windows as well as other Microsoft products. We’ve received lots of feedback about features and ways we could improve the software and services. And we’ve also received some feedback about the naming and marketing we have done. Windows 8 is a chance for us to act on that feedback and reintroduce you to the broadest and most widely used collection of services on the Internet.
Today, Windows Live services are used by over 500 million people every month. There has been a lot of discussion recently on what constitutes an “active” user of a service; for the purposes of this post this term refers to people who use Hotmail, SkyDrive, or Messenger at least once a month, meaning they send email, use instant messaging, or upload files to SkyDrive.
These services run at massive scale – Hotmail is the world’s leading web email service, with 350 million active users and 105 petabytes of storage; Messenger is the world’s leading instant messaging service, with 300 million active users, and SkyDrive has over 130 million users with 17 million of these uploading files every month. Windows Live Essentials applications are among the most popular applications in their categories on Windows – including Windows Live Photo Gallery and Windows Live Movie Maker, leading in photo management and video editing, and Windows Live Mail, second only to Microsoft Outlook in mail apps.
While these results are certainly noteworthy, they still did not meet our expectations of a truly connected experience. Windows Live services and apps were built on versions of Windows that were simply not designed to be connected to a cloud service for anything other than updates, and as a result, they felt “bolted on” to the experience. This created some amount of customer confusion, which is noted in several reviews and editorials. The names we used to describe our products added to that complexity: we used “Windows Live" to refer to software for your PC (Windows Live Essentials), a suite of web-based services (Hotmail, SkyDrive, and Messenger), your account relationship with Microsoft (Windows Live ID), and a host of other offers.
Windows 8 provides us with an opportunity to reimagine our approach to services and software and to design them to be a seamless part of the Windows experience, accessible in Windows desktop apps, Windows Metro style apps, standard web browsers, and on mobile devices. Today the expectation is that a modern device comes with services as well as apps for communication and sharing. There is no “separate brand” to think about or a separate service to install – it is all included when you turn on your PC for the first time.
We also believe that you should have a choice and control over what services you use, what information you share (with others and Microsoft), and how you access your services. That’s why using any of these services is optional, and you’re welcome to mix and match them with the software and services you choose.
Download this video to view it in your favorite media player:
High quality MP4 | Lower quality MP4
Microsoft account is our identity service for individuals who use Microsoft products and services. You can use your Microsoft account to sign in to your Windows 8 PC, and then use the same account to check your billing for services like Xbox LIVE, Zune, and the Windows 8 app store. And your Microsoft account is connected to your Xbox gamer tag so you can track high scores and games. You can sign up for a Microsoft account with any email address, and provide additional verification information including your mobile phone number and a list of your trusted devices. We’ll be rolling out the change in nomenclature from Windows Live ID to Microsoft account over the next several months across our product line. There are still some areas we continue to work on such as migrating your account (credit cards and purchase history) from one market (currency) to another if you’ve connected your account to services such as Xbox LIVE.
When you connect a device or service to your Microsoft account, you’re automatically provisioned with a set of cloud services, including a contact list, calendar, inbox, instant messaging, and cloud storage. Of course these services connect to your PC and your Windows Phone, they’re accessible from any web browser, and they’re accessible to different apps if the developer of the app implements our API. Because these services are a part of your Microsoft account, they are shared across all Microsoft products and services. For example your contact list is shared across Windows Phone, Windows 8, Hotmail, Messenger, and SkyDrive, so when you add a contact in one place, it shows up in the cloud and on all of your other devices and services.
Windows 8 also uses cloud services to roam settings across your PCs so you can log in to a new PC and pick up right where you left off. Along with a Microsoft account, everyone gets a SkyDrive, which is cloud storage for documents, photos, your phone’s camera roll, and settings from your PC. SkyDrive powers the Windows Phone camera roll, so every picture you take is automatically copied to your cloud photo album. SkyDrive makes it easy for you to share and collaborate on Office documents, either using Office Web Apps or Office client applications. And developers can use the SkyDrive APIs to provide an even deeper level of roaming and support in their apps if they choose. Through the innovative features of Contracts and File Pickers in Windows 8, you can access your SkyDrive data from within any Windows 8 Metro style app.
We recognize that customers will have services from many different companies, particularly for social networking and communications. So we let you connect your Microsoft account to other services. Just like our contact list, your connected services are stored in the cloud and roam across your devices. This means that if you connect your Microsoft account to LinkedIn, Facebook, or Twitter, your contacts from these networks show up in your contact list, so you can send them email from your PC or call them from your phone. We also support 3rd party developers through the Live SDK, allowing developers to cloud-power their Metro style apps, or apps and services for other platforms. Our APIs use standard and familiar protocols including OAuth 2.0, JSON, REST, Exchange ActiveSync, and XMPP.
Windows 8 is designed to be cloud-powered, so it comes with Metro style apps for communication, sharing, scheduling, photos, and videos. Preview versions of these apps come installed with the Windows 8 Consumer Preview and include Mail, Calendar, People, Photos, Messaging, and SkyDrive. They’re all powered by cloud services, so when you sign in with your Microsoft account, your email, calendar, contacts, messages, and shared photo albums show up right in your apps. For customers who have shared family PCs, family safety is now a feature of Windows accounts and no longer requires a separate download. As we’ve discussed before, Windows Phone comes with the same set of apps, powered by cloud services, and connected to your Microsoft account. For customers who use Windows 7, we have a set of Windows desktop apps, including Photo Gallery, Movie Maker, Mail, Messenger, Family Safety, and our recently released SkyDrive for the Windows desktop.
The chart below breaks down our software and services in the new world of Windows 8:
| Service | Windows 8 | Windows Phone | Web/HTML 5 (live.com) | API (dev. | Earlier Versions |
| Account | Microsoft account | Microsoft account | Account.live.com | OAUTH | Windows Live ID, Passport |
| Storage/ | SkyDrive app, SkyDrive Desktop | SkyDrive app, Office app | SkyDrive.com | REST, JSON | FolderShare, Live Mesh, Windows Live Mesh |
| | Mail app | Mail app | Hotmail.com | EAS | Windows Live Mail, Outlook Express |
| Calendar | Calendar app | Calendar app | Calendar.live.com | EAS, REST | Windows Live Mail, Windows Calendar |
| Contacts | People app | People app | People.live.com | EAS, REST | Windows Contacts |
| Messaging | Messaging app | Messaging app | Integrated in Hotmail and SkyDrive | XMPP | MSN Messenger |
| Photos/ Videos | Photos app, Photo Gallery, Movie Maker | Photos app, Camera Roll | Photos.live.com | REST, JSON (via SkyDrive) | Windows Live Photo Gallery, Windows Live Movie Maker |
In the coming weeks we will share more information about our software and services for individuals spanning the PC, phone, and web, and go into detail on Microsoft account, cloud services, SkyDrive, Hotmail, Messenger, as well as our upcoming work with Skype. For now you can start using our apps and services on Windows 8 Consumer Preview, your Windows Phone, on the web with Hotmail or SkyDrive, or on your other devices.
--Chris Jones
Source: Windows 8 Blog (read more)
Making personal cloud storage for Windows available anywhere, with the new SkyDrive
In February, we told you about our goals for connecting your apps, files, PCs, and devices to the cloud with SkyDrive and Windows 8. Since then, we have provided the App Preview of a Windows 8 app to access SkyDrive, and we’ve updated the SkyDrive web experience. Today, we are delivering new capabilities for SkyDrive across the Windows platform.
Mike Torres, and Omar Shahine, group program managers for SkyDrive, co-wrote this post.
--Steven
Over the last year we’ve been hard at work building SkyDrive alongside Windows 8, setting out a unique approach to designing personal cloud storage for billions of people by bringing together the best aspects of file, app, and device clouds. Meanwhile, we’ve made our file cloud more accessible with HTML5 and mobile apps, improved integration with Office and 3rd party apps, and built a device cloud for Windows and Windows Phone.
Today, we’re excited to take another big step towards our vision by making SkyDrive far more powerful. There are new storage options, apps that connect your devices to SkyDrive, and a more powerful device cloud that lets you “fetch” any file from a Windows PC. Taken together with access from popular mobile phones and a browser, you can now take your SkyDrive with you anywhere, connect it to any app that works with files and folders, and get all the storage you need—making SkyDrive the most powerful personal cloud storage service available.
Here’s what’s available for use, starting now:
- SkyDrive for the Windows desktop (preview available now). View and manage your personal SkyDrive directly from Windows Explorer on Windows 8, Windows 7, and Windows Vista with this new preview app available in 106 languages worldwide.
- Fetching files through SkyDrive.com. Easily access, browse, and stream files from a remote PC running the preview app to just about anywhere by simply fetching them via SkyDrive.com.
- SkyDrive storage updates. A new, more flexible approach to personal cloud storage that allows power users to get additional paid storage as their needs grow.
- SkyDrive for other devices. We’ve updated the SkyDrive apps on Windows Phone and iOS devices, bringing better management features and sharing options to those devices. We’re also releasing a new preview client for Mac OS X Lion, letting you manage your SkyDrive right from the Finder.
You can download the new SkyDrive apps now, but you might want to take a look at this video first, which gives you a glimpse of all the things you can do with the new SkyDrive.
Download this video to view it in your favorite media player:
High quality MP4 | Lower quality MP4
SkyDrive for Windows
In February, we announced a SkyDrive Metro style app for Windows 8, SkyDrive for the Windows desktop, and a feature called “fetch” that allows you to remotely access files or stream videos from a connected PC. When you combine all of these features, you can seamlessly access any file on your Windows 8 PC from anywhere. The SkyDrive Metro style app was first made available with the Windows 8 Consumer Preview, and today we’re releasing a preview of SkyDrive for the Windows desktop including ”fetch” support. But first, here’s a little background.
Over the years, we’ve consistently heard from our most loyal customers that having SkyDrive accessible from Windows Explorer is important, and we’re happy to announce that, as of today, when you download the preview of SkyDrive for the Windows desktop, you’ll be able to access your SkyDrive from Windows Explorer on Windows 8, Windows 7, and Windows Vista. The benefits of SkyDrive integration with Windows are clear: you can now drag-and-drop to and from SkyDrive with files up to 2GB, access all of your files offline, and have the full power of Windows Explorer available to manage your SkyDrive files and folders. Files stored in your SkyDrive are in a plain folder on your PC, which means any app that works with local folders and files can now work with SkyDrive.
As we set upon the path to bring SkyDrive closer to Windows, we had a few goals that drove our plan. First, we wanted you to be able to “get up and running” as quickly as possible, with very few steps. Secondly, we wanted to “be quiet” on the system and make sure that all processing was entirely in the background, with your needs and your apps as the first priority. And third, we really wanted it all to “just work” as you’d expect it to, staying up-to-date automatically, and humming along without confusing dialogs or pop-ups. Here’s a bit more about where we’re at for each of those.
Downloading the preview of SkyDrive for Windows takes just a few seconds on most connections (the installer is under 5MB) and installs on most PCs in less than 10 seconds. There are just three simple setup screens and you’re finished.
Once it’s running, it’s out of the way in the system tray. A folder is created automatically for you in a default location or one you choose during setup, and your SkyDrive files immediately start to appear.
Once your SkyDrive is available on your PC, this special folder stays in sync with your SkyDrive. If you rename a file on your phone, it appears immediately in this folder on your PC. If you delete a file from SkyDrive.com, it is deleted immediately here as well. Or if you create a folder and move files from another PC, Mac, or iPad, those changes immediately sync, too.
Power users can have fun with the SkyDrive folder too
In Windows Live Mesh, which some of you have come to rely on, we allowed arbitrary folders to be synchronized. Our experience has been that this introduced too many unresolvable complexities across different PCs, with the path on one PC synchronizing to entirely different paths on other PCs and the cloud. In order to maintain our goal of “it just works,” we designed SkyDrive to be the same everywhere, and to work well with libraries in Windows.
If you’d like your SkyDrive folders to feel less like separate folders, you can add your SkyDrive Documents and Pictures folders to your Documents and Pictures Libraries in Windows 8 and Windows 7.
Alternatively, you could change the target location for special folders like Documents or Pictures (or others) to folders in your SkyDrive, basically treating your SkyDrive as your primary drive (right-click the Documents folder, click Properties, and then Location). You can also customize the default root of the synchronized folder (to use a different drive, for example), and this option is available during setup of the SkyDrive app.
So, as you can see, the simple and straightforward model of having a single folder for your SkyDrive still leaves lots of creative options for personalization.
Fetching files through SkyDrive.com
As we discussed and demonstrated back in February, with SkyDrive running on a Windows PC, you can also turn that PC into your own private cloud to browse your files and stream videos from anywhere through SkyDrive.com. This feature is great if you forgot something on your home PC and need to fetch it or just copy it quickly to SkyDrive.
Note that, in order to access a remote PC you will have to provide a second factor of authentication beyond your account password. You’ll need to enter a code that we send to your mobile phone or alternate email address even if you’re already signed in to your SkyDrive account (if you’re already on a trusted PC, you won’t have to do this every time, and it is easy to do this one-time setup). This means that anyone wanting access to your remote PC would have to have access not only to your account, but also to either an alternate email or your phone (which they would need to physically possess).
New, more flexible approach to storage
One of the challenges in building personal cloud storage for billions of people is scaling capacity and managing costs, while also meeting the needs of both enthusiasts and mainstream users. Different cloud providers take different approaches. Many promise unlimited storage or big referral incentives to attract enthusiasts – but then have lots of strings attached, which can make the service more confusing and less accessible to mainstream users. Do I really have to read multiple pages to understand my storage limits? Why do other people’s files count against my storage limit? Why does my upload speed slow down? Why do I get gobs of free storage but have to pay to sync my desktop files?
Our model for SkyDrive is friendly and accessible to all, and just as importantly, provides a gimmick-free service that strikes the right balance of being free for the vast majority of customers, and low-priced for those who want more.
Starting today, we are now offering:
- 7GB free for all new SkyDrive users. We chose 7GB as it provides enough space for over 99% of people to store their entire Office document library and share photos for several years, along with room for growth. To put things in perspective, 99.94% of SkyDrive customers today use 7GB or less – and 7GB is enough for over 20,000 Office documents or 7,000 photos. Since the current base of customers using SkyDrive tilts towards enthusiasts, we are confident that, as we expand the range of people using SkyDrive, this 7GB free limit will prove to be more than enough for even more people.
- Ability to upload large files – up to 2GB – and folders using SkyDrive for the Windows desktop or SkyDrive for OS X Lion.
- Paid storage plans (+20GB, +50GB, +100GB) so that power users who need more storage can easily add more at competitive prices (US$10/year, US$25/year, US$50/year). Please note that paid-for storage requires the ability to pay by credit card (or via PayPal, in some markets) and a Windows Live ID that can be associated with that credit card or PayPal account.
We know that many of you signed up for a service that offered 25GB, and some are already using more than 7GB of storage. So, starting today, for a limited time, any registered SkyDrive user *who has uploaded files to SkyDrive* as of April 22nd can opt in to keep 25GB of free storage while still getting all of the benefits of the new service. (For users who are already using more than 4GB as of April 1, we’ve automatically opted you in to 25GB of free storage to avoid any issues.) Just sign in here or view our FAQ.
SkyDrive for Windows Phone and other devices
SkyDrive has been available since 2007 from anywhere in the world through SkyDrive.com, but it wasn’t until the initial release of Windows Phone and our dedicated Windows Phone and iPhone apps in December 2011 that people had top-notch SkyDrive experiences from modern smartphones. These apps have been installed on over 2 million phones already by people taking SkyDrive with them wherever they go.
As a Windows Phone or iPhone user, with today’s release, you can now delete, rename, and move files in your SkyDrive, and access a full set of sharing options for all files and folders. We’re also bringing SkyDrive to the iPad, with all the same capabilities you now have available through the iPhone, plus support for the new iPad retina display.
All of these apps also have dozens of small improvements, including the ability to see your remaining storage space, landscape support, and various performance enhancements and bug fixes.
Almost 70% of Mac users also regularly use a Windows PC. Since we want every customer to be able to rely on SkyDrive to access files anywhere, it’s important for SkyDrive be wherever they are. Office for Mac 2011 already supports SkyDrive files, but starting today, you’ll also be able to manage your entire SkyDrive offline using Finder on the Mac. The integration with Finder means that any Mac app that opens from or saves to the file system will be able to take advantage of SkyDrive files as well.
Here’s where you go to try SkyDrive today:
- Get SkyDrive for Windows (preview)
- Get SkyDrive for Windows Phone
- Get SkyDrive for iPhone and iPad
- Get SkyDrive for OS X Lion (preview)
If you currently use Mesh, we have a few tips for trying SkyDrive for Windows or Mac (preview) side-by-side with Mesh. We think you'll find SkyDrive to be increasingly useful over time.
Thanks for supporting SkyDrive and we look forward to your feedback!
Mike (SkyDrive apps)
and
Omar (SkyDrive.com)
Note: Apps and the ability to purchase extra storage are rolling out now, and may take up to a few days to be available in all markets.
*Correction 4/23/12, 11:15 AM PST: Revised wording to clarify that loyalty offer is only for existing users who have uploaded files to SkyDrive before April 22, 2012.
Source: Windows 8 Blog (read more)
Managing "BYO" PCs in the enterprise (including WOA)
With more and more people providing their own hardware for work, the "bring your own" PC is becoming more commonplace and IT Pros want to have the confidence that they can support their clients who follow this trend. The presence of BYO does not change the need for IT Pros to manage, secure, and remain accountable for the network assets of an organization, and we all know that written policies can only go so far.
This post focuses on managing WOA PCs, which are designed with this "consumerization of IT" in mind. PCs of all form factors built on x86/64 architecture have the full complement of management tools available to them, especially those supported by third-party code running on the system. Since WOA PCs only support third-party code through the Windows Store and WinRT-based applications, we set out to develop industry-leading management capabilities that support BYO or company-deployed WOA PCs. This post was authored by Jeffrey Sutherland, a program manager lead in our Management Systems group.
--Steven
One of the major trends in IT in recent years has been the drive towards “consumerization of IT,” which is a term describing how consumer technology, from phones to PCs, is bleeding into business organizations in all forms and fashions. And increasingly, the devices that are showing up are owned by and liable to the employee rather than the organization they work for. We see this most notably in the smartphone device category, but more recently also in tablets or other portable PC form factors that are increasingly showing up in the workplace. As organizations embrace consumerization, IT must consider how much control they can exert over a user’s personally-owned device, and how much management is “good enough.” These questions were top of mind for us as we began our journey to Windows 8, and particularly, as we built Windows for the ARM processor architecture. Our focus has been on how we can continue to deliver PCs and software that users need, like applications and data-access on any device, with enough IT control to assert that the device is trustworthy, while avoiding any compromise of the user’s privacy on their personal device.
In Steven’s earlier blog post about Windows on ARM, or WOA, he talked about how the bulk of the Windows experience remains the same on ARM as it is on x86/64, and the products share a significant amount of code. So, while this post will focus primarily on WOA, many of the features discussed are equally applicable to both processor architectures. In addition, this post covers the capabilities on the PC, itself, not the overall management infrastructure and tools used by IT. Also, please keep in mind all the security capabilities built into Windows that come with WOA from the basics of networking all the way through drive encryption.
Line-of-Business applications and the WOA management client
Demand for access to the business apps that users rely on - from email to licensed software from an independent software vendor to home-grown apps developed by IT - is one of the most important use cases for “consumer” devices in the enterprise. We know that developers are going to find it easy and convenient to build elegant Metro style apps that automatically work on any Windows 8 system including WOA, and developers of line-of-business (LOB) apps won’t be any different. But many organizations want to directly control and manage access to their internal LOB apps, including the distribution of the app binaries for installation. For these organizations, publishing their LOB apps to the public Windows Store doesn’t make sense, since there is no reason to broadcast these applications to others or to have their application deployment managed through the Windows Store process. And access to these resources and the data that they expose requires an assurance to IT that the systems accessing them meet an established bar for security and data protection.
Organizations have been dealing with apps on x86/64 machines for a long time using a variety of tools and methods, including management products like System Center Configuration Manager and Windows Intune. Management of Metro style LOB apps on x86/64 will be able to leverage those same existing tools and methods and only requires that the client be configured to trust the apps that come from a source other than the Windows Store. For more information on the base capabilities of adding and removing Metro style apps on x86/64, see How to Add and Remove Apps. Developing WOA, however, provided us a unique opportunity to architect how LOB apps can be delivered to users in a way that meets the needs of IT while continuing to guarantee a consistent and reliable end-to-end experience over the life of the PC.
For WOA, we have integrated a new management client that can communicate with a management infrastructure in the cloud to deliver LOB apps to users. You’ll hear more about this management infrastructure at a later date from our friends on the System Center blog, so this post will focus on the benefits and capabilities of the WOA management client itself.
There are actually two parts to the WOA management client: the built-in system component, which we’ll call the agent; and a Metro-style app, which we’ll call the self-service portal, or SSP, that the consumer uses to browse for and install LOB apps made available to them. Both parts of the WOA management client are well behaved Windows 8 apps in terms of user experience, power management/battery life, network awareness (for metered networks), and overall functionality.
The agent does most of the heavy lifting on the client. It configures the client to communicate with the organization’s management infrastructure; periodically synchronizes with the management infrastructure to check for any updated LOB apps and apply the latest settings policies configured by IT for the device; and handles the actual download and installation of any LOB apps that the user wants to install. Finally, if the user or the administrator chooses to remove the device from the management infrastructure, it clears the configuration of the agent itself and disables any LOB apps the user installed from the SSP.
Connecting to the management infrastructure
Let’s explore some of these elements in more detail, starting with connecting the client to the management infrastructure. In truth, this step begins with the IT admin who specifies the group of Active Directory (AD) domain users who are authorized to connect devices into the service. The admin also has the option to specify the maximum number of devices allowed per user. For authorized users, the actual steps to connect a device are quite simple. Using a new Control Panel applet on their WOA device, the user supplies their company email address and password, just like they do to set up an Exchange email account. The agent then performs a service lookup to locate the organization’s management infrastructure based on the user’s email address.
Connecting to your management infrastructure is as easy as entering your company email address and password
Once the agent has found the right address, it establishes a secure connection to the management infrastructure using SSL Server Authentication and authenticates the user. If the user is successfully authenticated and has been authorized by the admin to connect devices, the service issues a user certificate to the user who initiated the connection. This certificate is sent back to the agent along with the organization root certificate and instructions for the agent, which it uses to configure its ongoing communications with the management infrastructure. All of this happens in a matter of seconds and typically requires no further interaction from the user. Once complete, the user is directed to install the SSP while the agent completes the connection in the background.
Completing the connection
Next, the agent automatically initiates a session with the management infrastructure, using the user certificate to authenticate. This session and any subsequent sessions are performed using SSL Mutual Authentication to ensure the security of the connection. This initial session completes the registration of the device with the service by supplying some basic device information such as the make and model, the OS version, device capabilities, and other hardware information. This allows IT admins to monitor what types of devices are connecting to the organization, so they can improve the apps and services they deliver to users over time.
Following the initial session, the agent initiates communication with the management infrastructure in two circumstances:
- First, as a maintenance task that runs daily at a time that the user can configure on the client. The activities performed during these maintenance sessions focus on reporting updated hardware information to the management infrastructure, applying changes to the settings policies for the device, reporting compliance back to the management infrastructure, and applying app updates to LOB apps, or retrying any previously failed LOB app installations initiated from the SSP.
- Secondly, the agent will communicate with the management infrastructure anytime the user initiates an app installation from the SSP. These user-initiated sessions are solely focused on app installation and do not perform the maintenance and management activities described in the first case.
Regardless of whether a session is initiated automatically by a scheduled maintenance task or manually by the user, the WOA management client continues to behave well relative to the state of the battery on the device and its current network conditions.
Settings policy management
As already discussed, access to LOB apps typically requires systems to comply with basic security and data protection policies. From the management infrastructure, the IT admin is able to configure a set of policies that we believe are the most critical to give IT the assurances they need without seriously affecting the user’s experience with their device, including:
- Allow Convenience Logon
- Maximum Failed Password Attempts
- Maximum Inactivity Time Lock
- Minimum Device Password Complex Characters
- Minimum Password Length
- Password Enabled
- Password Expiration
- Password History
Although our new WOA management client can only connect with a single management infrastructure at a time, we may decide to add other policy sources before we release Windows 8 and so we’ve architected the policy system to handle this. In the case where more than one policy exists for the same Windows 8 device, the policies will be merged and the most restrictive configuration will be selected for each. This resultant policy will apply to every administrative user on the Windows 8 device and every standard user with an Exchange account configured. Standard users who do not have an Exchange account will not be subject to the policy, but Windows 8 already restricts those users from accessing data in other users’ profiles and from privileged locations, thereby automatically protecting your corporate data.
In addition to the configurable policies described above, the agent can also be used to automatically configure a VPN profile for the user, so that WOA devices easily connect to a corporate network without requiring any user action. Finally, the agent can also monitor and report on compliance of WOA devices for the following:
- Drive Encryption Status
- Auto Update Status
- Antivirus Status
- AntiSpyWare Status
Leveraging this compliance information, IT admins can more effectively control access to corporate resources if a device is determined to be at risk. Yet once again, the user’s basic experience with the device is left intact and their personal privacy is maintained.
Before we move on, let’s consider a couple of the policies listed above and how they practically affect a Windows 8 system. First, we’ll look at Allow Convenience Logon. Windows 8 offers users convenience login features, like biometric login or the picture password feature. These options maintain a high level of security for Windows 8 devices, while solving one of the biggest headaches for users and IT alike: forgetting your password. Yet some organizations may require additional time before they are ready to embrace these alternative logon methods, so the Allow Convenience Logon option lets IT manage when to allow convenience logins in their organization.
Secondly, let’s look at how drive encryption and Maximum Failed Password Attempts work together. You probably know people who’ve picked up their smartphone only to find that the device has wiped itself after their young child was playing with it and inadvertently entered the wrong password repeatedly. Nothing so severe will happen with your Windows 8 devices, fortunately. Windows 8 provides strong data protection already out of the box. So, when a user exceeds the password entry threshold, Windows will instead cryptographically lock all encrypted volumes and reboot the device into the Windows 8 recovery console. If your device has been lost or stolen, this effectively renders the device unreadable. But if you’re simply the victim of your young son or daughter trying to get to Angry Birds while your device is locked, you can easily recover with the use of a recovery key that Windows 8 can automatically store on your behalf in your SkyDrive account. This way, you are able to get back up and running without enduring a lengthy wait to re-install all of your apps and copy down all of your data.
LOB app management
The features we’ve covered so far are obviously focused more on the mechanics of the management client and infrastructure along with the needs of the IT admin, but ultimately the entire solution exists to benefit the end user by enabling access to their LOB apps. Without such a benefit there's little reason a user would go through the trouble of using the enterprise management infrastructure. So let’s dig deeper into LOB app delivery on the WOA platform.
In our previous blog post about WOA, we told you that “consumers obtain all software... through the Windows Store and Microsoft Update or Windows Update.” Now, with the addition of the WOA management client, we’re adding a fourth trusted source of software for the WOA platform. As mentioned, the Metro style self-service portal app, or SSP, is the day-to-day interface for the corporate user to access their management infrastructure. Here they can browse to discover LOB apps that have been made available to them by the IT admin. There are actually four different types of apps that IT can publish for users in the SSP:
- Internally-developed Metro style apps that are not published in the Windows Store
- Apps produced by independent software vendors that are licensed to the organization for internal distribution
- Web links that launch websites and web-based apps directly in the browser
- Links to app listings in the Windows Store. This is a convenient way for IT to make users aware of useful business apps that are publicly available.
Since the user specified his or her corporate credentials as part of the initial connection with the management infrastructure, the IT admin can then specify which apps are published to each user individually, based on the user’s AD domain user account, or as a member of AD user groups. As a result, the user only sees those apps that are applicable to them in the SSP.
Browsing for LOB apps in the self-service portal (SSP) for a fictional company called Woodgrove
NOTE: This screenshot shows an early prototype of the SSP and may not reflect the final product.
Before any LOB apps can be delivered through the management infrastructure, there are two things that happen on the client. First, an activation key is issued by the management infrastructure and applied to the WOA device to allow the agent to install apps. Second, any certificates used to sign the LOB apps must be added to the certificate store on the device. In most cases, both the activation key and the root certificates are automatically applied during the first session after establishing the connection with the management infrastructure. Otherwise, they are automatically deployed during a subsequent session after the IT admin has turned on the feature in the management infrastructure.
When the user chooses to install an app from the SSP, the request is sent to the management infrastructure and a download link is provided to the agent. The agent then downloads the app, verifies the validity of the content, checks the signature, and installs the app. All of this typically occurs within seconds and is generally invisible to the user. In the event that an error occurs during any part of this process (e.g. the location of the content is unavailable), the agent queues the app for a retry during its next regularly scheduled maintenance session. In either case, the agent reports the state of the installation back to the management infrastructure.
The details page of an app in the SSP, where the user can initiate installation
NOTE: This screenshot shows an early prototype of the SSP, and may not reflect the final product.
As part of its regular maintenance sessions, the agent will inventory which LOB apps are currently installed and report that information back to the management infrastructure so the IT admin can effectively manage their LOB apps. Only Metro-style apps that were installed via the SSP and the management client are included in this inventory from a WOA device. Apps installed from the Windows Store are never reported as part of the inventory.
Anytime the IT admin publishes an update for an app that has been installed on a WOA device, the agent will automatically download and install the update during its next regular maintenance session.
Disconnecting from the management infrastructure
Finally, let’s look at how to disconnect a device from the management infrastructure. Disconnecting may be initiated either locally by the user or remotely by the IT admin. User-initiated disconnection is performed much like the initial connection, and is initiated from the same location in the Control Panel. Users may choose to disconnect for any number of reasons, including leaving the company or getting a new device and no longer needing access to their LOB apps on the old device. When an admin initiates a disconnection, the agent performs the disconnection during its next regular maintenance session. Admins may choose to disconnect a user’s device after they’ve left the company or because the device is regularly failing to comply with the organization’s security settings policy.
During disconnection, the agent does the following:
- Removes the activation key that allowed the agent to install LOB apps. Once removed, any Metro style apps that were installed via the SSP and management client are deactivated. Note, however, that the apps are not automatically removed from the device, but they can no longer be launched and the user is no longer able to install additional LOB apps.
- Removes any certificates that the agent has provisioned.
- Ceases enforcement of the settings policies that the management infrastructure has applied.
- Reports successful deactivation to the management infrastructure if the admin initiated the process.
- Removes the agent configuration, including the scheduled maintenance task. Once completed, the agent remains dormant unless the user reconnects it to the management infrastructure.
Summary
Given the trend towards “consumerization” of IT and our introduction of WOA with Windows 8, we wanted to rethink the way systems management is done. We worked to strike a balance between the sometimes competing needs of IT admins and the consumer who uses the device on a day-to-day basis. With the new WOA management client connecting to a management infrastructure in the cloud, we believe we’ve accomplished those goals, and we hope you’ll agree when you see it all in action.
-- Jeffrey Sutherland
Source: Windows 8 Blog (read more)
Reclaiming memory from Metro style apps
Modern operating systems take a different view of the resources on the system. Regardless of the form factor, it is important for the OS to more effectively manage resource utilization than in the past. Currently, it is far too easy for a single process to consume available resources (memory, CPU, disk I/O) even when this does not improve the overall performance for end-users. The very role of an OS is to balance resources and make sure you can complete all the things that you want to do on your PC. Much of the manual control present in most OS implementations is designed to work around errant software—software that gets in a state where resource consumption is unbounded. Even if the software is not malicious, which is often the case, the ability to build well-behaved software was limited by the complexity of resource allocation APIs. The modern API set in WinRT is designed for programmers to more easily build software that gets the work done while not “taking over” your PC. This is something that makes all PC form factors and all software better.
In this post, group program manager Bill Karagounis on our Fundamentals team details the behind-the-scenes efforts to reclaim memory even when apps are suspended, and how this all happens without developers needing to worry.
--Steven
Previous blog posts have discussed the Metro style application model using Windows Runtime. An important attribute of this app model is that apps are suspended when they are no longer visible to the user. Suspending Metro style apps in the background is a good thing, as it conserves CPU for other apps and ensures that background apps don’t cause activity that can consume resources, thereby improving the battery life and increasing responsiveness. This is outlined in detail in Sharif Farag and Ben Srour’s blog post, Improving power efficiency for applications.
But what about the memory these apps are taking up when suspended? We pointed out earlier that, as a practical matter, the OS will handle this and that your other processes will not feel memory pressure because there are suspended processes. This was an important design consideration. But we know that some of you are still curious how this will all work.
Starting with the Windows 8 Consumer Preview, whenever Windows detects memory pressure on the system, it will repurpose nearly all the memory that suspended Metro style apps would otherwise hold onto. Windows 8 can reclaim this memory without having to terminate an app.
Download this video to view it in your favorite media player:
High quality MP4 | Lower quality MP4
Memory, responsiveness, and Metro style apps
For any type of app (Metro style or desktop), Windows tries to regulate physical memory allocations on behalf of that app, regardless of the memory requests it has made. Windows has always behaved this way to keep memory available in anticipation of future app memory needs. Windows is careful to only allocate physical memory to an app when the app tries to touch it, even if the app had “allocated” it earlier. Windows will also page out or repurpose parts of memory from an app if the pages of memory haven’t been touched in a long time.
It is important to understand the goal is not to deny memory to a requesting process, but to delay allocating physical memory as long as possible (until the user actually touches the app) because as with many resources, there is a tendency for software to over-budget. The OS is the place where all these requests come together and it has the information to see that meeting all the fully budgeted requests would ultimately starve every process. Not only would work not complete, but the system will essentially lock up. This happens even if the memory is virtual—instead of running out of RAM, your PC would simply swap pages in and out of disk.
The physical memory given to a process at any point in time is referred to as the “working set” of the process. A private working set represents physical memory that is unique to a process. Processes also touch other pages of physical memory that are “shared,” which several processes can reference. When you look at the Processes view in Task Manager, the memory for a specific process is actually its current private working set. NOTE: For simplicity, when I refer to “working set” in this blog, I mean “private working set.”
When the system starts to run low on available memory, the OS will look in all processes for pages of physical memory that it can repurpose to satisfy other needs in the system, even by paging out memory when necessary. For desktop apps, Windows will try to keep the most important (frequently accessed) pages of memory in the app’s working set; this is because desktop apps expect to be able to run code at any time, even when they’re in the background. It’s a fine balance though: if too many pages of memory were to be removed from a desktop app, it could affect the app’s responsiveness due to additional disk I/O (as the app tries to touch memory that has been paged to disk under the covers).
For a deep dive on Windows memory management, see Mark Russinovich’s “Mysteries of Windows Memory Management Revealed” talks: part 1 & part 2.
Metro style apps, however, are different from desktop apps, in that they are usually suspended whenever they are no longer in the foreground. When they’re suspended, they aren’t touching ANY of their memory.
To illustrate, I’ve highlighted a few suspended Metro style apps with memory held in their working sets in the screenshot below.
Suspended apps holding on to memory
NOTE: In the Consumer Preview build, the Suspended status does not show
in the Processes view of Task Manager by default; you have to choose to show it
via an option on the View menu.
If there isn’t memory pressure in a system, it’s actually a good thing (most efficient) to just leave memory in the suspended apps’ working sets. But if there is some memory pressure, the fact that these Metro style apps are suspended presents an opportunity to get almost all the memory in these working sets back for other apps, without terminating them.
Reclaiming memory from suspended Metro style apps
In Windows 8 Consumer Preview, we can efficiently write the whole (private) working set of a suspended Metro style app to disk, in order to gain additional memory when the system detects pressure.
This process is analogous to hibernating a specific app, and then resuming it when the user switches back to the app. We’re taking advantage of the suspend/resume mechanism of Metro style apps to empty or re-populate an app’s working set.
The sequence of events is described below:
- The Process Lifetime Manager (PLM) detects memory pressure in the system and asks the Memory Manager (MM) to empty the working set of a specific process that houses a suspended Metro style app.
- MM moves the pages of memory from the working set of the app to the operating system’s modified page list (which is a list of memory whose contents are to be written out to disk before being reused).
- The working set pages on the modified page list are written out asynchronously, as dictated by the usual MM policies (written out opportunistically in the background, writes triggered when under memory pressure).
- Even after the suspended apps working set is written to disk, the memory pages removed from a process are left intact on the operating system’s standby list. This is a cache of useful pages of memory that can be repurposed for other apps, if necessary. If these pages are immediately needed again by their original process, they are quickly moved back.
If a user switches back to the app while its working set pages are still in physical memory (on the modified page list or the standby list), it’s straightforward: the pages will be added back into the app’s process immediately. If they are no longer available, Windows will read in the app’s working set from disk in an optimized manner.
“Reclaiming memory” in action
To get a feel for how this works, let’s walk through an example with real running code.
The initial state is represented by the screenshot above. I had several Metro style apps running on a PC with 2GB of RAM. The Metro style apps were in the background, and therefore Windows suspended them. I then started opening more apps to drive up memory use on the system and trigger the new functionality.
In the next screenshot, below, you’ll notice that I opened some apps in order to introduce additional memory pressure and induce the behavior described above. As you can see, Windows emptied the working sets of the suspended Metro style apps (highlighted).
Working sets of Metro style apps emptied
Let’s compare the “before” and “after” working sets of the original Metro style apps (some of the “after” stats cannot be seen because Task Manager ran out of room to show all 27 launched apps):
|
Metro style app |
Working set before (MB) |
Working set after (MB) |
|
Flixster |
23.5 |
0.5 |
|
Flow |
15.2 |
0.6 |
|
Kindle |
23.1 |
0.5 |
|
LiveComm |
3.8 |
0.3 |
|
Lyrics |
65.3 |
0.9 |
|
Maps |
28.1 |
0.8 |
|
Remote Desktop |
21.0 |
0.5 |
|
SkyDrive |
23.1 |
0.5 |
|
Store |
26.9 |
0.6 |
|
Weather |
42.0 |
0.8 |
|
Windows Reader |
9.2 |
0.4 |
So in this example, we liberated over 250 MB of physical RAM for other apps to use without shutting down the suspended apps.
Responsiveness when reading the working set back in
A test for this new facility is how responsive a suspended app is after its working set contents are emptied and you decide to switch back to the app.
While I was running this test, I used the “Lyrics” app as my indicator of responsiveness. The Lyrics app can display the lyrics of a song as well as play back a music video. When the Lyrics app goes to the background, it gets suspended, which stops the playback.
After driving memory use to the point where working sets were emptied, I opened additional apps and used the system for a while to ensure that a swap back to the app was going to read the working set from disk. I then triggered the switch back to the Lyrics app (below).
Lyrics app’s working set is repopulated
The key indicator I was looking for was how long it would take from the time I triggered the switch back to the app to the point where I could hear sound again. On a low-end machine, with a high memory load, it’s hard to perceive a difference in responsiveness when switching back to the app whose working set was being read from disk compared to when its working set was still in memory. Your mileage will vary though: the larger the working set, the longer it will take to read-in from disk. We’re also continuing to reduce the amount we have to write to disk for Metro style apps and further optimizing this feature.
This functionality is something that everyone with the Consumer Preview release can try for themselves. Just open up a number of Metro style apps and desktop apps to generate some memory pressure, and then switch back to a suspended Metro style app that has had its working set emptied.
NOTE: Windows will still close Metro style apps if memory gets into the critical range. However, this feature will enable a system to run more applications before getting to that point.
Reading in a working set optimally
To have a responsive experience when you switch back to a suspended app whose working set is on disk, we’ve optimized how we write the working set in the first place, so that reading it in is as efficient as possible.
When we write out the working set of a suspended Metro style app, the working set pages are being written out to disk sequentially. This allows us to read the data back into a process using a small number of large sequential disk reads. The screenshot below is from our Windows Performance Analyzer (WPA) tool that comes as part of the Assessment and Deployment Kit (ADK), showing a visual representation of disk reads during this process. I’ve highlighted the working set “read-in” I/O. You can clearly see the sequential stream as we repopulate an app’s working set.
Sequential read I/Os to repopulate an app’s working set (WPA Tool)
Reading back sequential data from almost any storage device is really fast. Most rotational disks can achieve between 50-100MB per second. If a storage device is flash-based (like an SSD), you can get upwards of 200MB per second for these reads.
We expect that many apps will take less than a second of I/O to get the working set of a suspended app back into memory.
Conclusion
By definition, all PCs of all form factors have limited physical memory. The challenges of managing memory do not change when you add more physical memory, so long as you are actually running more programs that request more memory.
Several classes of modern software will continue to evolve to use more and more memory – photo editing of giant RAW images, in-memory databases, very large spreadsheets, and so on. Whether these have WinRT-based implementations or desktop implementations, the OS needs to evolve to manage these ever-increasing memory requests. WinRT is an opportunity for programmers to use an API that allows access to all the memory they need while putting the user first in terms of responsiveness and getting work done. I hope you’ll try this out this feature in Windows 8 Consumer Preview.
-- Bill Karagounis
Source: Windows 8 Blog (read more)
Windows 8 Forum Upgraded
Along with this I changed the style to something easier on the eyes.
If you find any bugs let me know about them. (read more)
Please help me
Touch hardware and Windows 8
Last September we blogged about experiencing Windows 8 touch on Windows 7 hardware, introducing the story of touchscreen hardware, how it is evolving, and what we expect Windows 8 will bring to the ecosystem of touch. We discussed how our engineering efforts (software and hardware) are driven by key user experiences, how these experiences play a big part in how we evaluate Windows 8 hardware, and how we communicate with hardware partners. Since that post, we’ve been working closely with our partners to build Windows 8 PCs. With the Consumer Preview, we want to update you on where we’re at. This post was authored by Jerry Koh, a group program manager, and Jeff Piira, a test manager, both on our Human Interaction Platform team.
--Steven
The Windows team has continued to work in lock step with external hardware partners to fully embrace the experience we want for Windows 8. New Windows 8 PCs are coming, and while that is not a topic for this post, we at Microsoft are excited with what our hardware partners have in store for you.
It’s worth reinforcing that Windows 8 will run on the hardware available today, and we are committed to making sure that happens. So you should feel confidence in installing the Consumer Preview on the machines that you own today. However, as much as we value compatibility, we also have to balance this with making Windows 8 really shine on new Windows 8 PCs. We’d like to provide you with some perspective on our efforts and how we will achieve this.
Making sure Windows 8 works on your Windows 7 PC
At the //build/ conference we introduced a set of touch interactions that make up the Windows 8 touch language. These core interactions form the basis of the Windows 8 user interface, and are reused heavily in the application frameworks within our common controls and samples. The primary goal of our touch language is to promote ease-of-use and ensure user confidence. By confidence, we mean that all touch interactions work consistently and reliably all the time. Developers who consume our controls will automatically feature this language in their applications when they re-use the common controls or use the samples, and in doing so, they also minimize any learning required for users.
The touch language allows us to design a base user experience that is optimized for touch and works well on every PC, whether it was built originally for Windows 7 or for Windows 8. The fundamental gestures require no more than 2 fingers. However it is important to note that 2 fingers can be very limiting for a variety of applications. This is why Windows 8 PCs require digitizers that support a minimum of 5 fingers. The reason we went in this direction is a response to developer feedback. Developers do not want their creativity to be limited, and in particular, they let us know that they want to be free to use whichever multi-finger gestures or controls are useful. They do not want requirements for a minimum number of fingers that may not make sense for their application. As such, we focused on a minimum of 5 fingers to enable scenarios like whole hand interactions (all 5 fingers) or multi-finger/multi-hand scenarios. This will address the feedback, and unlocks opportunities for developers to push the envelope with multi-touch applications. So, while we ensure that the OS works well with a Windows 7 PC, a new Windows 8 PC is going to be much more consistent and predictable both from a user and developer perspective.
New UI concepts in Windows 8 also impact touch hardware design. This is another area where Windows 8 PCs will be more capable than existing Windows 7 PCs. For example, the edge swipe required to reveal the charms and app bars fundamentally changes all the assumptions made on touch hardware. Traditionally, the edges of the screen are where touch sensitivity drops off, and it’s a place that hardware manufacturers have traditionally not placed much emphasis on. The center of the screen received all the innovation, while the edges have suffered. If you have seen or experienced the Windows 8 user experience, the edge swipe is a critical part of using Windows. However, it also has a big role to play in our developer promise, as every pixel used to detect an edge swipe is a pixel taken away from the developer. For Metro style apps, where every pixel belongs to the developer, it is critical that we uphold and deliver on this promise.
We worked closely with our hardware partners to figure out a design that will allow all pixels on a touch screen to be accurate and perform well. There were many challenges here, but we were able to deliver on the promise of Windows 8 PCs that have the ability to trigger the edge swipe without taking any pixels from applications, and with extremely good edge sensitivity using touch—a promise that benefits developers and users alike. To make things work with Windows 7 PCs, we had to go in a different direction. In order to make edge swipe work consistently on Windows 7 PCs, we created a mode where there is a 20-pixel buffer to catch the edge swipe gesture. This allows a majority of PCs to reliably invoke the charms and use Windows 8 effectively. The downside of this buffer is that it takes away some real estate from the application, and from developers.
There is a broad set of Windows 7 PCs available in the market, and while this is a strong testament to the diversity of the Windows Ecosystem (as it offer more choices for our users), it also adds a degree of variance in touchscreen performance that must be accommodated. Here are some other examples of work we did to enable Windows 7 PCs to work well with touch:
- Making gestures like press and hold and pinch to zoom more forgiving
On some touch screens, the information reported from the screen is not consistent. We call this “jitter.”., When “jitter” happens, it’s hard for the system to know if the finger is actually moving or stationary. In some instances, a simple gesture like “press and hold” becomes extremely hard to calculate. - Determining user intent for sloppy or imprecise touches
Although larger UI elements help improve touch targeting, we don’t have that luxury within the Windows desktop, especially with existing desktop applications. For this, we developed new ways to remap touch targets using the geometry of the finger, such that it becomes easier to invoke any UI that is within the radius of your finger contact. We will talk more about this feature in a separate blog post.
While you can see that there are a number of places where we’ve done work to accommodate the variance in hardware, there will be some areas where software cannot compensate. We will call out a few of them below. The good news is that in some cases users can learn to overcome these issues; in other cases, the experience will seem slow or imprecise, sometimes requiring you to attempt a gesture more than once before you succeed. We can overcome some of these issues with updated drivers, but this is entirely up to the hardware partners to evaluate and support. Here are some other examples of inconsistencies that we see when comparing touchscreens on some Windows 7 PCs:
- Individual taps do not always work, especially when typing quickly in the touch keyboard.
There are generally 3 things that impact this: the touch screen response rate, typing speed, and number of touch points. As you start typing faster on a touch screen, the screen has to match the speed of switching keys. The response rate in a touch screen is usually more optimized for detecting dragging gestures than rapid taps; this will manifest itself as missed taps. When you start typing faster, the chances of having more than 2 simultaneous fingers down also goes up. On systems that do not support more than 2 touches, you will notice missed touches. - Swipe to select is inconsistent on hardware that does not detect small touch deltas fast enough.
It takes a little time for touch to respond to an initial touch. In some cases, the touch screen ignores the first few values of the initial touch, and the system then has difficulty interpreting the swipe correctly. - Swipe and slide can be misinterpreted as a tap, especially on hardware that is not sensitive enough.
This stems from the same issues as above, in which touch screens take some time to respond, and cannot send a consistent stream of data once a swipe or slide begins. In this case, it can result in the system reading the data as taps instead of slides. When this happens, swiping and sliding more slowly may help. - Swipe from edge does not always work, especially with faster swipes.
Although we have the buffer accommodation described above, fast swipes from the edge sometimes suffer from response rate as well. Fingers that come in too fast from the edge don’t get picked up by the touch screen until it is past the buffer. Trying again at a slower speed usually helps here.
Here is a video that shows some examples of how hardware can affect the Windows 8 touch language.
Download this video to view it in your favorite media player:
High quality MP4 | Lower quality MP4
Note that touch variability does not necessarily block usage, since you can adapt the way that you touch or interact with touchscreens to work around different timing or movement thresholds. For example, if the charms don’t appear after an edge swipe, you can try again, but swipe more slowly. However, this variability does tend to make you less confident about using touch on Windows. However, we don’t want app developers to have to accommodate all the variances in touch hardware. Ultimately, we want to keep the promise of consistency, and the promise that applications work on all Windows 8 PCs. This is why we are working hard to ensure that Windows 8 PCs have a consistently good touch experience, and why you will want one of these new PCs when they are released.
Touch hardware testing
To make sure that the Windows 8 experience works well on your existing Windows 7 PC, we’ve been testing a bunch of them. Listed below are some of the newer Windows 7 systems that are commonly used within the Windows organization. This is not an endorsement, and users of these PCs should not expect official support from PC vendors when installing Windows 8.
- HP Elitebook 2760p convertible
- ASUS EP121 tablet
- Dell Inspiron Duo convertible
- Lenovo x220t convertible
- 3M M2256PW 22” display
- Samsung Series 7 slate
To support our commitment to customers who upgrade, we also frequently test Windows 8 on a broader set of in-market systems. We listed many of these systems in the previous post, and will now share some of the data we collected. Our test team collected data on how the Windows 8 touch interactions perform on 64 different Windows 7-era touch screens. As seen in the pie charts below, the data covers a variety of different form factors and touch sensor technologies.
What we found was encouraging: the vast majority of Windows 7 touchscreens can be used with Windows 8. This means that touch drivers continue to load, and you can perform the basic touch interactions in Windows 8 with a reasonable degree of success. But, as described in the previous section, we did see significant variability in how touch interactions were interpreted across different Windows 7 touchscreens. For example, the same swipe gesture can be interpreted as selecting a tile on one touchscreen, as dragging it on another, and as activating (tapping) it on a third screen. The charts below show examples of how successful completion varied between touchscreens when performing Windows 8 interactions for swiping to select a tile, dragging a tile to move, dragging to resize a snapped view, and swiping the screen edge to invoke the charms. 100% means that all attempts succeeded (note that for Windows 8 PCs, we require all these tests to pass with at least 95% success*).
Test: Select a tile in Start
Expected result: Tile is selected with a single swipe
Test: Move a tile in Start
Expected result: Tile is moved on first drag attempt
Test: Resize a snapped application
Expected result: Application is snapped to new size
Test: Swipe the right edge to view Charms
Expected result: Charms bar appears on first swipe
* pass rates may vary between each test
The road to Windows 8 PCs
Throughout Windows 8 development, we worked closely with external hardware partners to reduce hardware variability and establish consistent Windows 8 requirements. At the time of the //build/ conference, we were still working with partners to establish these requirements in early prototypes. The Samsung slate that was handed out at //build/ was our first attempt to push new requirements into a production system. Those of you who had the opportunity to use the Samsung slate experienced a level of touch quality that is closer to what we expect for Windows 8. You’ll also find some of these improvements in the commercialized version of the same slate hardware, which Samsung calls the Series 7 slate. Experiencing Windows 8 on this hardware will give you an idea of what touch will be like on Windows 8 PCs.
We have published our requirements for new Windows 8 hardware, and we continue to work with touch hardware partners, suppliers, independent hardware vendors, and PC manufacturers to ensure that new devices meet the requirements. Microsoft tests and certifies each new touch device before it can enter the market as a Windows 8 PC. This is how we will ensure consistency and quality in touch hardware for Windows 8. We will talk more about the certification process in a separate blog post.
Experience the Windows 8 Consumer Preview
So if you have a Windows 7 touch-capable PC today, don’t hesitate to use the Windows 8 Consumer Preview and take advantage of the Metro style user experience that we’ve built. The core experience will work well, but you’ll need to be mindful of some of the issues we’ve covered above. On new Windows 8 PCs, these issues won’t be present.
If you don’t have a touch-capable PC, you can still experience the Metro style UI with a mouse and keyboard. Last and not least, if you develop applications for Windows 8, the developer tools include an emulator that you can use to simulate touch. It will give you a close approximation of how your application will work, and we encourage you to take advantage of it. We hope you agree that we’ve come a long way in ensuring that Windows 8 has the best touch experience. We’re excited to provide a way for you to be more hands-on with your PC.
Thank you!
- Jeff Piira, Test Manager, Human Interaction Platform Team
- Jerry Koh, Group Program Manager, Human Interaction Platform team
Source: Windows 8 Blog (read more)