Atomic instructions

Primitive atomic instructions

Processors provide instructions that allow atomic operations like read-modify-write, compare-and-swap, and fetch-and-add, which are used to implement lock-free algorithms; these low-level atomic operations are abstracted and exposed through languages and libraries. However, multi-word or interruptible operations on processors are not atomic, so care must be taken when accessing shared memory locations.

2 courses cover this concept

CSCI 0300: Fundamentals of Computer Systems

Brown University

Spring 2023

Introductory course covering computer system fundamentals including machine organization, systems programming in C/C++, operating systems concepts, isolation, security, virtualization, concurrency, and distributed systems. Projects involve implementing core OS functionality.

No concepts data

+ 32 more concepts

CS 162: Operating Systems and Systems Programming

UC Berkeley

Fall 2022

This course introduces operating systems design and related concepts. It covers topics like memory allocation, file systems, basic networking, transactions, and security. The course requires foundational knowledge in data structures, assembly language, C programming, and debugging. It aims to improve students' skills in debugging large programs and computational problem solving.

No concepts data

+ 49 more concepts