Fundamentals of Operating Systems and Programming
Mar 13,23Question:
Background:
Assessment Details and Submission Guidelines | |||||
Unit Code | MN404– T2 2020 | ||||
Unit Title | Fundamentals of Operating Systems and Programming | ||||
Assessment Type | Individual Assignment | ||||
Assessment Title | Role of Operating Systems and Command Line Interface (CLI) | ||||
Purpose of the assessment (with ULO Mapping) | This assignment assesses the following Unit Learning Outcomes; students should be able to demonstrate their achievements in them.
a. Describe the role of Operating Systems (OS) and its different subsystems in controlling computer hardware b. Demonstrate competency in the use of a command line interface to operate and perform simple OS administration |
||||
Weight | Assignment 1a – 5%
Assignment 1b – 15% |
||||
Total Marks | Assignment 1a – 12 Marks Assignment 1b – 38 Marks | ||||
Word limit | Not applicable | ||||
Due Date | Assignment 1a- Week 3, Sunday 6 pm, 9th August 2020
Assignment 1b- Week 7, Sunday 6 pm, 6th September 2020 |
||||
Submission Guidelines | · Submit Assignment 1a in a word document in week 3
· Submit a word document that contains the screen shots of the answers to the questions in Assignment 1b-section 2 part I (Unix exercises) in week 7. Make sure that all the screen shots submitted on Moodle must carry your unique id such as MITID, names etc. · All work must be submitted on Moodle by the due date (week 3 for Assignment 1a and Week 7 Assignment 1b) along with a completed Assignment Cover Page. · The assignment must be in MS Word format, 1.5 spacing, 11-pt Calibri (Body) font and 2 cm margins on all four sides of your page with appropriate section headings. · Reference sources must be cited in the text of the report, and listed appropriately at the end in a reference list using IEEE Transactions on networking referencing style. · Students must ensure before submission of final version of the assignment that the similarity percentage as computed by Turnitin has to be less than 10%. |
||||
Extension | If an extension of time to submit work is required, a Special Consideration Application must be submitted directly through AMS. You must submit this application within three working days of the assessment due date. Further information is available at:
http://www.mit.edu.au/about-mit/institute-publications/policies- procedures-and-guidelines/specialconsiderationdeferment |
||||
Academic Misconduct | Academic Misconduct is a serious offence. Depending on the seriousness of the case, penalties can vary from a written warning or zero marks to exclusion from the course or rescinding the degree. Students should make themselves familiar with the full policy and procedure available at: http://www.mit.edu.au/about-mit/institute-publications/policies-procedures-and-guidelines/Plagiarism-Academic-Misconduct-Policy-Procedure. For further information, please refer to the Academic Integrity
Section in your Unit Description. |
Purpose of the Assignment
The Assignment1 focuses on two aspects. First, the role of OS as an interface between the user and the computer hardware. Second, the use of command line interface. It helps the students to understand the different types of OS and their relative performances. Also, it assists the students to gain competency in using UNIX/LINUX commands in performing simple OS administration.
By doing this assignment, students will be able to do research and comprehend the basic and latest concepts of OS and how differently or similarly they play the interfacing role on various computing and communication devices. Also, they will appreciate the ease of using GUI over CLI.
Assignment Structure and submission guidelines
the basic concepts of the current operating systems that is marked for 5% of the total marks and the second
part is an extension of first part along with understanding and implementation of UNIX commands covering the remaining 15% of the total marks. Students have to submit the first part by the end of week 3. Reflect on the learning and feedback provided for Part A in Assignment 1b that would be submitted in week 7.
Assignment 1 Specifications
Assignment 1A: Operating Systems (OS) (12 Marks)
In first part of the Assignment 1, literature review of minimum of two journal/ conference papers (No blogs or Wikipedia to be considered) is required focussing on the following points:
- Carry out literature review and develop a Taxonomy (classification) of Operating Systems (OS) from conventional to current systems. Use tree diagram to represent the taxonomy and explain the basis of classification. A minimum of 10 OS to be 7 Marks
- Provide two applications which can run on the operating systems mentioned in the
5 Marks
Provide the details of the resources used. References and in text citations in IEEE style are required.
Assignment 1B: Operating System and Unix Scripts (38 Marks)
The second Part of the assignment shall explore the features of OS, such as security in particular and comparison of few features on different OS.
Answer the following questions:
- Elaborate on the essential features of any one OS that you have researched in Assignment 1a. 4 Marks
- Justify what makes Linux OS more secure than other OS? 4 Marks
- Multiprogramming and time-sharing OS allow sharing the resources simultaneously with may users. This can result into various security challenges. What are two such challenges? However, some applications would prefer using time sharing than a single user workstation. List out two applications and justify why they prefer time sharing environment over single user 6 Marks
- IoS and Android are two of the top operating systems available today in the mobile market. Research these two and compare them in terms of:
- Battery Management
- Process Management
- Memory Management
- Security Management 8 Marks
I. Security related commands 5 marks
On a Unix/Linux system, each file and directory are assigned access rights for the owner of the file, the members of a group of related users, and everybody else. Access rights can be assigned to read a file, to write a file, and to execute a file (i.e., run the file as a program).
Execute the following commands (1-5) and paste the screen shots.
- Create a file and name it with your MITID?
- What are the default file permissions assigned to the newly created file?
- Change the default permissions to group, read & write access and verify the same
- Reset the user password
- Some files begin with a dot (.). These are called hidden files. How can you list them?
II. Unix networking Commands 5 marks
Explore the following unix/linux commands. Provide its syntax and explain the purpose of each of the command. Provide references of the resources used.
- Ping
- Ifconfig
- netstat
- nslookup (Hint: You have an IP address in your network how will you find hostname and vice versa?)
- ARP
- References and in text citations 2 Marks
- Reflection of the learning and the feedback 4 Marks
Marking criteria:
Questions | Description | Marks |
Assignment 1A | Taxonomy of min 10 OS
Two applications on any OS in Taxonomy |
7 Marks
5 Marks |
Assignment 1B | ||
Section 1 | Essential features of one OS Justification of more secure OS | 4 Marks
4 Marks |
Challenges Applications Justifications | 2 Marks
2 Marks 2 Marks |
|
Comparison of iOS and Android | 8 Marks | |
—————————–
Section 2 |
————————————————–
Screen Shots Explanation with Syntax |
————————–
5 Marks 5 Marks |
Reference style | Follow IEEE Transactions on Networking reference style (should have both in-text citation and reference list)
Minimum of 4 references for this Assignment 1a+ Assignment 1b are a must Reflection of Learning and feedback in Assignment 1a |
2 Marks
4 Marks |
Total (Assignment1a +
Assignment1b) |
50 Marks |
Rubrics
Grades | HD | D | Credit | P | N (fail) |
Assignment 1a | Excellent
research work and focused discussions and analysis Sound references from reputed journals. |
Good research work and discussions are relevant and soundly analysed.
Good references |
Generally relevant research work and discussions are relevant. some references. | Some research work and brief discussions.
Some references. |
No research carried out. Irrelevant discussions and no references. |
Assignment 1b- Section 1 | Excellent presentation of: essential features of OS, Justification of secured features, Challenges, applications and justifications.
Comparison of Oss and justification of Batch OS usage |
Sound presentation of: essential features of OS, Justification of secured features, Challenges, applications and justifications.
Comparison of Oss and justification of Batch OS usage |
Good presentation of: essential features of OS, Justification of secured features, Challenges, applications and justifications. Comparison of Oss and justification of Batch OS usage | Relevance and justifications not sufficiently provided. | Not focused on the requirements of the assignment questions.
Not a good model |
Assignment 1b- Section 2 | Perfect usage and understanding of relevant commands for the given tasks.
Sound logic |
Good usage and understanding of commands for the given tasks.
Good logic |
Good understanding of commands for the given tasks. | Some relevance | Not relevant to the assigned tasks. |
IEEE Reference style | Clear styles with excellent source of references. | Clear referencing style | Generally good referencing style | Sometimes clear referencing
style |
Lacks consistency with many errors |
Answer:
Introduction
Role of Operating Systems and Command Line Interface |
Assignment 1B: Operating system and UNIX scripts
Section 1
- The features of Linux are as follows [1],
Portability
This feature on Linux supports to install various types of software on various types of hardware. A Linux kernel and al its application program supports various types of the hardware platform.
Open-source
The source code of a Linux operating system is developed based on the community and it is available for free. The capabilities of the Linux are enhanced by the teamwork of many teams together.
Multiprogramming
Linux operating systems allows performing multiple operations simultaneously.
Hierarchical file system
Linux uses a hierarchical file system, a standard file structure to store and arrange user files in the same order (same manner).
Shell
It is a special program that is used to execute commands on the server as an interpreter. This also performs various operations, application programs, etc.
Security
Linux provides a high level of security like password creation and access control for files and encryption of data.
- Linux operating system is more secure than other operating systems
The source code of the Linux operating system is readable form and still it provides high security while comparing to other operating systems. The use of Linux is rapidly increasing since many devices are dependent on Linux. The following feature ensures the Linux operating system is more secure than other operating systems [2].
Privileges in Account
In windows OS, default access is provided to the user for performing every operation i.e. provided with Administrator rights. If the system is infected with a virus then it can gain the whole access easily. While in Linux OS, the entire access of the system is not given to the user but it has only provided with low access rights. This makes the Linux OS more secure as even if the system is infected with virus only local folders and files will be able to access which could not affect the whole system.
Competency with the Community
When compared to Linux all the other OS exploits to vulnerabilities on the social network. A normal user can download or access the virus file easily by viewing their emails. This cannot be done in Linux OS, Linux users are strong in technical wise that makes them not to access these file attachments. Downloading this needs a right of execution so downloading these unknown files on Linux possibility is very less. There are many tester and developers were working on Linux OS, so if any vulnerabilities were raised then it can be discovered and fixed quickly.
Minimum users
The use of Linux OS is very less compared to other OS like Mac OS, Windows OS, etc. as the use of Linux is less it has very few issues on security to gain access to sensitive data.
- Multiprogramming and time-sharing
Performing resource sharing on Linux some security challenges like privacy and integrity will be faced [2],
Privacy: an individual user can read all other users private data
Integrity: an individual user can damage all other users private data
Multi-programming on the system goal is to utilize the maximum usage of CPU with a single CPU. If a single program runs on a single CPU then achieving CPU utilization is not possible and some programs take more time to fetch input or output operation until the CPU will be idle. A Multi program run on a single processor allows many operations to complete and CPU will not be in idle state. The extended version of the multiprogramming is time-sharing. An effective CPU utilization can be achieved but there is not a user interaction. In time-sharing, the interaction between the user for achieving effective resource consumption and this provides an idea to the user that a whole system is for the use even if this shares with many users.
The application that uses the time-sharing system is LibreOffice and GIMP. In LibreOffice, MS- Word and Excel will work simultaneously the concept used is time-sharing. This takes many threads and times to check spelling and grammar so that the system will perform correctly. Similarly, switching LibreOffice and GIMP is possible with the concept of time-sharing and this environment is chosen for 3 types of situations whenever a need in cheep, fast and easy access.
- Comparison
- Battery management
Comparing android with iOS, iOS has a better battery saving as it has few apps of freedom that could run on background and resource consumption. As the background application overtakes the running time of the system that consumes more power. The option for power saving is turn on provides an extra one hour of existing battery. Multi-tasking and cellular radio use are scheduled for performing the unnecessary power up and down for processors and radios. Android has large and thick batteries while iOS has small size battery and sensible software. This comparison of battery features shows iOS has long battery life than android.
- Process management
Both android and iOS have similar RAM management types but the difference in decision making to manage the performance of an application on the background. An Android OS is a Linux based OS that free up space on chosen unused resources when memory runs out while on iOS it can compress more data on running background application. Comparing to android, iOS helps to load more applications than android.
- Memory management
Both iOS and Android uses a different type of memory management. iOS uses a superior level of memory management due to its OS as iOS works on a runtime environment which takes memory and system resources. iOS application uses ARC that removes the unwanted resource automatically that helps to improve the performance. While android has java that has a garbage collector that makes the system slow on releasing memory which results in the absence of performance of the system application.
- Security management
Comparing to android, iOS is a more secure operating system as it operated on a closed system. iOS source code cannot be released to app developers and also users on iOS could not be able to alter the existing source code. This makes it difficult for a hacker to find a vulnerability on the iOS system. Android is an exact opposite of the iOS system. Android relays on an open-source source code that allows the user to modify or alter. This allows hackers to find vulnerabilities and this makes android less secure. This makes iOS is considered for batter security management.
Section 2
- Security-related commands
- Creating a file
- Set default file permissions for newly creating file
- Change the default permissions to the group, read & write access and verify the same
4) Reset the user password
- Some files begin with a dot (.). These are called hidden files. How can you list them?
- Unix network commands
- Ping
Syntax: sudo ping -v
Purpose: it is used to check the network connection between the server and the host.
- Ifconfig
Syntax: ifconfig […OPTIONS] [INTERFACE]
Purpose: it is used to configure the kernel-resident network interfaces.
- netstat
Syntax: netstat -a
Purpose: it is used to display the network information’s like connection, interface statistics, multicast memberships, network connections etc.
- nslookup
syntax: nslookup [option]
Purpose: nslookup is Name Server Lookup. It is used to get the information from DNS server.
- ARP
Syntax: A >arp -a
Purpose: ARP is used to discover the hardware address such as MAC address of the host. i.e IP address.
References
[1] Sobell, Mark G. A practical guide to Linux commands, editors, and shell programming. Prentice Hall, 2013.
[2] Barrett, Daniel J. Linux Pocket Guide: Essential Commands. ” O’Reilly Media, Inc.”, 2016.
0 responses on "Fundamentals of Operating Systems and Programming"