Linux-Compatible C File Management Library
Budget: €20 – €40 EUR
I'm in need of immediate assistance for developing a file management library coded in C, fully compatible with Linux.
Project Presentation The project aims to implement a library of file management functions simulating those of UNIX. After formatting a "partition" (a large classic UNIX file), the functions should allow for file creation, reading/writing, information retrieval within a file, and file destruction. Work to be Provided The library to be built should contain at least a file type and the following functions:
int myFormat(char* partitionName); the function returns 0 if the "formatting" succeeds.
• file * myOpen(char* fileName); the function "opens" or creates a file with the given name.
• int myWrite(file* f, void* buffer, int nBytes); the function returns the number of bytes written.
• int myRead(file* f, void* buffer, int nBytes); the function returns the number of bytes read.
• void mySeek(file* f, int offset, int base); the function moves the file's read/write pointer.
Note: It is obviously excluded to use UNIX functions (except for creating the "partition"), as your functions must operate within the large file/partition created using myFormat. Minimal Program ("Hard Kernel") In the minimal version, there is no specific demand for managing the space managed by the "partition." However, the library will be provided with a test program to verify that each function behaves as expected. This program will take the form of a menu allowing the user to test each function as desired.
Management of "disk blocks" to solve fragmentation problems (highly recommended extension!)
• Visualization of the partition with reserved and free parts evolving during the program.
• Additional functions (e.g., int size(file* f);)
Ideal Skills and Experience:
- High proficiency in C programming
- Prior experience in file management system development, preferably on Linux platform.
- Knowledge of Linux file system
The timeline is crucial for this project. I'm looking for professionals who can prioritize this task and deliver it ASAP. Your application should contain evidence of previous similar work. Also, while not mandatory, quick project turnaround would be highly appreciated.
Project Presentation The project aims to implement a library of file management functions simulating those of UNIX. After formatting a "partition" (a large classic UNIX file), the functions should allow for file creation, reading/writing, information retrieval within a file, and file destruction. Work to be Provided The library to be built should contain at least a file type and the following functions:
int myFormat(char* partitionName); the function returns 0 if the "formatting" succeeds.
• file * myOpen(char* fileName); the function "opens" or creates a file with the given name.
• int myWrite(file* f, void* buffer, int nBytes); the function returns the number of bytes written.
• int myRead(file* f, void* buffer, int nBytes); the function returns the number of bytes read.
• void mySeek(file* f, int offset, int base); the function moves the file's read/write pointer.
Note: It is obviously excluded to use UNIX functions (except for creating the "partition"), as your functions must operate within the large file/partition created using myFormat. Minimal Program ("Hard Kernel") In the minimal version, there is no specific demand for managing the space managed by the "partition." However, the library will be provided with a test program to verify that each function behaves as expected. This program will take the form of a menu allowing the user to test each function as desired.
Management of "disk blocks" to solve fragmentation problems (highly recommended extension!)
• Visualization of the partition with reserved and free parts evolving during the program.
• Additional functions (e.g., int size(file* f);)
Ideal Skills and Experience:
- High proficiency in C programming
- Prior experience in file management system development, preferably on Linux platform.
- Knowledge of Linux file system
The timeline is crucial for this project. I'm looking for professionals who can prioritize this task and deliver it ASAP. Your application should contain evidence of previous similar work. Also, while not mandatory, quick project turnaround would be highly appreciated.