程序代写代做代考 algorithm file system Operating Systems Lecture 11b – Revision

Operating Systems Lecture 11b – Revision
Dr Ronald Grau School of Engineering and Informatics Spring term 2020

Module Overview 1
 Identify the main components of an operating system; understand their basic function.  Understand and critically assess concepts and processes related to these components.  Implement some operating system functions in software
Processes
Process Synchronisation
Memory management
Threads
Inter-Process Communication
Page Replacement
Process Scheduling
Deadlocks
File Systems
Security
Input / Output

Week 1 2 Services an OS provides

Week 1 3 System calls

Week 1 4 What are the important abstractions?
 Processes
 Virtual memory  Files

Week 2 5 Processes
 What is a process?
 What are the characteristics of a process and a thread?  Process / thread states
 Multi-threaded programming

Week 2 6 Processes
 A process is an instance of a computer program that is being executed.
 Process model:

Week 2 7 Processes
 Threads exist as subsets of a process.
 Threads within the same process share the same address space
and resources, whereas different processes do not.  A process may have several threads.

Week 2 8 Benefits of multithreaded programming
 Increasing responsiveness  Resource sharing
 More economical
 Utilization of multiprocessing architecture

Week 3 & 4 9 Process scheduling
 What are the common metrics / criteria?  Know your scheduling algorithms inside out  Practice scheduling on paper!

Week 5 10 Process Synchronisation
 Why do processes need synchronisation?  What is a race condition?
 What is a critical section?
 What is mutual exclusion?
 How do semaphores work?
 What are the requirements for any solution to the critical section problem?  What are the differences between Mutex and Semaphore?
 Explain how a bounded buffer works (Producers and Consumers problem).

Week 6 11 Deadlocks
 What is a deadlock?
 How do we deal with deadlocks?
 Deadlock prevention, Deadlock avoidance, Deadlock detection.
 Banker’s Algorithm (deadlock avoidance algorithm).

Week 7 12 Memory management
 Virtual memory
 What are the various memory allocation techniques?
 What are the different types of fragmentation? Explain.
 What is paging? How does it work?
 What does a translation look-aside buffer (TLB) do?
 Know your page replacement algorithms inside out! What kind of behaviour is associated with each? How do they differ from each other?

Week 8 & 9 13 Files and file systems
 File abstraction
 File system organisation
 Basic operations / system calls
 Explain the following block allocation methods of a disk space: Contiguous allocation, linked-list allocation, and indexed allocation.
 What are UNIX i-nodes?

Week 10 14 I/O
 I/O Interaction Protocols: Programmed I/O (Polling), Interrupt-driven I/O, and Direct Memory Access I/O (DMA).
 Memory-mapped I/O.
 What are properties of an I/O device?
 What is the difference between blocking and non-blocking I/O?

Week 11 15 Security
 What is security? Know the basic terms.
 Defenses: Authentication, Accounting, Access control, Isolation.  Access Control Matrix.
 Threat, attack, vulnerability, exploit, violation.

May 2020 Canvas Exam (Quiz) 16 General outline
 A fixed number of random questions across different topics of the module
 The assessment will be available for 24 hours to accommodate students
who are currently located in a time zone different from the UK
 Allowed time is 2 hours – once you start the quiz, time will count down automatically.
 In case something goes wrong (e.g., technical difficulties), you are permitted to restart the assessment within the 24h time window (Note that you will likely get different questions).

May 2020 Canvas Exam (Quiz) 17 Questions
 Many questions will test basic understanding of concepts and bookwork knowledge, but some may require you to solve a problem before you can give the answer. (The lab exercises are your friends)
 Common question types:
 Select the correct answer, given a problem or diagram  Fill in gaps or enter a numerical result
 Match terms to definitions or explanations
 Text answer (e.g., to give an explanation)

Tips for the exam 18 How to prepare effectively
 Review the lectures to revise the core topics
 Do the MCQ training to practice your recall of basic knowledge https://canvas.sussex.ac.uk/courses/8735/pages/multiple-choice-questions-for-exam- preparation?module_item_id=661585
 Review the weekly question sheets & related answers
 Review your lab class exercises and catch up on any that you haven’t done yet
 Post any questions you may have in the forum

Any final questions? 19
Good luck in the exam!