” CS 2510课程程序 写作、 辅导Systems留学生程序CS 2510 Computer Operating SystemsFall 2020Assignment 1: Group CommunicationDescriptionYou will implement a simple client-server group chat system with n clients/1-server configuration. Lets say Alice, Bob and Chad (the threeclient processes) wants to talk to each Other. Alice sends a message to the server, and when Bob and Chad is online, they connect to theserver and download the unread messages. Your program should allow the clients to send/receive messages from the server. The serverkeeps track of the clients that has received the messages and only sends the unread messages.ImplementationYou will need a server program (e.g., server.py) that spawns the server process.For example,python server.py -client_ids 1,2,3 -port XXXXwill spawn the server and create a group with three clients having client id 1, 2 and 3.Starting server on port XXXX with clients 1, 2, 3You will also implement a client program (e.g. client.py) that will spawn the client processFor example,python client.py -client_id 1 -server_ip ipaddress -port portwill spawn the client process with id 1 and connects to the server. The client can then send a message along with its id to the server.TestingYou will provide multiple test cases for your system as driver-test program (e.g., run_test_1.py). The program will spawn the client andserver process, and send/receive Messages. Sample scenarios to test:Alice sends a single message. Chad and Bob comes online after a 5 second delay, and receives all messages from Alice. (Log themessage in the console)CS 2510课程作业 写作、 辅导Systems留学生作业Alice, Bob, and Chad are online. Bob sends a message to all, Chad and Alice receives the message (The sender Bob doesnt receive themessage from the server). Alice sends a message to all, Bob and Chad receives it (but not Alice). Doug, not part of the group, joins theserver but receives no message.Please put appropriate print statements.Extra credit (10%)Package your application using Docker. You should submit a Dockerfile that will create a container. The docker file will create an image thatwill have the necessary environment for Running the test case. Basically, it will pull an image from the repository, copy your code, and executethe test files. When the docker container is deployed, it will automatically run all the test cases. Submit the Dockerfile as part of yourassignment.SubmissionPlease your Code and your report on Gradescope. Your submission should contain all the code including test cases, and log files of yourexecution. Your report should Document your design Choices and implementation and possible improvements to the system (not more thantwo pages).Grading criteriaComponent %Implementation 50%Testing and ease of running 30%Code documentation 5%Report 15%Extra credit 10%如有需要,请加QQ:99515681 或邮箱:99515681@qq.com
“
添加老师微信回复‘’官网 辅导‘’获取专业老师帮助,或点击联系老师1对1在线指导。