Technical Case Studies

Engineering robust, scalable, and stable software solutions through low-level systems programming.

Minishell Architecture

Minishell: System Architecture

The Challenge: Developing a fully functional POSIX-compliant shell from scratch, requiring complex kernel-level integration and process synchronization.

The Solution: Engineered a custom Lexer and Parser in C to manage command execution pipelines. Implemented precise process management using file descriptors and environment variable tracking.

Technical Proof:

  • Orchestrated Process Forking and seamless Redirections.
  • Implemented robust Signal Handling to prevent system hangs.
  • Maintained 0% memory leakage under recursive testing conditions.
Systems Unix API Logic
View Technical Docs ▹

Philosophers: Concurrency

The Challenge: Solving the synchronization bottleneck where multiple threads compete for shared resources, leading to deadlocks or data races.

The Solution: Applied Thread Synchronization using Mutexes and precise timing logic. Built a monitoring system to ensure resource stability without freezing the CPU.

Technical Proof:

  • Eliminated Data Races through strict resource protection logic.
  • Engineered millisecond-accurate monitoring for thread vitality.
  • Optimized shared memory access to ensure 100% deadlock prevention.
Multi-threading Concurrency C Logic
View Concurrency Specs ▹
Concurrent Computing Study
Graphics Engine Study

Cub3D: Graphics Engine

The Challenge: Generating a real-time 3D perspective without the aid of modern GPUs or high-level gaming frameworks.

The Solution: Built a custom Raycasting Engine. Manually calculated trigonometry and Euclidean geometry to render textured environments at high refresh rates.

Technical Proof:

  • Optimized algorithms for **consistent 60FPS performance**.
  • Developed custom parsing for map stability and error handling.
  • Implemented texture mapping and collision detection at the pixel level.
Graphics Mathematics Optimization
View Graphics Engineering ▹