|
CIS 5050: Homework assignments
This very simple assignment will show you how to use the container image we have prepared for you and to set up the environment for your homeworks and submissions. You will need the following:
Please follow the instructions in the handout to set up your programming enviroment. You are not required to code in the container, but you must successfully compile and test your solution in the container before submitting. The provided container will be the official environment for grading all the homework assignments.
This assignment – a simple parallel sorting program – will give you some hands-on experience with concurrency and its impact on application performance, as well as with several basic UNIX primitives. You will need the HW1 handout, as well as some framework code to get started, as described in the handout. You should continue using the ontainer you installed for Homework 0 to test your solution before submission.
For this assignment, you will build a pair of simple email servers (SMTP and POP3) that can be used with a real email client. The assignment involves socket programming, server design, as well as working with RFC-style protocol specifications. You will need the following: As before, you should continue using the container to test your solution before submitting.
For this assignment, you will build a replicated chat server that uses multicast to distribute the chat messages. The server should support three different ordering modes: unordered, FIFO, and total multicast. You will need the HW3 handout, as well as some testing tools, which you can download from the link specified in the handout. You should continue using the container you installed for Homework 0 for your final testing before submission.
For the final project, you will build a small cloud platform in groups of four. The cloud platform should support a webmail service and a storage service, and it should be based on a distributed key-value store. You will need the project handout, and you should maintain your code in a shared GitHub repository that we will create for each team.
| ||||
| Web site contact: Linh Thi Xuan Phan | ||||