We're sorry but this page doesn't work properly without JavaScript enabled. Please enable it to continue.
Feedback

Mach-O linker in Zig: linking in the era of Apple Silicon

Formale Metadaten

Titel
Mach-O linker in Zig: linking in the era of Apple Silicon
Serientitel
Anzahl der Teile
637
Autor
Mitwirkende
Lizenz
CC-Namensnennung 2.0 Belgien:
Sie dürfen das Werk bzw. den Inhalt zu jedem legalen Zweck nutzen, verändern und in unveränderter oder veränderter Form vervielfältigen, verbreiten und öffentlich zugänglich machen, sofern Sie den Namen des Autors/Rechteinhabers in der von ihm festgelegten Weise nennen.
Identifikatoren
Herausgeber
Erscheinungsjahr
Sprache

Inhaltliche Metadaten

Fachgebiet
Genre
Abstract
One of Zig's main goals is seamless cross-compilation from any target to any target. This includes macOS and Apple's recent switch from x64 to ARM64 architecture with the introduction of the M1 SoC. This talk will delve deep into the internals of Mach-O linking in ZIg for both x64 and ARM64 targets, discussing new strict requirements the ARM64-version of the XNU kernel places on the binaries such as embedded code signature and inode caching, and how Zig mustered up to address and solve them for fantastic developer experience on macOS. I hope for this talk to deliver on two fronts: 1) to showcase and convince the audience that Zig takes cross-compilation very seriously and is a language worth learning, and 2) demistify Mach-O linking in general. Yet another great strength of Zig is that it is a very readable language, therefore, even though the code examples will be in Zig, it will not hinder anyone's ability to enjoy figuring out the finer points of Mach-O linking on ARM64 aka the Apple Silicon which are language-agnostic. Finally, there naturally will be coding examples interleaved here and there to demonstrate the different linking concepts that the talk will touch upon.