# 🗂️ Exercise Index – Linux System Programming This is an organized list of all exercises completed so far, including a brief description and links to related resources or files. --- ## 📁 mycp **Description**: A simple file copy utility implemented in C using low-level system calls (`open`, `read`, `write`, `close`). - 📄 [README](mycp/README.md) - 📂 Directory: `mycp/` - ✅ Features: - Error handling via `perror` and `errno` - Safe loop with `EINTR` handling - Proper resource cleanup - Integrated unit tests and Valgrind checks --- ## 🌳 tree **Description**: A basic reimplementation of the Unix `tree` utility that recursively lists directories and files. - 📄 [README](tree/README.md) - 📂 Directory: `tree/` - ✅ Features: - Recursive traversal using `opendir` and `readdir` - Directory depth display - Unit tests with mocks for directory structure - Scripted test automation with Valgrind integration --- ## 🔧 Tooling & Automation **Shared tools and scripts used across projects**: - `Makefile` with: - Targets for `build`, `test`, `valgrind`, and `clean` - Shell script for automated tests: `run_tests.sh` - Valgrind memory check reports generated automatically *Last updated: 2025-06-30*