introduction to the module Operating Systems and Architecture











- Slides: 11

<introduction to the module> Operating Systems and Architecture (UFCFCU-30 -1)

<purpose> • Consider the cyber attack surfaces: Surface Malware examples Hardware DDOS buffer overflow Microcode Spectre, Meltdown Firmware Chernobyl Operating system (Windows, OSX, Linux) Too many to list • To protect against cyber threats, you must understand how your system works, in depth, and what the design choices were

<outcomes> • After completing this module you will be able to: • Build test and debug a digital system to a specification • Describe and explain computer architecture, digital logic and machine level representation of data • Explain the relationships between hardware components and the subsystems used in a computer system • Implement simple programs in assembler language • Describe and explain the purposes and implementation of operating systems

<key topics> Data and Logic Number systems Representation of data Digital logic Computer Architecture & Processors ALU Registers Memory Storage I/O Microprocessors Low level programmes Operating Systems 1 Operating Systems 2 Microcode Instruction sets RISC simulator Assembler Processes Multiprogramming Memory management I/O systems File systems Concurrency Synchronisation Scheduling Dispatch Virtualisation

Module introduction Number systems Digital logic Representation of data Computer architecture Memory systems and storage architecture I/O systems

<week 1> Week Day 1 Monday Tuesday Topic Module introduction Number systems Digital logic Representation of data Wednesday Computer architecture Thursday Memory systems and storage architecture Friday I/O systems These slides Binary, addition, 2’s complement, floating point, hexadecimal Boolean arithmetic and logic, logic gates, flip flops, adders, comparators Character sets, colours, images, video, audio, graphics, instruction sets Fetch-execute, ALU, buses, registers, control unit ROM, dynamic RAM, flash, SSD, HDD, tape, hierarchy, performance Serial, parallel, interrupts, DMA, performance,

<week 2> Week Day 2 Monday Topic Microprocessor organisation Tuesday Assembler language Wednesday RISC simulator and assembler programs Thursday Operating system principles Friday Multiprogramming and process Memory management 8085, accumulator, stacks, program counter, address and data buses, north and south bridge, BIOS, UEFI Instruction set, CPU microcode, abstraction, assembler Simulator instruction set, simple programs Program execution, access to I/O and files, system access, resource management Batch, multitasking, time sharing, processes, threads Process isolation, allocation, access control, long term storage, virtual memory, paging

<week 3> Week Day 3 Monday Tuesday Topic Assignment 1 exam I/O systems File systems Wednesday Concurrency, synchronisation, scheduling and dispatch Thursday Virtualisation Friday Virtualisation in practice Issue assignment 2 I/O techniques, data rates, separate processors, buffers, cache, RAID Operations, structure, architecture, organisation, directories, sharing, access, allocation Sharing, race conditions, mechanisms, deadlocks, starvation Process virtualisation, systems, hypervisors, snapshots, migration, failover, containers Practical session for assignment 2

<assignment 1> • Exam • • 2 hours Unseen Worth 50% of the module assessment 40% pass mark • You will be given an assembler program to analyse and describe its function. You must then use it to explain the relationship between hardware components and programs.

<assignment 2> • Project report • 3, 000 words • Worth 50% of the module assessment • 40% pass mark • During the classroom session you will • build a system consisting of a hypervisor, virtual client and virtual server • establish a client/server system and test functionality • You will write a report illustrating • how your system has met the design requirement • how it operates with reference to detailed operating system functions

Module introduction Number systems Digital logic Representation of data Computer architecture Memory systems and storage architecture I/O systems