Find Jobs
Hire Freelancers

Implement a client/server database in a Linux or Unix environment programming in C.

$30-250 USD

Dalam Kemajuan
Disiarkan lebih dari 8 tahun yang lalu

$30-250 USD

Dibayar semasa penghantaran
A central computer holds the database for airlines reservations for Adirondack Air which runs four flights numbers 1 through 4. The plane capacities for these flights are 5, 2, 10, and 10, respectively. Travel agents from all over the world can access the reservation system by running a local application which calls up the central computer and runs an interactive session that supports the following commands: Format of Command: Query for number of seats available on flight x: Q x Reserve seats I, j, etc. user name nm: R I j .. nm Cancel seats for flight x under name n: C x n The query command will first display the seat numbers of all the available seats on flight x if there are any. If none are available, the query ends with the message “none available.” Otherwise, the travel agent may book any number of those seats for a name (say Jones) with the command R 1 6 2 9 Jones. Here 1 6 2 9 is the list of seats that are to be reserved for Jones. You should check that the requested seats are in the list of available seats. Any number of agents may access the reservation system concurrently. You will need to lock the flight record for the duration of this transaction so no other agent can take an available seat in the interim. If there is already a lock on the data, the server should send an explanatory message to the travel agent, because the agent will have to wait. If the travel agent responds with a C (cancel), terminate the query without allocating any seats. Cancel should make available all seats under the given name on the specified flight, and then display the current number of seats now available. On the server’s monitor, display the current state of the database in real time. Indicate which seats are reserved and by whom. As soon as a change occurs, the screen should be updated. On the same screen show which clients are currently active. The system should be robust in the sense that any erroneous command elicits a reasonable error message. Communication over the network will use sockets. The database will be in one file. The data on the file will be locked at the record level by the Unix lock system call. The server will fork a child to handle each new interaction session from a travel agent. Use TCP/IP sockets to communicate between server and clients. In other words, use the method described in section 6.4.1, “Per-Client Processes”, of the book TCP/IP Sockets in C. Test your program by having the agents read a series of commands from a file and record the output on the server to see that it is consistent with the order of messages from the agent clients.
ID Projek: 8207474

Tentang projek

6 cadangan
Projek jarak jauh
Aktif 9 tahun yang lalu

Ingin menjana wang?

Faedah membida di Freelancer

Tetapkan bajet dan garis masa anda
Dapatkan bayaran untuk kerja anda
Tuliskan cadangan anda
Ianya percuma untuk mendaftar dan membida pekerjaan
Dianugerahkan kepada:
Avatar Pengguna
Hi, sir. I saw your requirements. So i can do it successfully. I'm a Ubuntu Software Developer. And i have a lot of experiences for 5 years about network TCP/IP Socket programming. Please begin this project with me. I'll wait your reply. Best Regards. Pingping Du.
$111 USD dalam 7 hari
4.7 (5 ulasan)
4.6
4.6
6 pekerja bebas membida secara purata $187 USD untuk pekerjaan ini
Avatar Pengguna
I am very proficient in c, c++. I have 15 years c++ developing experience now, and I have worked for 5 years. My work is online game developing, and mainly focus on server side, the language is c++ under linux. I used c++ to make many great projects, for example, I made the tools which can convert java files to c++ scripts which has the same effect, of course garbage collection included. I also made our own mobile game using c++, I even can show you the demo of client. Trust me, please let expert help you.
$200 USD dalam 3 hari
4.9 (155 ulasan)
7.1
7.1
Avatar Pengguna
A proposal has not yet been provided
$277 USD dalam 3 hari
5.0 (32 ulasan)
5.3
5.3
Avatar Pengguna
REady!!REady!!REady!!REady!!REady!!REady!!REady!!REady!!REady!!REady!!REady!!REady!!REady!!REady!!REady!!REady!!REady!!REady!!REady!!REady!!REady!!REady!!REady!!REady!!REady!!REady!!REady!!REady!!REady!!REady!!REady!!REady!!REady!!REady!!REady!!REady!!REady!!REady!!REady!!REady!!REady!!REady!!REady!!REady!!REady!!REady!!REady!!REady!!REady!!REady!!REady!!REady!!REady!!REady!!REady!!REady!!REady!!REady!!REady!!REady!!REady!!REady!!REady!!REady!!REady!!REady!!REady!!REady!!REady!!REady!!REady!!REady!!REady!!REady!!REady!!REady!!REady!!REady!!REady!!REady!!REady!!REady!!REady!!REady!!REady!!REady!!REady!!REady!!REady!!REady!!REady!!REady!!REady!!REady!!REady!!REady!!REady!!REady!!REady!!REady!!REady!!REady!!REady!!REady!!REady!!REady!!REady!!REady!!REady!!REady!!REady!!REady!!REady!!REady!!REady!!REady!!REady!!REady!!REady!!REady!!REady!!REady!!REady!!
$155 USD dalam 3 hari
0.0 (0 ulasan)
0.0
0.0
Avatar Pengguna
A proposal has not yet been provided
$222 USD dalam 15 hari
0.0 (0 ulasan)
0.0
0.0
Avatar Pengguna
Wed, 05 Aug 2015 16:35:24 +0530 Project appears to be more of a problem server for some exercise in your book. Please post book details, so can look up what is required. If you have a started on the program, can post it, too and point out the bugs. This will help cut down on time required.
$155 USD dalam 5 hari
0.0 (0 ulasan)
0.9
0.9

Tentang klien

Bendera UNITED STATES
houston, United States
0.0
0
Kaedah pembayaran disahkan
Ahli sejak Mac 24, 2015

Pengesahan Klien

Terima kasih! Kami telah menghantar pautan melalui e-mel kepada anda untuk menuntut kredit percuma anda.
Sesuatu telah berlaku semasa menghantar e-mel anda. Sila cuba lagi.
Pengguna Berdaftar Jumlah Pekerjaan Disiarkan
Freelancer ® is a registered Trademark of Freelancer Technology Pty Limited (ACN 142 189 759)
Copyright © 2024 Freelancer Technology Pty Limited (ACN 142 189 759)
Memuatkan pratonton
Kebenaran diberikan untuk Geolocation.
Sesi log masuk anda telah luput dan telah dilog keluar. Sila log masuk sekali lagi.