View on GitHub

Computer Architecture and Operating Systems

Course taught at Faculty of Computer Science of Higher School of Economics

Final Test: Operating Systems

Grading

The grade formula is as follows:

Grade = 0.4 * Theory + 0.6 * Programming

Video

Form for video is here.

Submission

Form for theory and program is here.

Rules

It is allowed to use only a text editor and Linux console (with all related commmand-line tools). No lecture materials, AI, or Google search. Cheating policy applies here.

Proctoring

You must record a video of your desktop + video + audio with OBS Studio, upload it to your cloud drive, and submit a link to it. The suggested format for video is .mkv.

Solving both parts (theory and programming) must be recorded. Please start video-recording before you start solving enything.

The form for submitting video will be avaialble for several hours after the deadline in case uploading video takes a long time.

Part 1. Theoretical Questions

Please answer the questions from the form.

Part 2. Programming Task

Please solve the programming task below and submit it to the form. Send the source code and the Make file as a text (merge them and submit to a text field).

Task

Write a program in C that does the following:

Example of Function (you need your variant, see below)

Note: the ^ symbol means “power”.

f0(a, b, c, d) = (a - b + c - d) / 2
f1(x) = 2*x^3 - 4*x^2 + 3*x + 1
f2(x) = sin(5*x)*4 + 3
f3(x) = 1 / (1 + e^(-7*x))
f4(x) = 2^x + 5

Requirements and Grades

NOTE: Your program must call fork no more than 4 times (for f1-f4). In the past, an invalid solution with 4*N calls to fork was distributed among students. Such code will not be accepted (0 points). This solution is very bad because it will be slower that a single-process solution. Running in parallel is aimed to improve performance, while extra system calls are very expensive (especially fork) and may totally kill this advantage. Try to keep the number of system calls to minimum.

Hints

Variants

Choose your variant number according to your number in your group.

See the lists of students here.

Variants for groups:

Note: the ^ symbol means “power”.