# 223916 UNIX:C Programmer needed

Hello

I am a financing major and joined a computer club to learn a little about programming. The club is called PIC (programmers in C). During the school year and the summer our schools holds seminars for non-computer science majors. Our job is to meet with computer science faculty and students and learn something new and present it to the rest of the club. We approach faculty and students from previous semesters and get their previous projects to present to the club. This time my group is given this project below. The semester has ended and no one is in school so their isn't anyone we can get help from. During the school year, we award and give cash prizes to Computer Science students who complete projects and present them to our club at the end of each week. Our budget is from \$50-\$100. The project that needs to be completed is below. We are willing to pay. I have been told that this project doesn't involve any coding. For one part we need mathematical work and the other involves pseudocode.I hope someone is interested and willing to share their knowledge with the rest of us. Also, we need this project ASAP. We are also working on the project to give it a shot.

**************************************

MUST BE DONE IN C (UNIX)

**************************************

**CPU Scheduling**

Consider the following set of processes, with the length of the CPU burst given in milliseconds:

Process Burst time

P1 10

P2 1

P3 4

P4 1

P5 2

a. Draw four gant charts (time charts) that illustrate the executions of these processes with the following scheduling algorithms: FCFS, SJF, and RR (Quantum=1)

b. What is the turnaround time of each process for each of the scheduling algorithm.

c. What is the waiting time of each process for each of the scheduling algorithms? The waiting time is defined as the total time spent in the ready stage.

**Disk Scheduling**

Suppose the read/write head of a disk is a track 97, moving towards track 299 (the highest numbered track on the disk), and the disk request queue contains requests for the sectors on tracks 84, 155, 203, 96, 23, 197, and 222.

a. compute the total distance (expressed in terms of tracks traveled) needed to satisfy the requests using the following disk scheduling policies: FCFS, SSTF, Scan and Look.

b. Suppose the seek time of each I/O request is a function of the track distance according to the following formula:

seek time = 2+ [distance / 10] [url removed, login to view]

What's the average seek time to service the I/O requests for each of the scheduling policies?

**Synchronization**

You are tasked with designing a set of library functions (API) to support a multi-user document management system with version control. Users of the system would like to be able to perform the following operations on a repository of shared documents, whose integrity your library is supposed to ensure:

- create new document: add a new document to the repository. A new document is designated version number 0.

- update document: this provides the mechanism to create a new version of a document. The version number is automatically updated.

- retrieve current version: this operation reads the latest version of the document.

- retrieve previous version: this operation allows the retrieval of a previous version of a document.

- compare document versions: this operation returns the differences between two versions of the same document.

The above operations are subject tot the following constraints that your library functions must account for: 1) a request to retrieve the latest version of a document while the document is being updated will cause the reader to block until the update completes: 2) no more than 10 concurrent readers are allowed for a single document ( the others are blocked)

In support of your library, you must first define the data structures needed to maintain information about the documents (metadata). You need not worry about the explicit representation of a document - i.e. you can assume that 'document' is a predefined type in your system. The same goes for file I/O - you can assume that there exists such operations as WriteToFile, ReadFromFile, etc. You may have to make further assumptions to accommodate your solutions to the problem. For each of the operations defined you are to provide pseudocode. Take special care in designating which variables are shared., and the initial values of semaphores used in your solution.

Kemahiran: Semua Boleh, Pengaturcaraan C

Tentang Majikan:
( 1 ulasan ) NY,

ID Projek: #1970152