Module Catalogues, Xi'an Jiaotong-Liverpool University   
Module Code: IOT103TC
Module Title: Computer Architecture and Operating Systems
Module Level: Level 1
Module Credits: 5.00
Academic Year: 2020/21
Semester: SEM1
Originating Department: School of Internet of Things
Pre-requisites: N/A
To introduce how computers function at the instruction operation level.

To introduce the relationships between the instruction operation level and both the higher (software) and lower (hardware) levels.

To introduce students to the structure and functionality of modern operating systems.

To explain how the principal components of computer-based systems perform their functions and how they interact with each other.
Learning outcomes 
A. Describe the structure and operation of computer hardware at the register transfer level.

B. Implement/reason about simple algorithms at the level of machine code.

C. Describe the overall structure and functionality of a modern operating system and its interactions with computer hardware and user processes.

D. Construct/reason about programs that involve the management of concurrent processes.
Method of teaching and learning 
 Lecture - Students will be expected to attend formal lectures in a typical week. Formal lectures will be used to introduce students to the concepts and methods covered by the module, reinforced by practical illustrations and exercises using systems available to the students (Linux, Windows, Java).

 Practicals - Students will be expected to attend supervised computer lab practicals in a typical week. Computer lab practicals are intended to allow students to undertake practical exercises with the possibility of immediate feedback.

 Private study - In a typical week students will be expected to devote approximately 6 hours of unsupervised time to private study; private study will provide time for reflection and consideration of lecture material and background reading and completion of the assessment tasks.

 Assessment - Continuous assessment will be used to test to what extent practical skills have been learnt. A final examination at the end of the module will assess the academic achievement of students.
1. Machine architecture and instruction execution: The CPU. Stored Program concept. Program Execution. A very basic overview of instruction-level operation, using a small number of instructions only.

2. Machine-level correspondence to high level constructs: Simple Arithmetic expressions. Array variables. Very simple loops. Conditional expressions. Subroutines and subroutine calling mechanisms. Stacks and recursion.

3. Introduction to operating systems: Outline of time-sharing, interrupt mechanism, normal state/special state switching.

4. Processes and concurrency: process management and scheduling. Resource allocation, mutual exclusion, semaphores, deadlock. Concurrent programming.

6. Memory management: storage organisation methods, paging, segmentation, memory allocation, caching, garbage collection.

7. File management: Input/output, files, filestore organisation, buffering.
Delivery Hours  
Lectures Seminars Tutorials Lab/Prcaticals Fieldwork / Placement Other(Private study) Total
Hours/Semester 39      13    98  150 


Sequence Method % of Final Mark
1 Coursework 10.00
2 Coursework 10.00
3 Final Exam 80.00

Module Catalogue generated from SITS CUT-OFF: 6/6/2020 9:42:10 PM