Apple released macOS 11.2.1 update which includes a fix for the much documented issue with sudo as well as fixing security vulnerabilities in the Intel GPU driver (link) and addressing the battery issue that has been impacting certain models of MacBook Pro (2016 and 2017) although funny enough I haven’t been impacted by it (link). macOS 11.3 is still in beta testing but it’ll be interesting to see the improvements that come.
On the matter of security, an interesting thing I noticed is that the ARM based binaries are compiled as an arm64e binary which adds and extra layer of security (it utilises a feature built into the ISA itself) when it comes to dealing with pointer based memory attacks (link). It will be interesting to see how this will translate in the real world in terms of picking up and mitigating possible threats. At the moment the A14 (M1 is based on the A14) is based on ARMv8.6-A and if you’ve been following the LLVM project you’ll notice that Apple has been gradually adding support for features found in the ISA to improve security and performance.
Although at this point the ARM ISA is as feature rich as a CISC ISA, the thing I notice is that any improvement is carefully considered through consultation with the various vendors that depend on the ISA so the end result is when features are added to the ISA it is because it has material benefit rather than, “lets add it and hope for the best”. It will be interesting to see whether Apple adopts the libc project that Google is working on which is a ground up replacement for the various libc implementations – rather than being a mixture of assembly and C, the focus is on a libc library delivered in pure C with optimisations done in the compiler itself rather than the library with the benefit that it makes the code more portable and any architectural improvements to an SoC can be delivered through making the Clang/LLVM toolchain better at producing code with the icing on the cake being all other code benefit from those Clang/LLVM toolchain improvements.