Jack Bodine

Artifacts are tangible pieces of evidence demonstrating the skills and knowledge I’ve acquired from various learning experiences. Links labeled “currently unavailable” indicate either that I haven’t gotten around to publishing it or that the project contains exam/coursework which must remain private for furture iterations of the course. However, if you email me, I’ll try to expedite it.

January 2025

Buddy Allocator in Rust

Philipp Oppermann's blog

Code on Github

During winter break between my semesters, I was able to start working on a project I had always wanted to do: write an OS in Rust. I followed the incredibly well put together online textbook by Philipp Oppermann and used the OS dev wiki for reference and further reading. This project allowed me to continue to practice Rust, as it’s a language I enjoy but don’t often have the chance to use during work or classes.

The textbook details implementations for three allocators: Bump, Linked List and Fixed-size block. To demonstrate my understanding of the topics discussed in the book, I implemented an additional allocator using the buddy memory allocation technique.

Operating Systems, Rust

December 2021

Concurrent Sorting Algorithms

CSCI475 - Operating Systems

Available Soon

CSCI 475, Operating Systems, concentrated on the fundamentals of operating systems, with a significant focus on multithreaded programming and concurrency. As an artifact, I implemented MergeSort and QuickSort using multithreading, written in C and utilizing pthreads, demonstrating my understanding and application of these concepts.

Operating Systems, Concurrent Programming

Skills

clear