- This project was made as part of the course: Operating Systems - Lab (EG301P) , at IIIT-Bangalore.
- It's a client-server architecture, where:
- Server side of application is used to manage client side's request , keep records of transaction of books, and logs of users.
- Client side of application is used to provide user friendly interface for users using the terminal.
- This project uses various programming concepts such as file locking , socket programming and file handling.
Requirements and Running the Project
- The project is written in C Language.
- You need to run client.c and server.c in different terminals.
- gcc server.c -o server
- ./server
- gcc client.c -o client
- ./client
Features
- The application provides a user choice menu on start, where the user can choose to login as:
- Admin (Single-Admin)
- User
- Once the user logins , then are asked for credentials:
- Admin (default: username: "admin", password: 2024)
- User (one needs to provide manually)
- Admin
- Add a new book
- Delete a book
- Modify book
- Search for book
- User
- Borrow book
- Returned borrowed book
- Signout
- It also notes that a particular student can borrow maximum 5 books at a time.
Authors: Aditya Saraf