System Software

Student Management System

View Code
CLI Interface

Low-level database engine in C

A high-performance CRUD system that bypasses high-level abstractions to manipulate raw data streams directly. This project demonstrates deep understanding of file I/O, memory management, and binary serialization using the C Standard Library.

Key Pattern: Synchronous file I/O with manual buffer flushing to ensure data persistence even in the event of software interrupt.

This project demonstrates a low-level implementation of a database engine using the C Standard Library. It showcases how modern databases work under the hood by directly manipulating binary data streams.

Core Architecture

  • Binary file storage with struct serialization
  • Direct byte-offset navigation using fseek()
  • Atomic operations with temporary file swapping
  • In-place updates using rb+ file mode

Execution Screenshots

Add Record

Add Record

Database Dump

Database Dump

Query Engine

Query Engine

Update Buffer

Update Buffer

Delete Rewrite

Delete Rewrite

Integrity Check

Integrity Check

Specifications

Language

ANSI C / C99

Compiler

GCC / Clang

I/O Mode

Unbuffered Binary

Pattern

Direct Memory Access

Data Structure

struct Student {
char name[50];
int rollNo;
float gpa;
};

Project Stats

Lines of Code~450
Functions8
ComplexityIntermediate