Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Synchronization #84

Merged
merged 20 commits into from
Nov 19, 2024
Merged

Synchronization #84

merged 20 commits into from
Nov 19, 2024

Conversation

phaubertin
Copy link
Owner

@phaubertin phaubertin commented Nov 13, 2024

In the current situation, only one thread runs at a time since only one CPU is enabled. Furthermore, threading is fully cooperative since interrupts are always disabled, so threads can never be preempted.

This PR starts laying the foundations for multiprocessing by creating the necessary synchronization primitives (spinlock, atomic increment/decrement, "block thread and unlock", etc.) and by ensuring they are used where needed.

@phaubertin phaubertin marked this pull request as ready for review November 19, 2024 02:00
@phaubertin phaubertin merged commit b748a2f into main Nov 19, 2024
2 checks passed
@phaubertin phaubertin deleted the feature_synchronize branch November 19, 2024 02:21
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant