Assignments-and Tasks-Solution

$30.00 $24.00

Description and Weighting of Assignments: The following tasks will be assigned in arbitrary order. Task 1: Writing a Simple Shell (project) Due Date: TBD Weighting: 6% Possible Points: 10 points Description: Write a simple Linux shell in C++ using fork(), exec() family, wait(), and exit() system calls. Assessment: 10 test cases similar to the following…

5/5 – (2 votes)

You’ll get a: zip file solution

 

Description

5/5 – (2 votes)

Description and Weighting of Assignments: The following tasks will be assigned in arbitrary order.

Task 1: Writing a Simple Shell (project)

Due Date: TBD

Weighting: 6%

Possible Points: 10 points

Description: Write a simple Linux shell in C++ using fork(), exec() family, wait(), and exit() system calls.

Assessment: 10 test cases similar to the following will be used to test your program. Each test case is worth 1 point.

ls: a token group containing one token (i.e. a command)

ls -l: a token group containing two tokens (i.e. a command and an argument)

sort infile: a token group containing two tokens (i.e. a command and an argument)

dir: a token group containing only one token (i.e. a command)

sort –d infile: a token group containing three tokens (i.e. a command and two

arguments)

cat infile: a token group containing two tokens (i.e. a command and an argument)

Task 2: Multithreaded Sorting (project)

Due Date: TBD

Weighting: 6%

Possible Points: 10 points

Description: Write a program in C++ to sort a list of even number of integers in nondecreasing order using the pthread_create(), pthread_join(), and pthread_exit() functions.

Assessment: 8 test cases shown as follows will be used to test your programs. (1) An empty input file. (2) An input file containing only 1 integer. (3) An input file containing 2 integers. (4) An input file containing more than 2 integers. (5) An input file containing integers that are all identical. (6) An input file containing integers that are all unique. (7) An input file containing integers that are already sorted in nonincreasing order. (8) An input file containing integers that are already sorted in nondecreasing order. Each test case is worth 1.25 points.

Task 3: The Producer-Consumer Problem (project)

Due Date: TBD

Weighting: 6%

Possible Points: 10 points

Description: Write a program in C++ to solve the producer-consumer problem shown in class using Linux semaphore and mutex synchronization primitives.

Assessment: 4 test cases will be used to test your programs. (1) One producer thread and one consumer thread. (2) Two producer threads and one consumer thread. (3) One producer thread and two consumer threads. (4) Any number of producer threads and any number of consumer threads. Each test case is worth 2.5 points.

Task 4: Designing a Virtual Memory Manager (project)

Due Date: TBD

Weighting: 6%

Possible Points: 10 points

Description: Write a program in C++ to simulate the functionality of a virtual memory manager for a paging system supporting a page table.

Assessment: A test case containing 13 page references will be used to test your programs. The output from your program consists of 4 parts. (1) Information about page fault occurrence handling and page table update. This part contains 60% of your output and is worth 6 points. (2) Summary of page fault rate. This part is worth 1 point overall. (3) Contents of page table after simulation. This part is worth 1.5 points. (4) Contents of frames in physical memory. This part is worth 1.5 points.

Tasks 5 – 8: Nonprogramming Tasks

Due Date: TBD

Weighting: 12%

Possible Points: 20 points

Description: 4 nonprogramming homework assignments related to those topics covered in class from time to time. Each assignment is worth about 5 points.

Assessment: Answer key will be generated and used to grade each nonprogramming task.

Tasks 9 – 18: Reading Assignments

Due Date: TBD

Weighting: 14%

Possible Points: 24 points

Description: 12 reading assignments for those topics covered in class from week to week. Each reading assignment is worth 2 points.

Tasks 19 – 20: Faith Reflection Assignments

Due Date: TBD

Weighting: 5%

Possible Points: 10 points

Description: 2 faith reflection assignments for those topics covered in class. One will be given in the first half of the semester and the other in the second half of the semester. Each assignment is worth 5 points.

Tentative Course Calendar

While the course calendar is intended to provide you with an overview of the semester’s schedule, the instructor reserves the right to make adjustments to the schedule to responsively meet the needs of this class.

6

Week #

Date

Topics

1

09/03

computer systems and operating systems (Chapter 1)

09/05

computer systems and operating systems (Chapter 1)

2

09/10

operating-system structures (Chapter 2)

09/12

operating-system structures (Chapter 2)

3

09/17

processes (Chapter 3)

09/19

processes (Chapter 3)

4

09/24

processes (Chapter 3)

09/26

threads and concurrency (Chapter 4)

5

10/01

threads and concurrency (Chapter 4)

10/03

Mid-Term Exam 1

6

10/08

process synchronization (Chapter 6)

10/10

Torrey Memorial Bible Conference

7

10/15

process synchronization (Chapter 6)

10/17

synchronization examples (Chapter 7)

8

10/22

synchronization examples (Chapter 7)

10/24

deadlocks (Chapter 8)

9

10/29

deadlocks (Chapter 8)

10/31

main memory (Chapter 9)

10

11/05

main memory (Chapter 9)

11/07

Mid-Term Exam 2

11

11/12

virtual-memory management (Chapter 10)

11/14

virtual-memory management (Chapter 10)

12

11/19

virtual-memory management (Chapter 10)

11/21

CPU scheduling (Chapter 5)

13

11/26

CPU scheduling (Chapter 5)

11/28

Thanksgiving holiday

14

12/03

mass-storage structure (Chapter 11)

12/05

I/O systems (Chapter 12)

15

12/10

file-system interface (Chapter 13)

12/12

file-system implementation (Chapter 14)

16

12/17

Final Exam (10:00 am – 12:00 pm)

7

Assignments-and Tasks-Solution
$30.00 $24.00