Kapitel 7. Den Prozessor verstehen
Diese Arbeit wurde mithilfe von KI übersetzt. Wir freuen uns über dein Feedback und deine Kommentare: translation-feedback@oreilly.com
Während die Theorie aus den Kapiteln 2 und 3alles ist, was wir brauchen, um korrekten nebenläufigen Code zu schreiben, kann es darüber hinaus sehr nützlich sein, ein ungefähres Verständnis dafür zu entwickeln, was in der Praxis auf der Prozessorebene vor sich geht. In diesem Kapitel werden wir die Maschinenbefehle untersuchen, zu denen atomare Operationen kompiliert werden, wie sich die verschiedenen Prozessorarchitekturen unterscheiden, warum es eine schwache Version von compare_exchange
gibt, was Speicherordnung auf der untersten Ebene der einzelnen Befehle bedeutet und wie Caching mit all dem zusammenhängt.
Ziel dieses Kapitels ist es nicht, jedes relevante Detail jeder einzelnen Prozessorarchitektur zu verstehen. Dazu bräuchte man viele Bücherregale voller Bücher, von denen viele wahrscheinlich noch nicht geschrieben wurden oder nicht öffentlich zugänglich sind. Stattdessen ist es das Ziel dieses Kapitels, eine allgemeine Vorstellung davon zu entwickeln, wie Atome auf der Prozessorebene funktionieren, um fundiertere Entscheidungen bei der Implementierung und Optimierung von Code, der Atome enthält, treffen zu können. Und natürlich, um einfach unsere Neugier zu befriedigen, was hinter den Kulissen vor sich geht - eine Pause von all der abstrakten Theorie.
Um die Dinge so konkret wie möglich zu machen, konzentrieren ...
Get Rust Atomics und Schlösser now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.