Background image

Lab 3: nyuenc

Back to Operating Systems

Run-Length Encoder with Thread Pool Support

Configuration

Example: aaaaaabbbbbbbbba (will encode as a6 b9 a1)

About nyuenc

RLE Format

Each encoded pair consists of:

  • ASCII character (1 byte)
  • Count (1 byte, range 0-255)

Example: "aaaaaabbbbbbbbba" → a6 b9 a1

Parallel Encoding
  • 4KB chunking strategy
  • Thread pool with mutex + condition variables
  • Results stitched at chunk boundaries
  • Validated with Valgrind (Helgrind/DRD)