Note: This unit version is currently being edited and is subject to change!

INFO1112: Computing 1B OS & Network Platforms (2018 - Semester 2)

Download UoS Outline

Unit: INFO1112: Computing 1B OS & Network Platforms (6 CP)
Mode: Normal-Day
On Offer: Yes
Level: Junior
Faculty/School: School of Information Technologies
Unit Coordinator/s: Dr Gramoli, Vincent
Session options: Semester 2
Versions for this Unit:
Campus: Camperdown/Darlington
Pre-Requisites: None.
Co-Requisites: ELEC1601 AND (INFO1110 OR INFO1103 OR INFO1113). For most students, INFO1110 should have already been passed in semester 1.
Brief Handbook Description: The unit introduces principles and concepts of modern computer systems, including mobile computers and the Internet, to provide students with fundamental knowledge of the environments in which modern, networked applications operate. Students will have basic knowledge to understand how computers work and are aware of principles and concepts they are likely to encounter in their career. The unit covers:

*Principles of operating systems and the way applications interact with the OS, including the particularities of modern operating systems for mobile devices

*Principles of computer networking, including mobile networking

*Writing applications that use facilities of the OS and networking, including understanding the challenges that are common in distributed systems
Assumed Knowledge: None.
Lecturer/s: Associate Professor Kummerfeld, Bob
Timetable: INFO1112 Timetable
Time Commitment:
# Activity Name Hours per Week Sessions per Week Weeks per Semester
1 Lecture 2.00 1 13
2 Laboratory 2.00 1 13
3 Independent Study 6.00 13

Attributes listed here represent the key course goals (see Course Map tab) designated for this unit. The list below describes how these attributes are developed through practice in the unit. See Learning Outcomes and Assessment tabs for details of how these attributes are assessed.

Attribute Development Method Attribute Developed
Lectures, labs and assessments all extend students knowledge and skills of technical topics Engineering/IT Specialisation (Level 2)
In working in labs and assignment, students need to learn the details of using particular tools and APIs; this will require students to look these details up, in online resources Information Seeking (Level 2)
Writing a report Communication (Level 2)
Work in a small team, to complete tasks on time Project and Team Skills (Level 1)

For explanation of attributes and levels see Engineering & IT Graduate Outcomes Table.

Learning outcomes are the key abilities and knowledge that will be assessed in this unit. They are listed according to the course goal supported by each. See Assessment Tab for details how each outcome is assessed.

Project and Team Skills (Level 1)
1. Manage their time and activities in a multi-week individual project
Communication (Level 2)
2. Produce clear written report
Information Seeking (Level 2)
3. Able to extend their knowledge, acquire new knowledge, and connect to conceptual frameworks in operating systems and networks and the impact on application development, without explicit instruction
Engineering/IT Specialisation (Level 2)
4. Understand basic functions that an operating system performs, and know the main subcomponents of the OS
5. Understand basic functions that networking performs, and know the most important layers/subcomponents in networking
6. Able to use essential system tools to monitor OS and network status
7. Understand additional concepts relevant for OS for server and for handhelds, including virtualization and containers
8. Experience with a number of different operating systems
9. Able to identify the interfaces at which users/applications can interact with the OS and the network, and identify where the OS function or network communication needs to be protected against unauthorized access
10. Understand major ideas used in internal implementation of OS and networks, such as caching, process structures, memory mapping, layering, reliable/unreliable transport, multiplexing, packet switching
11. Aware of some key algorithmic approaches that can be used in some subcomponents of OS and networking (eg routing, scheduling); also aware of alternative implementations in some cases, and of the tradeoffs involved
12. Able to write basic application functionality to interact with the operating system and the network, e.g. by opening and closing files, writing to disk, and sending application-layer data to remote applications
13. Aware of several major challenges that arise in distributed systems and mobile applications, e.g. failure tolerance and latency tolerance
Assessment Methods:
# Name Group Weight Due Week Outcomes
1 Quizzes No 10.00 Multiple Weeks 4, 5, 6, 7, 8, 9, 10, 11, 12, 13,
2 Project No 30.00 Week 13 1, 2, 3, 6, 12,
3 Preliminary work for project No 10.00 Week 7 1, 3, 6, 12,
4 Final exam No 50.00 Exam Period 4, 5, 6, 7, 8, 9, 10, 11, 12, 13,
Assessment Description: In the project, students must write some application code that accesses system facilities, and obtain some relevant, system-level measurements.

Weekly quizzes in lab will provide on-going checks that students are keeping up with the conceptual and factual content that is being delivered in lectures; the score will be based on the best 10 quiz marks.
Grading:
Grade Type Description
Standards Based Assessment Final grades in this unit are awarded at levels of HD for High Distinction, DI (previously D) for Distinction, CR for Credit, PS (previously P) for Pass and FA (previously F) for Fail as defined by University of Sydney Assessment Policy. Details of the Assessment Policy are available on the Policies website at http://sydney.edu.au/policies . Standards for grades in individual assessment tasks and the summative method for obtaining a final mark in the unit will be set out in a marking guide supplied by the unit coordinator.
Minimum Pass Requirement It is a policy of the School of Information Technologies that in order to pass this unit, a student must achieve at least 40% in the written examination. For subjects without a final exam, the 40% minimum requirement applies to the corresponding major assessment component specified by the lecturer. A student must also achieve an overall final mark of 50 or more. Any student not meeting these requirements may be given a maximum final mark of no more than 45 regardless of their average.

Note that the "Weeks" referred to in this Schedule are those of the official university semester calendar https://web.timetable.usyd.edu.au/calendar.jsp

Week Description
Week 1 Operating systems: Function, purpose, need, examples (Windows, Linux, Android, embedded).
Week 2 Main subcomponents of OS. Concepts: Resource allocation, scheduling.
Week 3 Kernel space, user space. Privileges. System calls. Observing status and measuring performance.
Week 4 Processes and threads (examples mapping to Windows, Linux); Memory management (Stack. Heap);
Week 5 OS for servers, virtualization
Week 6 Networks. Layering principle and protocols.
Week 7 Internetworking: TCP/IP.
Assessment Due: Preliminary work for project
Week 8 Application Layer protocols and Middleware.
Week 9 Caching: examples in different settings (both network and OS)
Week 10 Extensions and limitations in modern OS for handhelds (eg capabilities) and convergence of mobile and desktop operating systems.
Week 11 Challenges of distributed systems; overview of mobile applications and technologies.
Week 12 (spare for public holiday or future shorter semesters)
Week 13 Applying OS and network knowledge to mobile system development; Review of semester and exam.
Assessment Due: Project
Exam Period Assessment Due: Final exam

Course Relations

The following is a list of courses which have added this Unit to their structure.

Course Year(s) Offered
Bachelor of Advanced Computing/Bachelor of Commerce 2018, 2019
Bachelor of Advanced Computing/Bachelor of Science 2018, 2019
Bachelor of Advanced Computing/Bachelor of Science (Health) 2018, 2019
Bachelor of Advanced Computing/Bachelor of Science (Medical Science) 2018, 2019
Bachelor of Advanced Computing (Computational Data Science) 2018, 2019
Bachelor of Advanced Computing (Computer Science Major) 2018, 2019
Bachelor of Advanced Computing (Information Systems Major) 2018, 2019
Bachelor of Advanced Computing (Software Development) 2018, 2019

Course Goals

This unit contributes to the achievement of the following course goals:

Attribute Practiced Assessed
Project and Team Skills (Level 1) Yes 8%
Communication (Level 2) Yes 6%
Information Seeking (Level 2) Yes 8%
Engineering/IT Specialisation (Level 2) Yes 78%

These goals are selected from Engineering & IT Graduate Outcomes Table which defines overall goals for courses where this unit is primarily offered. See Engineering & IT Graduate Outcomes Table for details of the attributes and levels to be developed in the course as a whole. Percentage figures alongside each course goal provide a rough indication of their relative weighting in assessment for this unit. Note that not all goals are necessarily part of assessment. Some may be more about practice activity. See Learning outcomes for details of what is assessed in relation to each goal and Assessment for details of how the outcome is assessed. See Attributes for details of practice provided for each goal.