While macOS uses DAS-CTS to schedule hundreds of background activities, third-parties normally use launchd. Comes with a full diagram explaining DAS-CTS.
How running a background task takes a tiny fraction of second, although the task itself takes seconds or minutes, and why it’s run on E cores.
From the 8 cores of the original M1 chip to the M1 Ultra’s 20, this is how macOS manages threads from apps, services and other code.
There are two situations when M1 chips confine code to just one of their Performance cores: during startup, before the other cores are running, and when preparing an update.
CTS now schedules many important services, including syncing Calendar, Contacts, Messages, running weekly firmware checks with eficheck, and more.
CTS scheduling and dispatch of background tasks has no user interface, and no controls. How can you tell that there’s a problem, and what to do about it?
What does it take for an app to have ‘activities’ managed for efficiency by CTS? Not a lot – but in return, the management is a black box.
In the first article in this series, I explained how a great many background activities in macOS, including […]
Rather than using cron or launchd, many background services in macOS are now run using Centralized Task Scheduling (CTS). This is how it works.
Adds a new log view of background task scheduling and dispatch, greatly improves volume info, and fixes a rare crash.