MSIX app attach glossary
This article is a list of definitions for key terms and concepts related to MSIX app attach.
An MSIX container is where MSIX apps are run. To learn more, see MSIX containers.
An application stored in an .MSIX file.
An MSIX package is an MSIX file or application.
An MSIX share is a network share that holds expanded MSIX packages. MSIX shares must support SMB 3 or later. The shares must also be accessible to the Virtual Machines (VM) in the host pool system account. MSIX packages get staged from the MSIX share without having to move application files to the system drive.
An MSIX image is a VHD, VHDx, or CIM file that contains one or more MSIX packaged applications. Each application is delivered in the MSIX image using the MSIXMGR tool.
Repackaging takes a non-MSIX application and converts it into MSIX using the MSIX Packaging Tool (MPT). For more information, see MSIX Packaging Tool overview.
Expand an MSIX package
Expanding an MSIX package is a multi-step process. Expansion takes the MSIX file and puts its content into a VHD(x) or CIM file.
To expand an MSIX package:
- Get an MSIX package (MSIX file).
- Rename the MSIX file to a .zip file.
- Unzip the resulting .zip file in a folder.
- Create a VHD that's the same size as the folder.
- Mount the VHD.
- Initialize a disk.
- Create a partition.
- Format the partition.
- Copy the unzipped content into the VHD.
- Use the MSIXMGR tool to apply ACLs on the content of the VHD.
- Unmount the VHD(x) or CIM.
Upload an MSIX package
Uploading an MSIX package involves uploading the VHD(x) or CIM that contains an expanded MSIX package to the MSIX share.
In Azure Virtual Desktop, uploads happen once per MSIX share. Once you upload a package, all host pools in the same subscription can reference it.
Add an MSIX package
In Azure Virtual Desktop, adding an MSIX package links it to a host pool.
Publish an MSIX package
In Azure Virtual Desktop, a published MSIX package must be assigned to an Active Directory Domain Service (AD DS) or Azure Active Directory (Azure AD) user or user group.
Staging involves two things:
- Mounting the VHD(x) or CIM to the VM.
- Notifying the OS that the MSIX package is available for registration.
Registration makes a staged MSIX package available for your users. Registering is on a per-user basis. If you haven't explicitly registered an app for that specific user, they won't be able to run the app.
There are two types of registration: regular and delayed.
In regular registration, each application assigned to a user is fully registered. Registration happens during the time the user signs in to the session, which might impact the time it takes for them to start using Azure Virtual Desktop.
In delayed registration, each application assigned to the user is only partially registered. Partial registration means that the Start menu tile and double-click file associations are registered. Registration happens while the user signs in to their session, so it has minimal impact on the time it takes to start using Azure Virtual Desktop. Registration completes only when the user runs the application in the MSIX package.
Delayed registration is currently the default configuration for MSIX app attach.
Deregistration removes a registered but non-running MSIX package for a user. Deregistration happens while the user signs out of their session. During deregistration, MSIX app attach pushes application data specific to the user to the local user profile.
Destaging notifies the OS that an MSIX package or application that currently isn't running and isn't staged for any user can be unmounted. This removes all reference to it in the OS.
.CIM is a new file extension associated with Composite Image Files System (CimFS). Mounting and unmounting CIM files is faster that VHD files. CIM also consumes less CPU and memory than VHD.
A CIM file is a file with a .CIM extension that contains metadata and at least two additional files that contain actual data. The files within the CIM file don't have extensions. The following table is a list of example files you'd find inside a CIM:
The following table is a performance comparison between VHD and CimFS. These numbers were the result of a test run with five hundred 300 MB files in each format run on a DSv4 machine.
|Average mount time||356 ms||255 ms|
|Average unmount time||1615 ms||36 ms|
|Memory consumption||6% (of 8 GB)||2% (of 8 GB)|
|CPU (count spike)||Maxed out multiple times||No impact|