Skip to content

kahleeeb3/cpmFS

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

22 Commits
 
 
 
 

Repository files navigation

cpmFS- A Simple File System

The goal of this project is to design and implement a simple file system called cpmFS (i.e., CP/M file sytem). Through the late 1970s and into the mid-1980s, CP/M (Control Program for Microcomputers) - a disk-based operating system - had dominated its era as much as MS-DOS and later Windows dominated the IBM PC world. CP/M is clearly not the last word in advanced file systems, but it is simple, fast, and can be implemented by a competent programmer in less than a week.

Our simple file system will allow users to list directory entries, rename files, copy files, delete files, as well as code to read/write/open/close files. We will use a version of the CP/M file system used on 5.25” and 8” floppy disks in the 1970's (support for CP/M file systems is still included in Linux to this day). We will develop our code in C. This can be done on any computer with an ANSI C compiler (e,g. gcc, clang, etc.). We will not be modifying the linux kernel but developing a stand-alone program (i.e., a simulated filesystem).