Chapter 3: Operating Systems
Tomorrow 18 Dec 2017 Lecture 9:30 – 12:30 Dish Party Bring yourself Bring something delicious Renew intention Help preparing Have manners and politeness Winners of 500 term competition
After Tomorrow 19 Dec 2017 Lecture 11:30 – 12:30 Replacement midterm for late coming students
Chapter 3: Operating Systems 3.1 The History of Operating Systems 3.2 Operating System Architecture 3.3 Coordinating the Machine’s Activities 3.4 Handling Competition Among Processes 3.5 Security
What are operating systems Operating systems are software packages that coordinate a computer’s internal activities as well as oversee its communication with the outside world. It transforms the computer hardware into a useful tool. Our goal is to understand what operating systems do and how they do it.
OS Relation to Other SW Computer Applications: Operating System: Excel Windows Linux Andoid Applications: Excel Game Browser VoIP
Functions of Operating Systems Interact with the user Oversee operation of computer Store and retrieve files Schedule programs for execution Coordinate the execution of programs
Popular Operating Systems MS Windows Linux Unix Mac OS Android
Smart Phone OS
Smart Phone OS
Evolution of Shared Computing First Generation: Batch processing Second Generation: Interactive processing Requires real-time processing Third Generation: Time-sharing/Multitasking Implemented by Multiprogramming Multiprocessor machines
Figure 3.1 Batch processing
Figure 3.2 Interactive processing
Important Terms operating system job job Queue batch processing interactive processing time-sharing multi-programming - time slice multi-tasking
Types of Software Application software System software Performs specific tasks for users System software Provides infrastructure for application software Consists of operating system and utility software
Figure 3.3 Software classification
Utility Programs Includes many kinds: Drivers Anti Virus Compression (Win Zip) Defragmentation Backup
2. Operating System Components User Interface: Communicates with users Text based (Shell) Graphical user interface (GUI) Kernel: Performs basic required functions File manager Device drivers Memory manager Scheduler and dispatcher
Figure 3.4 The user interface act as an intermediary between users and the operating system kernel
Important Terms Aystem software Application software Utility software Linux Linus Torvalds User interface shells GUI Windows manager Kernel
File Manager Directory (or Folder): A user-created bundle of files and other directories (subdirectories) Directory Path: A sequence of directories within directories F:\Data\CS111\Slides
Memory Manager Allocates space in main memory May create the illusion that the machine has more memory than it actually does (virtual memory) by playing a “shell game” in which blocks of data (pages) are shifted back and forth between main memory and mass storage
Getting it Started (Bootstrapping) Boot loader: Program in ROM (example of firmware) Run by the CPU when power is turned on Transfers (copies) operating system from mass storage to main memory Executes jump to operating system
Figure 3.5 The booting process
3. Processes Process: The activity of executing a program Process State: Current status of the activity Program counter General purpose registers Related portion of main memory
Process Administration Scheduler: Adds new processes to the process table and removes completed processes from the process table Dispatcher: Controls the allocation of time slices to the processes in the process table The end of a time slice is signaled by an interrupt.
Figure 3.6 Time-sharing between process A and process B
5. Securing IT Systems
Securing IT Systems
Securing IT Systems Ove Overflow Input Injection Weak Authentication
Securing IT Systems Ove Input Injection Weak Overflow Authentication Social Engineering
Computer Viruses It is a program that copies itself repeatedly without the user’s permission and moves from a machine to another through computer networks It has harmful effect like slowing the machine, damaging data, or even physical damage. (Stuxnet)
Types of Computer Viruses Boot Sector Viruses File Infectors Time Bombs Trojan Horses Ransomware
Fighting Computer Viruses Do not open unknown messages or attachments Check attachments before downloading them Install Anti Virus SW Scan flashes, etc.
Attack 1: Wanna Cry
Ransomware “Ransomware is a computer worm that encrypts the data in the infected computer and makes it unusable as if data is taken as a hostage. Then it displays demands to pay ransom money to release and decrypt the data so it is usable again.”
Attack 2: Stuxnet - 1 “Stuxne was a landmark in the history of computer viruses. It is the first virus in history that crosses the boundaries between the digital world and the physical world. Rather than simply hijacking targeted computers or stealing information from them, it caused physical destruction of the equipment the computers controlled, the centrifuges.”
Stuxnet - 2 Natanz Centrifuges Remote Server Internet Control Computers PLCs Natanz Remote Server Internet
Important Terms System software Application software Utility software Linux Linus Torvalds User interface shells GUI Windows manager Kernel File manager operating system job job Queue batch processing interactive processing time-sharing multi-programming - time slice multi-tasking
Important Terms boot loader booting directory or folder ROM process process state -> program counter + registers + memory cells peripheral devices MS Windows Task Manager directory or folder directory path device drivers memory manager paging - page virtual memory scheduler + process table dispatcher + time slice + process switching + interrupt
Important Terms System crash Administrator Account Login