PROJECT DOSSIER // [C POOL — DAY 12]VIEW SOURCEBACK TO PROJECTS →

01 // PROJECT AT A GLANCE

C POOL — DAY 12

C

Re-coding cat and grep, the two Unix tools everyone uses daily.

This day tackles file reading at the lowest possible level, that of system calls. As a bonus you rewrite two emblematic Unix commands: the one that prints a file and the one that searches a pattern in it. It is very concrete: by the end of the day you have two tools you can genuinely use in your terminal.

Reimplementing cat on top of open/read/close, with a Makefile, a tests_run rule and Criterion unit tests; the subject also asks for a grep clone, not delivered in this repository.

PRIMARYC
DELIVERYTEAM RECORD
VERIFICATIONCriterion
SOURCEINSPECTOR READY
MEDIA ATTACHMENTS (Images, Photos, Videos)

03 // KEY OUTCOMES

  • Two genuinely usable Unix tool clones
  • Handling a byte stream that does not align on line boundaries

BEYOND THE BRIEF

  • Criterion tests and a tests_run rule with coverage, not required at this level

04 // SOURCE TREE

READING SOURCE…