Return to Portfolio

Project Detail

Disk Driver Simulation

Low-level disk driver and scheduling system written in C

Custom C-based disk device driver simulation implementing disk scheduling, DMA setup, recalibration handling, error recovery, and file system communication.

Overview

Project Overview

Developed a simulated disk device driver in C capable of processing asynchronous file system requests, handling DMA operations, and implementing disk scheduling logic.

Core Features

  • Disk arm elevator scheduling.
  • DMA register setup.
  • Motor state management.
  • Checksum recovery logic.
  • Cylinder recalibration.
  • Request queue processing.

Technologies

  • C Programming
  • Operating Systems
  • Disk Scheduling Algorithms
  • Low-Level Memory Management

Technical Skills

  • Systems Programming
  • Debugging
  • Error Recovery
  • Algorithm Design

Driver Execution Trace

> Initializing disk driver...

> Starting disk motor...

> Motor reached operational speed

> Request queue loaded

> Elevator scheduling active

> Reading block 212...

> DMA transfer completed

> Checksum verified

Implementation

Code Demonstration

while (true)
{
    send_message(fs_message);

    process_requests();

    execute_disk_operations();
}