Client/server application for accessing remote files. University project [no.3] for Distributed Systems (Spring 2018).
Client can access remote files on server for reading and writing. Client has a virtual cache with LRU eviction policy.
Operations supported:
- Find/create file (with flags: O_CREAT O_EXCL, O_TRUNC, O_RDWR, O_RDONLY, O_WRONLY)
- Read n bytes from file
- Write n bytes from file
- Change pointer position inside file
- Set client virtual cache validity
A visual representation of the system can be found here.
Python 3.6+
Start the server script server.py
. Then run on client nfs_proto.py
to start the application. With demo.py
we can access the network filesystem from the terminal.
The configuraton.py
file defines whether we include cache in our solution and it's size.
ECE348 Distributed Systems
Assigment instructions can be found here in Greek.