About Parallels Desktop System Extensions on macOS





If you are a Parallels Desktop user (or use another application that requires third-party system extensions), then you have probably seen messages from macOS and Parallels Desktop that say "System extension is blocked."



So what is a system extension , and why is the operating system blocking it? Is it dangerous? Quite logical questions for an ordinary user, which are often asked to our Parallels technical support engineers. In this post I will try to explain this situation in as much detail and as possible.







First, a relatively short answer about why Parallels Desktop uses system extensions, and then more details follow.



  1. Parallels Desktop uses hardware hypervisor technology (Intel VT-x hypervisor) to create a high-performance virtual machine, be it Windows, Linux, macOS or other operating systems.
  2. To manage the hypervisor, the system must have a driver, which in macOS is called system extensions (formerly kernel extensions) - an extension (kernel) of the system.
  3. On macOS, there are two types of hypervisor that Parallels Desktop can use: Apple's built-in hypervisor or Parallels's own hypervisor.
  4. Parallels proprietary hypervisor is implemented as an extension of the system. System extensions in macOS allow developers to integrate deeply into the macOS system for better performance or some unique functionality.
  5. Parallels Desktop Parallels, macOS «» ().
  6. , , . , , , .
  7. Parallels Desktop parallels.com, «Parallels International GmbH», .
  8. Parallels Apple. , macOS .
  9. , (Nested virtualization) , Parallels , Parallels.
  10. , () . , Parallels.
  11. , « »> «»> « »> « »> «»> «Apple» «Parallels» .
  12. If you have multiple virtual machines, you may need to change the setting for each one.


Now, if you are not bored yet, I would like to tell you a little more about this story.



For over a decade, Parallels has been developing proprietary drivers (aka "system extensions") to run Windows and other operating systems on top of macOS. These drivers make Parallels Desktop the best on the market: the fastest and most advanced desktop virtualization solution.



At the same time, for several years, Apple has been moving towards making macOS the safest and most reliable desktop operating system (and I have to admit, Apple has done well in many ways). One of the key aspects is to prevent developers from invading the OS kernel by loading these very extensions (also known as "kexts"), as those with kernel access can do things in the heart of your Mac that can turn out to be pretty dangerous.



To do this, Apple must replace third-party kernel extensions with proprietary system APIs that ultimately need to provide the same product functionality, which is a huge engineering effort even for a large enterprise like Apple.



Since 2017, with the release of macOS High Sierra version 10.13, Apple has startedautomatically block third-party "kexts" (as we call them in our slang), and since then users have to manually allow them to download.



In March 2020, with the release of macOS Catalina version 10.15.4, Apple began warning users that some of their applications (which use an outdated system extension) would be “incompatible with a future version of macOS” (read “macOS Big Sur 11”).



In June 2020, during Apple's Worldwide Developers Conference (WWDC-20), the company posted the following statement (still translated from English):



"System extensions make macOS more reliable and secure, and legacy kernel extensions are not loaded by default in macOS Big Sur." In the end, to make Parallels Desktop fully compatible with the new macOS Big Sur 11, the Parallels engineering team spent years rebuilding Parallels Desktop and its functionality using the new macOS system APIs.



This extensive and time-consuming work has resulted in the all-new Parallels Desktop 16 , specifically designed to work and integrate with the new technologies in macOS Big Sur, while delivering performance and compatibility improvements to the benefit of Parallels Desktop users.



This diagram below illustrates the difference between Parallels Desktop default modes in the corresponding macOS version. The old Parallels Desktop design using Parallels system extensions is shown on the left, and the newly invented Parallels Desktop 16, using macOS Big Sur 11 APIs, is shown on the right.







At the moment, our team continues to work on supporting Parallels and Apple hypervisors and continues to work with Apple to implement the rest of the Parallels Hypervisor features in Apple Hypervisor. We recommend using the Apple hypervisor, and if you notice a difference between Apple and Parallels hypervisors for your use case, please let us know.



If you have any questions - write. Thanks for attention!










All Articles