In the previous article, I proposed a new lockless channel architecture based on two bit vectors. One is used to reserve access to a memory region, the other to commit changes. I showed promising theoretical performance improvements: whereas existing architectures pay the cost of linearizability without clients being able to take advantage of such consistency, lockless bags allow each element in the channel to be operated upon fully independently. In theory.
Lockless queues let multiple cores communicate with each other without mutexes, typically to move work around for parallel processing. They come in four variants: {single,multi}-producer {single,multi}-consumer. A producer gives data to a consumer, each of which can be limited to a single thread (i.e. a single-{producer,consumer}) or shared across multiple threads. But only the single-producer single-consumer (SPSC) queue is actually a queue!
You’ve seen us generalize over buffer types, now let’s generalize over buffer mutability!
Ringboard is a simple yet powerful clipboard manager, designed for Linux to be desktop environment (DE) agnostic. Ringboard strives to be as efficient as possible, use a minimal constant amount of memory, scale to massive clipboards, and be composable with the rest of the ecosystem. It is implemented using a client-server architecture (with a Unix Domain Socket) which enables using a command line interface (CLI) for lower level operations, a terminal user interface (TUI) for a convenient yet unobtrusive interface, and various graphical user interfaces (GUIs). Currently, the clients include a stand-alone GUI implemented using egui and a TUI implemented using ratatui with plans for a COSMIC applet (issue) and Gnome extension (issue). Ringboard aims to be the best clipboard manager for Linux.
Fast Unix Commands (FUC) is a project that aims to create the world’s fastest Unix commands. Currently, this means rm and cp replacements named rmz and cpz (the ‘z’ stands for “zippy”). When better performance cannot be achieved, the next highest priority is efficiency. In practice, rmz appears to be the fastest file deleter available while cpz wins in most cases, only losing in flat directory hierarchies.
ForkFS is a CLI app that redirects a process’s file operations to a sandbox.
Is it better to have tests that confirm incorrect behavior, or none at all? I’m here to argue that tests are valuable even when they assert what a human considers to be an incorrect result. Pushing this idea even further, a test asserting incorrect behavior should be added in a separate commit before fixing the behavior in another commit.
Gnome Clipboard History (GCH) is a Gnome extension that saves what you’ve copied into an easily accessible, searchable history panel. The primary innovation over existing clipboard managers is the use of a compacting log for persistent storage.
File Tree Fuzzer (FTZZ) is a CLI tool written in Rust that lets you generate pseudo-random directory hierarchies filled with some number of files, each of which can be empty or contain some number of pseudo-random bytes. The pseudo part is important: it means FTZZ will generate the exact same directory hierarchy given the same inputs. This makes FTZZ useful for benchmarking other programs like rm or cp since you can run them again and again on the same exact set of files.
Archived projects
Third party projects