Find Jobs
Hire Freelancers

C program using fork/pipes

$15-20 USD

Cancelled
Posted almost 18 years ago

$15-20 USD

Paid on delivery
The purpose of this project is to gain experience using the Unix fork() and pipe() functions. In this project you will compare the results of using one process to do some processing versus using multiple processes. A data file contains log records. A record contains a request that has a date, an operation and a resource. Your program should read these records and determine the average number of requests per day, the average number of each operation per day, and the average number of requests per resource per day. Your program should determine the time it takes to produce a result. Sample output: Log File Statistics Report Average number of requests per day: ###.# Average number of each operation per day: XXX ###.# XXX ###.# … XXX ###.# Average number of requests per resource per day. Resource # ###.# Resource # ###.# … Resource # ###.# Time required: #.## seconds --------------------------------------- System Description When one process is used, the file is read sequentially and each part of the report is generated sequentially. When multiple processes are used, there are two ways you should employ parallelism: 1) The file can be read by multiple processes at a time. For example, if two child processes read the file, one child could read the first half, and at the same time the second child could read the second half. The second child should use the seekg() function to position at the beginning of the second half. 2) The computations can be processed in parallel by child processes. Once a child has completed its computations, the results can be sent to the parent processes via a pipe. ------------------------------------ Execution run your project first using one process to do all activities and record the time. should then let the user input how many parallel processes to use for reading in the file, and whether or not to use parallel processes for the computations. ## Deliverables 1) Complete and fully-functional working program(s) in executable form as well as complete source code of all work done. 2) Deliverables must be in ready-to-run condition, as follows (depending on the nature of the deliverables): a) For web sites or other server-side deliverables intended to only ever exist in one place in the Buyer's environment--Deliverables must be installed by the Seller in ready-to-run condition in the Buyer's environment. b) For all others including desktop software or software the buyer intends to distribute: A software installation package that will install the software in ready-to-run condition on the platform(s) specified in this bid request. 3) All deliverables will be considered "work made for hire" under U.S. Copyright law. Buyer will receive exclusive and complete copyrights to all work purchased. (No GPL, GNU, 3rd party components, etc. unless all copyright ramifications are explained AND AGREED TO by the buyer on the site per the coder's Seller Legal Agreement). * * *This broadcast message was sent to all bidders on Tuesday Jun 20, 2006 3:21:56 PM: I have attached the logfile that should be used. Please respond if you can complete this by 12am cst tonight. ## Platform unix, c
Project ID: 3588531

About the project

3 proposals
Remote project
Active 18 yrs ago

Looking to make some money?

Benefits of bidding on Freelancer

Set your budget and timeframe
Get paid for your work
Outline your proposal
It's free to sign up and bid on jobs
3 freelancers are bidding on average $16 USD for this job
User Avatar
See private message.
$17 USD in 1 day
5.0 (3 reviews)
2.3
2.3
User Avatar
See private message.
$12.75 USD in 1 day
5.0 (4 reviews)
0.6
0.6
User Avatar
See private message.
$17 USD in 1 day
0.0 (0 reviews)
0.0
0.0

About the client

Flag of UNITED STATES
Blountsville, United States
5.0
1
Member since Jan 20, 2006

Client Verification

Thanks! We’ve emailed you a link to claim your free credit.
Something went wrong while sending your email. Please try again.
Registered Users Total Jobs Posted
Freelancer ® is a registered Trademark of Freelancer Technology Pty Limited (ACN 142 189 759)
Copyright © 2024 Freelancer Technology Pty Limited (ACN 142 189 759)
Loading preview
Permission granted for Geolocation.
Your login session has expired and you have been logged out. Please log in again.