GitHub / sysprog21 77 Repositories
sysprog21/rv32emu-bench
Language: JavaScript - Size: 501 KB - Last synced at: 1 day ago - Pushed at: 1 day ago - Stars: 0 - Forks: 1

sysprog21/lkmpg
The Linux Kernel Module Programming Guide (updated for 5.0+ kernels)
Language: TeX - Size: 7.34 MB - Last synced at: 3 days ago - Pushed at: 3 days ago - Stars: 8,017 - Forks: 573

sysprog21/simplefs
A simple native file system for Linux kernel
Language: C - Size: 128 KB - Last synced at: 3 days ago - Pushed at: about 2 months ago - Stars: 420 - Forks: 99

sysprog21/linmo
A simple multitasking OS kernel
Language: C - Size: 97.7 KB - Last synced at: 7 days ago - Pushed at: 7 days ago - Stars: 4 - Forks: 0

sysprog21/kecho
A lightweight echo server implementation in Linux kernel mode
Language: C - Size: 45.9 KB - Last synced at: 11 days ago - Pushed at: 11 days ago - Stars: 31 - Forks: 106

sysprog21/khttpd
An experimental HTTP server implemented as Linux kernel module
Language: C - Size: 27.3 KB - Last synced at: 11 days ago - Pushed at: 11 days ago - Stars: 74 - Forks: 123

sysprog21/semu
A minimalist RISC-V system emulator capable of running Linux kernel
Language: C - Size: 5.7 MB - Last synced at: 3 days ago - Pushed at: 15 days ago - Stars: 261 - Forks: 60

sysprog21/vwifi
A virtual wireless device driver for Linux
Language: C - Size: 774 KB - Last synced at: 13 days ago - Pushed at: 13 days ago - Stars: 227 - Forks: 47

sysprog21/mado
A window system for resource-constrained devices
Language: C - Size: 1.23 MB - Last synced at: 14 days ago - Pushed at: 14 days ago - Stars: 66 - Forks: 19

sysprog21/rv32emu-demo
Language: HTML - Size: 75.8 MB - Last synced at: 20 days ago - Pushed at: 20 days ago - Stars: 2 - Forks: 0

sysprog21/rv32emu
Compact and Efficient RISC-V RV32I[MAFC] emulator
Language: C - Size: 11.2 MB - Last synced at: 20 days ago - Pushed at: 20 days ago - Stars: 485 - Forks: 113

sysprog21/pitifulvm
A shabby implementation of Java virtual machine in C
Language: C - Size: 119 KB - Last synced at: 3 days ago - Pushed at: almost 3 years ago - Stars: 144 - Forks: 21

sysprog21/vcam
Virtual camera device driver for Linux
Language: C - Size: 44.9 KB - Last synced at: 3 days ago - Pushed at: about 1 month ago - Stars: 109 - Forks: 50

sysprog21/shecc
A self-hosting and educational C optimizing compiler
Language: C - Size: 2.58 MB - Last synced at: about 1 month ago - Pushed at: about 1 month ago - Stars: 1,233 - Forks: 130

sysprog21/kvm-host
A minimalist type 2 hypervisor using Linux Kernel Virtual Machine (KVM)
Language: C - Size: 144 KB - Last synced at: about 1 month ago - Pushed at: 6 months ago - Stars: 169 - Forks: 29

sysprog21/concurrent-programs
Complementary Concurrency Programs for course "Linux Kernel Internals"
Language: C - Size: 241 KB - Last synced at: about 1 month ago - Pushed at: 2 months ago - Stars: 392 - Forks: 87

sysprog21/lab0-c
C Programming Lab: Assessing Your C Programming Skills
Language: C - Size: 789 KB - Last synced at: about 2 months ago - Pushed at: about 2 months ago - Stars: 459 - Forks: 1,666

sysprog21/lkm-hidden
A Linux kernel module which hides itself
Language: C - Size: 12.7 KB - Last synced at: 21 days ago - Pushed at: almost 4 years ago - Stars: 46 - Forks: 15

sysprog21/jitboy
A Game Boy emulator with dynamic recompilation (JIT)
Language: C - Size: 229 KB - Last synced at: about 2 months ago - Pushed at: about 2 years ago - Stars: 312 - Forks: 14

sysprog21/kxo
A Tic-Tac-Toe Game Engine implemented as Linux kernel module
Language: C - Size: 57.6 KB - Last synced at: about 2 months ago - Pushed at: 2 months ago - Stars: 7 - Forks: 74

sysprog21/concurrency-primer
Concurrency Primer
Language: TeX - Size: 337 KB - Last synced at: about 2 months ago - Pushed at: 11 months ago - Stars: 94 - Forks: 13

sysprog21/linux-cfs-sim
Simulate Linux Completely Fair Scheduler (CFS) using POSIX Threads
Language: C - Size: 35.2 KB - Last synced at: about 2 months ago - Pushed at: almost 4 years ago - Stars: 20 - Forks: 3

sysprog21/cpumemory-zhtw
Traditional Chinese translation of "What Every Programmer Should Know About Memory"
Language: CSS - Size: 4.45 MB - Last synced at: about 2 months ago - Pushed at: 12 months ago - Stars: 303 - Forks: 32

sysprog21/simrupt
A Linux device driver that simulates interrupts
Language: Shell - Size: 24.4 KB - Last synced at: about 1 month ago - Pushed at: 3 months ago - Stars: 12 - Forks: 30

sysprog21/raytracing
Small ray tracing program for performance evaluation
Language: C - Size: 110 KB - Last synced at: about 2 months ago - Pushed at: over 8 years ago - Stars: 11 - Forks: 115

sysprog21/fiber
A User Space Threading Library
Language: C - Size: 47.9 KB - Last synced at: about 2 months ago - Pushed at: about 1 year ago - Stars: 19 - Forks: 11

sysprog21/fastcat
A faster "cat" implementation using splice and sendfile system calls
Language: C - Size: 7.81 KB - Last synced at: about 2 months ago - Pushed at: about 5 years ago - Stars: 16 - Forks: 4

sysprog21/ksort
A Linux kernel module capable of performing concurrent sorts
Language: C - Size: 36.1 KB - Last synced at: about 2 months ago - Pushed at: 3 months ago - Stars: 3 - Forks: 38

sysprog21/cserv
An event-driven and non-blocking web server
Language: C - Size: 65.4 KB - Last synced at: about 2 months ago - Pushed at: almost 2 years ago - Stars: 82 - Forks: 27

sysprog21/vsnd
Virtual Linux soundcard driver
Language: C - Size: 21.5 KB - Last synced at: about 2 months ago - Pushed at: about 1 year ago - Stars: 27 - Forks: 9

sysprog21/threadx-cortex-r5-demo
Rust-written Real-Time Tasks on Eclipse ThreadX
Language: Rust - Size: 16.6 KB - Last synced at: about 2 months ago - Pushed at: 7 months ago - Stars: 4 - Forks: 0

sysprog21/neocon
A simple serial console utility
Language: C - Size: 48.8 KB - Last synced at: about 2 months ago - Pushed at: about 2 years ago - Stars: 16 - Forks: 2

sysprog21/sehttpd
A small and efficient web server with 1K lines of C code
Language: C - Size: 45.9 KB - Last synced at: about 2 months ago - Pushed at: over 2 years ago - Stars: 87 - Forks: 75

sysprog21/linux-list
Linux-like doubly-linked list
Language: C - Size: 20.5 KB - Last synced at: about 2 months ago - Pushed at: about 1 year ago - Stars: 52 - Forks: 131

sysprog21/rv32emu-prebuilt
The prebuilt binary files used by rv32emu
Size: 769 KB - Last synced at: about 2 months ago - Pushed at: 4 months ago - Stars: 2 - Forks: 1

sysprog21/vinput
A collection of virtual input device drivers for Linux
Language: C - Size: 47.9 KB - Last synced at: about 1 month ago - Pushed at: about 3 years ago - Stars: 34 - Forks: 5

sysprog21/compute-pi
Leibniz formula for π
Language: C - Size: 19.5 KB - Last synced at: about 2 months ago - Pushed at: almost 6 years ago - Stars: 11 - Forks: 106

sysprog21/gameboy-emu
An efficient and portable Game Boy emulator
Language: C - Size: 79.1 KB - Last synced at: about 2 months ago - Pushed at: about 1 year ago - Stars: 36 - Forks: 6

sysprog21/Kconfiglib
A flexible Python Kconfig implementation
Language: Python - Size: 3.08 MB - Last synced at: about 2 months ago - Pushed at: 5 months ago - Stars: 4 - Forks: 0

sysprog21/raycaster
Wolfenstein 3D-style raycasting implementation
Language: C - Size: 96.7 KB - Last synced at: about 2 months ago - Pushed at: over 2 years ago - Stars: 46 - Forks: 43

sysprog21/intrusive-ds
A collection of intrusive data-structures for C
Language: C - Size: 9.77 KB - Last synced at: about 2 months ago - Pushed at: about 7 years ago - Stars: 11 - Forks: 1

sysprog21/classify-rv32i
Assignment 2: Classify
Language: Python - Size: 33.2 KB - Last synced at: 9 days ago - Pushed at: 8 months ago - Stars: 1 - Forks: 107

sysprog21/jit-construct
JIT compiler from scratch, derived from Nick Desaulniers' great work
Language: Lua - Size: 158 KB - Last synced at: about 2 months ago - Pushed at: over 8 years ago - Stars: 12 - Forks: 37

sysprog21/mapreduce
A simple C Thread pool implementation
Language: C - Size: 38.1 KB - Last synced at: about 2 months ago - Pushed at: about 5 years ago - Stars: 13 - Forks: 12

sysprog21/concurrent-ll
concurrent linked list implementation
Language: C - Size: 66.4 KB - Last synced at: 3 days ago - Pushed at: about 1 year ago - Stars: 73 - Forks: 53

sysprog21/rubi
Ruby-like high-performance script programming language with JIT compilation
Language: C - Size: 120 KB - Last synced at: about 2 months ago - Pushed at: about 7 years ago - Stars: 27 - Forks: 17

sysprog21/ca2023-lab3
Lab3: Construct a single-cycle CPU with Chisel
Language: Scala - Size: 30.3 KB - Last synced at: about 2 months ago - Pushed at: over 1 year ago - Stars: 18 - Forks: 60

sysprog21/jit-framework Fork of dstogov/ir
Lightweight JIT Compilation Framework
Language: C - Size: 2.53 MB - Last synced at: 7 months ago - Pushed at: 7 months ago - Stars: 3 - Forks: 0

sysprog21/dict
Ternary Search Tree + Bloom filter
Language: C - Size: 2.45 MB - Last synced at: about 2 months ago - Pushed at: over 4 years ago - Stars: 19 - Forks: 106

sysprog21/threadx Fork of eclipse-threadx/threadx
An advanced real-time operating system designed specifically for deeply embedded applications.
Language: C - Size: 17.7 MB - Last synced at: 7 months ago - Pushed at: 7 months ago - Stars: 2 - Forks: 0

sysprog21/fibdrv
Linux kernel module that calculates Fibonacci numbers
Language: Shell - Size: 34.2 KB - Last synced at: about 1 month ago - Pushed at: 12 months ago - Stars: 40 - Forks: 334

sysprog21/rv8-bench Fork of michaeljclark/rv8-bench
rv8 benchmark suite
Language: C - Size: 247 KB - Last synced at: 8 months ago - Pushed at: 8 months ago - Stars: 1 - Forks: 0

sysprog21/gecos
GECOS: A lock-free synchronization mechanism
Language: C - Size: 33.2 KB - Last synced at: about 2 months ago - Pushed at: almost 4 years ago - Stars: 8 - Forks: 0

sysprog21/buddy
Buddy Memory Allocator
Language: C - Size: 12.7 KB - Last synced at: about 2 months ago - Pushed at: about 6 years ago - Stars: 12 - Forks: 4

sysprog21/prefix-search
Implement prefix search using ternary search tree
Language: C - Size: 734 KB - Last synced at: about 2 months ago - Pushed at: over 7 years ago - Stars: 13 - Forks: 66

sysprog21/quake-embedded Fork of FantomJAC/quakembd
Quake for embedded devices
Language: C - Size: 694 KB - Last synced at: 10 months ago - Pushed at: 10 months ago - Stars: 6 - Forks: 7

sysprog21/rnnoise
A noise suppression library based on a recurrent neural network
Language: C - Size: 4.08 MB - Last synced at: about 2 months ago - Pushed at: almost 5 years ago - Stars: 20 - Forks: 7

sysprog21/ansibench Fork of nfinit/ansibench
A selection of ANSI C benchmarks and programs useful as benchmarks
Language: C - Size: 414 KB - Last synced at: 11 months ago - Pushed at: 11 months ago - Stars: 2 - Forks: 0

sysprog21/doom_riscv Fork of smunaut/doom_riscv
Doom classic port to lightweight RISC‑V
Language: C++ - Size: 826 KB - Last synced at: 11 months ago - Pushed at: 11 months ago - Stars: 3 - Forks: 4

sysprog21/ieeelib Fork of ant6n/ieeelib
Torbjorn Granlund's soft floating-point emulation library
Language: C - Size: 33.2 KB - Last synced at: 11 months ago - Pushed at: 11 months ago - Stars: 0 - Forks: 0

sysprog21/tinymembench
Measure peak bandwidth of sequential memory accesses and the latency of random memory accesses
Language: C - Size: 59.6 KB - Last synced at: about 2 months ago - Pushed at: over 3 years ago - Stars: 6 - Forks: 4

sysprog21/threadkit
A collection of lightweight threading utilities
Language: C - Size: 42 KB - Last synced at: about 2 months ago - Pushed at: about 5 years ago - Stars: 23 - Forks: 7

sysprog21/y86_64-tools
Y86-64 Tools: assembler, simulator, Verilog designs
Language: C - Size: 84 KB - Last synced at: about 2 months ago - Pushed at: over 6 years ago - Stars: 17 - Forks: 6

sysprog21/nyancat
Nyancat rendered in your terminal
Language: C - Size: 146 KB - Last synced at: about 2 months ago - Pushed at: over 7 years ago - Stars: 6 - Forks: 2

sysprog21/kfifo-examples
Linux kernel module examples about kfifo
Language: C - Size: 9.77 KB - Last synced at: about 2 months ago - Pushed at: almost 4 years ago - Stars: 6 - Forks: 4

sysprog21/bignum
An incomplete arbitrary-precision integer arithmetic library
Language: C - Size: 24.4 KB - Last synced at: about 2 months ago - Pushed at: over 3 years ago - Stars: 14 - Forks: 16

sysprog21/malloc-test-concurrent
concurrent malloc benchmark
Language: C - Size: 7.81 KB - Last synced at: 23 days ago - Pushed at: over 8 years ago - Stars: 2 - Forks: 2

sysprog21/kcalc
Math expression evaluation as Linux kernel module
Language: C - Size: 81.1 KB - Last synced at: 23 days ago - Pushed at: about 5 years ago - Stars: 17 - Forks: 45

sysprog21/kcalc-fixed
Math expression evaluation as Linux kernel module, fixed-point implementation
Language: C - Size: 64.5 KB - Last synced at: about 2 months ago - Pushed at: over 4 years ago - Stars: 4 - Forks: 14

sysprog21/mergesort-concurrent
merge sort on singly-linked list utilzing POSIX Thread
Language: C - Size: 1.02 MB - Last synced at: 21 days ago - Pushed at: over 8 years ago - Stars: 6 - Forks: 66

sysprog21/moxiebox
A secure, sandboxed execution mechanism that enables deterministic input, processing and output
Language: C - Size: 65.4 KB - Last synced at: about 2 months ago - Pushed at: over 7 years ago - Stars: 9 - Forks: 18

sysprog21/balanced-ternary
Ilustrate how balanced ternary works
Language: Shell - Size: 4.88 KB - Last synced at: about 2 months ago - Pushed at: almost 8 years ago - Stars: 3 - Forks: 38

sysprog21/berkeley-softfloat-3 Fork of ucb-bar/berkeley-softfloat-3
SoftFloat release 3
Language: C - Size: 766 KB - Last synced at: about 1 year ago - Pushed at: over 1 year ago - Stars: 2 - Forks: 1

sysprog21/chisel-bootcamp Fork of freechipsproject/chisel-bootcamp
Generator Bootcamp Material: Learn Chisel the Right Way
Language: Jupyter Notebook - Size: 1.53 MB - Last synced at: about 1 year ago - Pushed at: over 1 year ago - Stars: 1 - Forks: 0

sysprog21/rv32emu-legacy 📦
RISC-V RV32I[MA] emulator with ELF support
Language: C - Size: 32.2 KB - Last synced at: over 1 year ago - Pushed at: over 4 years ago - Stars: 46 - Forks: 18

sysprog21/kilo
A text editor in less than 1000 LoC with syntax highlight and search
Language: C - Size: 42 KB - Last synced at: about 2 months ago - Pushed at: over 6 years ago - Stars: 8 - Forks: 6

sysprog21/jitcalc
A simple integer calculator using JIT compilation
Language: C - Size: 22.5 KB - Last synced at: 9 days ago - Pushed at: over 4 years ago - Stars: 15 - Forks: 2

sysprog21/full-stack-hello Fork of jserv/full-stack-hello
minimal instruction set and assembler/compiler for "Hello World" execution
Language: C - Size: 78.1 KB - Last synced at: almost 2 years ago - Pushed at: over 7 years ago - Stars: 7 - Forks: 24

sysprog21/dont-trace
A simple Linux kernel module that kills ptrace tracer and its tracees
Language: C - Size: 2.93 KB - Last synced at: about 2 months ago - Pushed at: almost 4 years ago - Stars: 6 - Forks: 0

sysprog21/riscv-emu Fork of fernandotcl/TinyEMU
RISC-V system emulator
Language: C - Size: 328 KB - Last synced at: almost 2 years ago - Pushed at: over 3 years ago - Stars: 13 - Forks: 23

sysprog21/cirbuf
Circular Buffer implementation with mmap(2) *incomplete*
Language: C - Size: 145 KB - Last synced at: about 2 months ago - Pushed at: about 6 years ago - Stars: 4 - Forks: 13

sysprog21/datalab
Improved CS:APP Data Lab
Language: C - Size: 35.2 KB - Last synced at: about 1 month ago - Pushed at: over 5 years ago - Stars: 9 - Forks: 48

sysprog21/srv32 Fork of kuopinghsu/srv32
Simple 3-stage pipeline RISC-V processor
Language: C - Size: 2.83 MB - Last synced at: almost 2 years ago - Pushed at: about 2 years ago - Stars: 1 - Forks: 7

sysprog21/phonebook 📦
sample phonebook program to illustrate the impact of cache miss
Language: Shell - Size: 1.07 MB - Last synced at: over 1 year ago - Pushed at: almost 3 years ago - Stars: 8 - Forks: 201

sysprog21/clz-tests
Evaluate implementations of count leading zero
Language: C - Size: 583 KB - Last synced at: about 2 months ago - Pushed at: almost 8 years ago - Stars: 1 - Forks: 57

sysprog21/prefetcher
Evaluate the effects of prefetching
Language: Shell - Size: 11.7 KB - Last synced at: about 2 months ago - Pushed at: over 7 years ago - Stars: 3 - Forks: 62

sysprog21/tco-test
Test the ability of C compilers performing Tail Call Optimization
Language: C - Size: 1000 Bytes - Last synced at: about 2 months ago - Pushed at: over 6 years ago - Stars: 2 - Forks: 1

sysprog21/quotient-filter
(Incomplete) in-memory quotient filter
Language: C - Size: 3.91 KB - Last synced at: about 2 months ago - Pushed at: over 5 years ago - Stars: 1 - Forks: 6

sysprog21/phonebook-concurrent
build a phonebook program by concurrent linked list
Language: C - Size: 1.1 MB - Last synced at: about 2 months ago - Pushed at: over 8 years ago - Stars: 3 - Forks: 82

sysprog21/sched-plugin
A Linux kernel module to allow user processes being handed out with LKM based scheduler
Language: C - Size: 14.6 KB - Last synced at: about 2 months ago - Pushed at: almost 4 years ago - Stars: 3 - Forks: 1

sysprog21/matrix_oo
Sample matrix implementation illustrating object-oriented techniques in C99
Language: Shell - Size: 12.7 KB - Last synced at: about 2 months ago - Pushed at: about 8 years ago - Stars: 6 - Forks: 33

sysprog21/timeout Fork of wahern/timeout
Tickless hierarchical timing wheel
Language: C - Size: 148 KB - Last synced at: almost 2 years ago - Pushed at: about 4 years ago - Stars: 0 - Forks: 1

sysprog21/ogc Fork of jserv/ogc
A minimal mark-and-sweep garbage collector
Language: C - Size: 6.84 KB - Last synced at: almost 2 years ago - Pushed at: over 6 years ago - Stars: 1 - Forks: 9

sysprog21/align-bench
Microbenchmark for unaligned memory access
Language: C - Size: 4.88 KB - Last synced at: about 2 months ago - Pushed at: over 7 years ago - Stars: 4 - Forks: 1

sysprog21/bf-runtime
Brainf*ck runtime engine
Language: C - Size: 7.81 KB - Last synced at: about 2 months ago - Pushed at: over 8 years ago - Stars: 1 - Forks: 2

sysprog21/SuperMalloc Fork of kuszmaul/SuperMalloc
A Super Fast Multithreaded malloc() for 64-bit Machines
Language: TeX - Size: 4.78 MB - Last synced at: almost 2 years ago - Pushed at: over 8 years ago - Stars: 0 - Forks: 12
