Operating Systems Concepts 1. A Computer Model An operating system has to deal with the fact that a computer is made up of a CPU, random access memory.

Slides:



Advertisements
Similar presentations
Operating-System Structures
Advertisements

Operating-System Structures
So far Binary numbers Logic gates Digital circuits process data using gates – Half and full adder Data storage – Electronic memory – Magnetic memory –
OPERATING SYSTEMS Lecturer: Szabolcs Mikulas Office: B38B
Chapter 6 File Systems 6.1 Files 6.2 Directories
Tanenbaum, Modern Operating Systems 3 e, (c) 2008 Prentice-Hall, Inc
Troubleshooting Startup Problems
Debugging operating systems with time-traveling virtual machines Sam King George Dunlap Peter Chen CoVirt Project, University of Michigan.
Threads, SMP, and Microkernels
COMP1214 Systems & Platforms: Operating Systems Concepts Dr. Yvonne Howard – Rikki Prince – 1.
Copyright © 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 3: Operating Systems Computer Science: An Overview Tenth Edition.
Lesson 4 0x Operating Systems.
3.1 Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition Process An operating system executes a variety of programs: Batch system.
Operating System.
Processes Management.
Executional Architecture
Copyright 2013 – Noah Mendelsohn Compiling C Programs Noah Mendelsohn Tufts University Web:
Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition, Chapter 14: Protection.
Installing Windows XP Professional Using Attended Installation Slide 1 of 30Session 8 Ver. 1.0 CompTIA A+ Certification: A Comprehensive Approach for all.
Slide 2-1 Copyright © 2004 Pearson Education, Inc. Operating Systems: A Modern Perspective, Chapter 2 Using the Operating System 2.
Operating Systems Security 1. The Boot Sequence The action of loading an operating system into memory from a powered-off state is known as booting or.
Operating Systems Security 1. The Boot Sequence The action of loading an operating system into memory from a powered-off state is known as booting or.
CSUF Chapter CSUF Operating Systems Security 2.
Section 3.2: Operating Systems Security
Information flow inside the computer IT skills: none IT concepts: computer components (input devices, output devices, memory, storage and CPU), program.
CSCE101 – Ch 3 September 14 & 16, Chapter 3 Computer Software = System Software + Application Software Delineation unclear – (ex. Microsoft Antitrust)
IT Systems Operating System EN230-1 Justin Champion C208 –
Operating Systems. What is an Operating System? A layer of software between users/applications and the hardware. The first program loaded onto a computer.
Introduction to Kernel
Operating Systems.
Operating Systems Concepts 1. A Computer Model An operating system has to deal with the fact that a computer is made up of a CPU, random access memory.
Computer for Health Sciences
Chapter 3 Operating Systems Concepts 1. A Computer Model An operating system has to deal with the fact that a computer is made up of a CPU, random access.
Chapter 3.1:Operating Systems Concepts 1. A Computer Model An operating system has to deal with the fact that a computer is made up of a CPU, random access.
Chapter 3 Operating Systems Introduction to CS 1 st Semester, 2015 Sanghyun Park.
Operating Systems What do you have left on your computer after you strip away all of the games and application programs you bought and installed? Name.
Systems Security & Audit Operating Systems security.
Software GCSE COMPUTING.
Copyright © 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 3: Operating Systems Computer Science: An Overview Tenth Edition.
Computing and the Web Operating Systems. Overview n What is an Operating System n Booting the Computer n User Interfaces n Files and File Management n.
Section 3.1: Operating Systems Concepts 1. A Computer Model An operating system has to deal with the fact that a computer is made up of a CPU, random.
Operating Systems TexPREP Summer Camp Computer Science.
Processes and OS basics. RHS – SOC 2 OS Basics An Operating System (OS) is essentially an abstraction of a computer As a user or programmer, I do not.
Hardware process When the computer is powered up, it begins to execute fetch-execute cycle for the program that is stored in memory at the boot strap entry.
Chapter 3.2: Operating Systems Security 1. The Boot Sequence The action of loading an operating system into memory from a powered-off state is known as.
Operating Systems Security 1. The Boot Sequence The action of loading an operating system into memory from a powered-off state is known as booting or.
Foundation year Lec.3: Computer SoftwareLec.3: Computer Software Lecturer: Dalia Mirghani Year: 2014/2015.
Computer Systems Week 14: Memory Management Amanda Oddie.
Lecture 5 Page 1 CS 111 Online Processes CS 111 On-Line MS Program Operating Systems Peter Reiher.
UNIX Unit 1- Architecture of Unix - By Pratima.
Hardware process When the computer is powered up, it begins to execute fetch-execute cycle for the program that is stored in memory at the boot strap entry.
Operating Systems Security
Week1: Introduction to Computer Networks. Copyright © 2012 Cengage Learning. All rights reserved.2 Objectives 2 Describe basic computer components and.
2.1 Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition System Programs (p73) System programs provide a convenient environment.
Operating Systems Security 1. The Boot Sequence The action of loading an operating system into memory from a powered-off state is known as booting or.
An operating system (OS) is a collection of system programs that together control the operation of a computer system.
Operating Systems Salihu Ibrahim Dasuki (PhD) CSC102 INTRODUCTION TO COMPUTER SCIENCE.
A+ Guide to Managing and Maintaining Your PC, 7e Chapter 2 Introducing Operating Systems.
Operating System & Application Software
CSC 482/582: Computer Security
Chapter 5: Using System Software
TexPREP Summer Camp Computer Science
Operating Systems Concepts
CIT 480: Securing Computer Systems
Mumtaz Ali Rajput +92 – INFORMATION SECURITY – WEEK 5 Mumtaz Ali Rajput +92 – 301-
Chapter 15, Exploring the Digital Domain
Chapter 2: System Structures
Outline Chapter 2 (cont) OS Design OS structure
CSE 153 Design of Operating Systems Winter 2019
Department of Computer Science
Presentation transcript:

Operating Systems Concepts 1

A Computer Model An operating system has to deal with the fact that a computer is made up of a CPU, random access memory (RAM), input/output (I/O) devices, and long-term storage. 2 Disk Drive RAM CPU I/O

OS Concepts An operating system (OS) provides the interface between the users of a computer and that computer’s hardware. – Manages the ways applications access the resources in a computer – Manages multiple users. – Manages multiple programs. 3

Multitasking Give each running program a “slice” of the CPU’s time. The CPU is running so fast that to any user it appears that the computer is running all the programs simultaneously. 4 Public domain image from

The Kernel The kernel is the core component of the operating system It handles the management of low- level hardware resources – including memory, processors, and input/output (I/O) devices, such as a keyboard, mouse, or video display. 5

The Kernel (2) Most operating systems define the tasks associated with the kernel in terms of a layer metaphor – The hardware components (CPU, memory, and input/output devices) being on the bottom – Users and applications being on the top. 6 User Applications Non-essential OS Applications The OS Kernel CPU, Memory, Input/Output Userland Operating System Hardware

Input/Output Each input/output device is represented in an OS using a device driver – Device driver encapsulates the details of how interaction with the devices should be done. The application programmer interface (API) allows application programs to interact with the devices at a fairly high level – API is presented by the device drivers to application programs The OS performing the low-level interactions to make devices actually work 7

System Calls 8 User applications delegate to the kernel direct communication to low-level hardware components via system calls System calls are usually contained in a collection of programs, that is, a library (such as the C library (libc)) System calls provide an interface that allows applications to use a predefined series of APIs that define the functions for communicating with the kernel. – Examples of system calls include those for performing file I/O (open, close, read, write) and running application programs (exec).

Processes A process is an instance of a program that is currently executing. The actual contents of all programs are initially stored in persistent storage, such as a hard drive. In order to be executed, a program must be loaded into random-access memory (RAM) and uniquely identified as a process. In this way, multiple copies of the same program can be run as different processes. – For example, we can have multiple copies of MS Powerpoint open at the same time. 9

Process IDs Each process running on a given computer is identified by a unique nonnegative integer, called the process ID (PID). Given the PID for a process, we can then associate its CPU time, memory usage, user ID (UID), program name, etc. 10

File Systems A filesystem is an abstraction of how the external, nonvolatile memory of the computer is organized. Operating systems typically organize files hierarchically into folders, also called directories. Each folder may contain files and/or subfolders. Thus, a volume, or drive, consists of a collection of nested folders that form a tree. The topmost folder is the root of this tree and is also called the root folder. 11

File System Example 12

File Permissions File permissions are checked by the operating system to determine if a file is readable, writable, or executable by a user or group of users. In Unix-like OS’s, a file permission matrix shows who is allowed to do what to the file. – Files have owner permissions, which show what the owner can do, and group permissions, which show what some group id can do, and world permissions, which give default access rights. 13

Memory Management The RAM memory of a computer is its address space. It contains both the code for the running program, its input data, and its working memory. For any running process, it is organized into different segments – which keep the different parts of the address space separate. – Security concerns require that we never mix up these different segments. 14

Memory Organization Text. This segment contains the actual (binary) machine code of the program. Data. This segment contains static program variables that have been initialized in the program code. BSS. (block started by symbol) This segment contains static variables that are uninitialized. Heap. (also known as the dynamic segment) This segment stores data generated during the execution of a process. Stack. This segment houses a stack data structure that grows downwards – Used for keeping track of the call structure of subroutines and their arguments. 15

Memory Layout 16

Virtual Memory There is generally not enough computer memory for the address spaces of all running processes. Nevertheless, the OS gives each running process the illusion that it has access to its complete (contiguous) address space. In reality, this view is virtual, in that the OS supports this view, but it is not really how the memory is organized. Instead, memory is divided into pages, and the OS keeps track of which ones are in memory and which ones are stored out to disk. 17 ATM

Page Faults 18 Process 1. Process requests virtual address not in memory, causing a page fault. 2. Paging supervisor pages out an old block of RAM memory. 3. Paging supervisor locates requested block on the disk and brings it into RAM memory. “read ” “Page fault, let me fix that.” Blocks in RAM memory: Paging supervisor External disk old new

Virtual Machines Virtual machine: A view that an OS presents that a process is running on a specific architecture and OS, when really it is something else. E.g., a windows emulator on a Mac. Benefits: – Hardware Efficiency – Portability – Security – Management 19 Public domain image from

Operating Systems Security 20

The Boot Sequence The action of loading an operating system into memory from a powered-off state is known as booting or bootstrapping. When a computer is turned on, it first executes code stored in a firmware component known as the BIOS (basic input/output system). On modern systems, the BIOS loads into memory the second-stage boot loader, which handles loading the rest of the operating system into memory and then passes control of execution to the operating system. 21

BIOS Passwords A malicious user could potentially seize execution of a computer at several points in the boot process. To prevent an attacker from initiating the first stages of booting, many computers feature a BIOS password that does not allow a second- stage boot loader to be executed without proper authentication. 22

Hibernation Modern machines have the ability to go into a powered-off state known as hibernation. While going into hibernation, the OS stores the contents of machine’s memory into a hibernation file (such as hiberfil.sys) on disk so the computer can be quickly restored later. But… without additional security precautions, hibernation exposes a machine to potentially invasive forensic investigation User closes a laptop computer, putting it into hibernation. 2. Attacker copies the hiberfil.sys file to discover any unencrypted passwords that were stored in memory when the computer was put into hibernation.

24

Event Logging Keeping track of what processes are running can often leave important clues not only for troubleshooting ordinary problems, but also for determining the cause of a security breach. – What other machines have interacted with the system via the Internet, and if the operating system has experienced any unexpected or suspicious behavior 25

Process Explorer 26

Process Explorer us/sysinternals/bb us/sysinternals/bb rthAmerica/2010/WCL315 (10:00) rthAmerica/2010/WCL315 _6?url=search-alias%3Daps&field- keywords=sysinternals&sprefix=sysint _6?url=search-alias%3Daps&field- keywords=sysinternals&sprefix=sysint 27