Apple has improved app launching speeds in iOS 15 and macOS Monterey. According to the developer Noah Martin – who was once an iOS developer for Apple — Apple has changed the way apps communicate with the operating system. Thanks to this change, apps now have “dramatically less app launch times.”
When I fired up apps on my Mac running macOS Monterey beta for the first time, I thought that apps were launching faster. But then I considered it as a delusion that generally happens with the new updates, and didn’t bother about it again. However, Noah Martin notes that Apple has indeed implemented some system-level changes that cut down on the time it takes to launch an app.
How Apple Improved App Load Time in iOS 15 and macOS Monterey
Currently, all the apps in iOS and macOS are created as “bundles.” Basically, this means that instead of packing all the programs and resources of an app into one single package, these bundles are equipped with the most necessary components within a package.
Along with the bundles, an app also copies shared libraries with the dynamic linker process (dyld) onto the device’s RAM. RAM, on all devices, is divided into pages of 16kB. These pages stay in the RAM as long as the app is running. Up until now, the dyld process packaged all these pages into tables, and this process takes time which essentially delayed app launches.
As Martin notes in his post, Apple has solved this problem in iOS 15 and macOS Monterey with chains, fixups, and pointers. Instead of gradually loading the individual app components and the shared libraries separately into RAM, a pointer can now chain apps up to 64GB and connect them to each other via the fixups.
In layman terms, RAM’s pages are now interconnected to each other in a chain. This saves a lot of time spent in metadata management thus resulting in faster app load times. In addition, RAM pages that have not been used for a long time are compressed.
Martin conducted some tests to verify his claims. In his tests, Martin was able to save up to 50% space in metadata, thus allowing the app to launch faster.
Have you noticed faster app launch speeds in iOS 15 or macOS Monterey? Let us know in the comments section down below!