Hello, dear friend, you can consult us at any time if you have any questions, add WeChat: daixieit

COSC2473 Introduction to Computer Systems

Assignment 3

2022

1. Overview

For this assignment you are required to

1. Demonstrate the use of processes and threads and explain OS design principles as well as OS support for computing.

2. Demonstrate the understanding of Internet architecture and protocols.

 2. Learning outcomes

This assessment is relevant to the Course Learning Outcomes CLOs 4-6.

 3. Assessment details

This assessment will determine your ability to

1. Understand the concepts taught over Week 9 to Week 12 of the course.

2. Work independently in self-directed study to research the identified issues.

 4. Submission

Prepare the answers to this assignment in an electronic format and convert to a single Acrobat PDF (.pdf) file for submission, with the filename being your student number (e.g., S1234567.pdf) containing all the answers to all the questions in this assignment.

 Paper submissions are not accepted. Handwritten assignments are not accepted.

You should submit your assignment via Canvas ® Assignments ® Assignment 3 Submission. You may resubmit the assignment if you need to, only the most recent version will be marked. Please note the following.


1. Clearly number each answer according to the numbering in this assignment specification (e.g., Q1a, Q1b, Q1c, etc.).

2. Use at least 12-point font size.

3. It is your responsibility to correctly submit your files. Please verify that your submission is correctly submitted by downloading what you have submitted to see if your submitted file includes the correct content.

4. Never leave submission to the last minute – you may have difficulty uploading files.

5. You can submit multiple times – a new submission will override any earlier submissions.

However, if your final submission is after the due time, late penalties will apply.

5. Academic integrity and plagiarism (standard warning)

Do not ever simply copy and paste what another writer has written. This is stealing. What we need is your own words – your own understanding. If you try to represent someone else’s work as your own, it will be dealt with severely. Instead, we want you to paraphrase what others have said – to put the concepts they have discussed into your own words.

 All plagiarism will be penalised, there are no exceptions and no excuses. You have been warned.

6. Rubric and marking guidelines

The rubric can be found in Canvas ® Assignments ® Assignment 3.

Submission files not in the required format will not be marked.

A penalty of 10% per day of the total available marks will apply for each day being late. After 5 days, you will receive zero mark for the assignment.

If you want to seek an extension of time for assignment submission, you must have a substantial reason for that, such as unexpected circumstances. Reasons such as, unable to cope with study load, is not substantial. Also, you must apply for an extension as soon as possible. Last minute extensions cannot be granted unless it attracts special consideration. Please find out how to apply for special consideration online at h ttps://www.rmit.edu.au/students/student-

e ssentials/assessment-and-results/special-consideration/eligibility-and-how-to-apply

 7. Assignment questions

This assignment has 8 questions and students are required to answer all questions.

 Before You Start

Do not copy from lecture notes.

Use your own words and clearly demonstrate your understanding.


 Question 1 – Operating system support for computing (15 marks)

OS evolves to support different types of computing such as multiprogramming, multitasking and multiprocessing.

a) (6 marks) Briefly explain what these three types of computing are.

b) (6 marks) Discuss their individual advantages and disadvantages

c) (3 marks) Briefly discuss which OS structure is more sensible for multiprogramming.

 Question 2 – Operating system design (20 marks)

Poorly coded user programs could make serious damages to computer systems, for example, causing the whole system to crash.

a) (8 marks) Suppose a user program wants a block of memory space for a data structure. Explain if it is a good idea for the program to run some instructions and get the memory straight away. Is there anything positive with this approach or what should the program do?

b) (12 marks) From an OS designer point of view, explain clearly how you would protect the system from poorly coded programs.

 Question 3 – Processes and threads (15 marks)

You are an application developer. You of course want to maximise the performance of your program.

a) (10 marks) Explain if you want to implement your program using processes or threads from performance's point of view. You need to explain the concepts of processes and threads.

b) (5 marks) Explain if there are any scenarios that you may prefer to use processes over threads for your implementation, using examples.

 Question 4 – Internet structure and protocol stack (20 marks)

a) (10 marks) Explain how the Internet is structured. You are currently a small ISP but want to become a Tier-1 ISP. Briefly describe what you need to do to become a Tier-1 ISP.

b) (10 marks) Explain how the Internet protocol stack works, and how the stack is related to individual network devices including end systems, switches and routers.

Question 5 – Web browsing (15 marks)

You are going to browse a web page. Assume that you are visiting this website for the first time.

a) (10 marks) Explain what your browser needs to do before you can browse the website. What would be the procedure if you are going to visit the same site in an hour or two?

b) (5 marks) Briefly explain how your browser will get the page for you to browse. Are you confident that the site you are visiting is indeed the one you wanted to visit (a genuine one), and the data transfer between the site and your browser is secure? Explain.

Question 6 – Data transfer (15 marks)

Your application wants to send data as fast as possible with reliable data delivery. Are there any concerns and how would these concerns be handled?

 Question 7 – Routing and forwarding (25 marks)

You are on a typical household network in Melbourne, sending a packet to your friend on a campus network in Wellington, New Zealand. Suppose that you use ISP_aussie and your friend uses ISP_kiwi. Assume that ISP_aussie and ISP_kiwi are not connected to each other directly, but they both are connected to a global Tier-1 ISP.

a) (10 marks) Describe what will happen to the packet before it gets to the ISP network in terms of addressing.

b) (10 marks) After the packet gets to ISP networks, describe how routing is done and state the corresponding routing protocols to be used. On the campus network in Wellington, in terms of addressing explain how the packet is eventually delivered to your friend's machine.

c) (5 marks) Discuss the costing and performance implication on forwarding the traffic between users of the two ISPs and the strategy for possible improvement.

Question 8 – Network building (25 marks)

You are responsible for building a network for your organisation.

a) (15 marks) Your organisation has about 150 machines connected to the network with a storage server shared by the machines. Identify the network devices that you may use. Briefly describe and explain how your network would look like and how you are going to get the IP addresses for your network.

b) (10 marks) Assume that your organisation is growing very fast and now has to deal with thousands of machines or beyond. Briefly discuss your strategy to expand your network and the pros and cons of your strategy.