All Projects → akiekintveld → systems

akiekintveld / systems

Licence: CC0-1.0 license
Resources for learning systems programming.

Projects that are alternatives of or similar to systems

scaraOS
A 32bit multiboot OS kernel for IA32 (PC/AT) systems.
Stars: ✭ 31 (-26.19%)
Mutual labels:  operating-systems, kernels
Anatomy-of-System-Engineering
System Engineering Memory Map
Stars: ✭ 17 (-59.52%)
Mutual labels:  operating-systems
Awesome Machine Learning In Compilers
Must read research papers and links to tools and datasets that are related to using machine learning for compilers and systems optimisation
Stars: ✭ 168 (+300%)
Mutual labels:  operating-systems
systems-programming-cheat-sheet
Cheat sheet for x86-64 Unix systems programming
Stars: ✭ 328 (+680.95%)
Mutual labels:  systems-programming
Helios
The free embedded operating system.
Stars: ✭ 223 (+430.95%)
Mutual labels:  operating-systems
CPL-1
Operating system in C written for fun and glory
Stars: ✭ 33 (-21.43%)
Mutual labels:  operating-systems
Learning
Learning Shell,Python,Golang,System,Network
Stars: ✭ 161 (+283.33%)
Mutual labels:  operating-systems
SSDUT-learning-materials
这些是我本科四年的专业课学习资料,分享给大家,也欢迎大家把里面没有的传进去,一定不要造轮子啊。😀
Stars: ✭ 27 (-35.71%)
Mutual labels:  operating-systems
KRS
The Kria Robotics Stack (KRS) is a ROS 2 superset for industry, an integrated set of robot libraries and utilities to accelerate the development, maintenance and commercialization of industrial-grade robotic solutions while using adaptive computing.
Stars: ✭ 26 (-38.1%)
Mutual labels:  kernels
snowflake
a language
Stars: ✭ 16 (-61.9%)
Mutual labels:  systems-programming
linux-dev
🐧 A curated list of Linux developer resources 🐧
Stars: ✭ 19 (-54.76%)
Mutual labels:  operating-systems
TempleOS-EE
TempleOS Explorers Edition
Stars: ✭ 45 (+7.14%)
Mutual labels:  operating-systems
vonuvoli-scheme
vonuvoli Scheme -- an R7RS interpreter written in Rust focused on systems programming and scripting (i.e. processes, file-system, etc.) with performance and safety in mind
Stars: ✭ 81 (+92.86%)
Mutual labels:  systems-programming
Netboot.xyz
Your favorite operating systems in one place. A network-based bootable operating system installer based on iPXE.
Stars: ✭ 2,753 (+6454.76%)
Mutual labels:  operating-systems
osbuild
Build-Pipelines for Operating System Artifacts
Stars: ✭ 95 (+126.19%)
Mutual labels:  operating-systems
Hdk
(unofficial) Hyper-V® Development Kit
Stars: ✭ 166 (+295.24%)
Mutual labels:  operating-systems
collaboration
Spring '20 IoT - systems and security class. This is the collaborative half of the class.
Stars: ✭ 14 (-66.67%)
Mutual labels:  operating-systems
oneplus3
GPL source code to Caesium kernel for OnePlus 3/3T
Stars: ✭ 45 (+7.14%)
Mutual labels:  kernels
systems-programming
Examples of common systems programming optimizations
Stars: ✭ 47 (+11.9%)
Mutual labels:  systems-programming
mbr-boot-manager
💾 Master Boot Record with a boot menu written in Assembly
Stars: ✭ 57 (+35.71%)
Mutual labels:  operating-systems

What is systems programming?

Broadly, developing software that is:

  1. Relied upon for correctness and security by other software.
  2. Constrained by physical resources of its execution environments.

What are some resources to learn about systems programming?

General

Data Structures & Algorithms

Keywords: asymptotic complexity, array, queue, hash table, search tree, linked list, heap, sorting, binary search, backtracking, graph search, divide and conquer, memoization, string matching

Programming Languages

Computer Architecture

Keywords: von Neumann architecture, instruction set architecture, memory hierarchy, endianness, pipelining, branch prediction, out-of-order execution, cache coherence, trap

Compilers, Linkers, Loaders and Runtimes

Abstract Machine

Keywords: undefined behavior, memory model, pointer provenance, implementation-defined behavior, Rust ownership/lifetimes, memory safety, strict aliasing, C/C++ volatile

Security/Cryptography

Keywords: threat model, principle of least priviledge, Kerckhoffs's principle, confidentiality, data integrity, authentication, non-repudiation, computational hardness, vulnerabilities, buffer overflow, side-channel attack

Performance

Keywords: cache locality, zero-copy, data oriented design, benchmarking, SIMD

Scalability

Concurrency & Asynchrony

Keywords: multithreading, race condition, synchronization, deadlock, starvation, linearizability, memory ordering, shared mutable state, fiber, coroutine, async/await

Functional Programming

Keywords: referential transparency, algebraic datatypes, lambda expression, recursion, higher order function, persistent data structure, lazy evaluation, category theory

Distributed Systems

Keywords: CAP theorem, consensus, clock synchronization, logical clock, redundancy, fault tolerance, ACID, eventual consistency, MapReduce

Operating Systems

Keywords: scheduling, preemption, context switch, address space, virtual memory, file system, device driver, IPC, virtualization, networking

Research

Teaching

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].