Protection in General-purpose Operating Systems

Size: px
Start display at page:

Download "Protection in General-purpose Operating Systems"

Transcription

1 Protection in Generalpurpose Operating Systems David Morgan Evolution of operating systems serial processing simple batch systems multiprogrammed batch systems timesharing systems

2 Serial processing no operating system programmers interacted directly with hardware console consisting of display lights and toggle switches Front panel display lights and toggle switches

3 Serial processing poor utilization user time reserved by hardcopy signup sheet job duration sometimes shorter than scheduled cpu unutilized till next reservation Simple batch systems processor utilization paramount due to extreme expense monitor program introduced user no longer can access hardware job deck (punched cards) submitted to operator multiple jobs placed on input device program branches back to monitor on termination

4 Memory layout with resident monitor monitor controls the sequence of events resident monitor is software always in memory monitor reads in job and gives control job returns control to monitor Simple batch system overhead processor time alternates between execution of user programs and execution of the monitor sacrifices some main memory is now given over to the monitor some processor time is consumed by the monitor despite overhead, the simple batch system improves utilization of the computer

5 CTSS compatible time sharing system developed at MIT by a group known as Project MAC ran on a computer with 32,000 36bit words of main memory, with the resident monitor consuming 5000 of that to simplify both the monitor and memory management a program was always loaded to start at the location of the 5000th word CTSS compatible time sharing system system clock generates an interrupt every 0.2s OS regained control and could assign processor to another user at regular time intervals the current user would be preempted and another user loaded in old user programs and data were written out to disk

6 CTSS operation Job sizes words jobs loaded in order 1, 2, 3, 1, 4, 2 The role of hardware modes of operation user mode user programs execute in user mode protected memory areas cannot be accessed privileged instructions may not be executed kernel mode monitor/os executes in kernel mode protected memory areas may be accessed privileged instructions may be executed

7 Hardware for operating systems early OSs ran on particular hardware platforms commercial: IBM MVS, DEC VAX, Burroughs and GE research: KSOS, PSOS, KVM, Multics, SCOMP could take entire advantage of hardware s protection mechanisms later OSs are portable across platforms Windows, unix/linux cannot take full advantage, only of common denominator protection mechanisms Means of separation physical separation A and B use different computers or peripherals temporal separation A and B use them at different times logical separation A and B are held apart in separate domains by an OS cryptographic separation A and B encrypt their data from one another

8 Sharing (in tension with separation) do not protect when procedures run at separate times isolate wall processes off from each other share all or share nothing owner publically shares wholly or not at all share via access limitation evaluate each access to an object according to subject share by capabilities evaluate each access by subject according to object limit use of an object once object is accessed, what process can do with it Demo linux shared memory backing off process separation with IPC several interprocess communication means shared memory pipes semaphores mutexes demonsration of shared memory

9 Writing to share memory segment eading from shared memory segment

10 Memory protection fence base/bounds registers tagged architecture segmentation paging relocation Fence

11 Variable fence register Base/bounds registers

12 Base/bounds registers Tagged architecture extra bits in every address may represent what kind of value is held here (instruction vs data) what access rights apply to that value check upon every access

13 Logical addresses Segmentation program can be divided into segments variable length maximum length 2part addresses segment number or name an offset

14 Segmentation equivalent to multiple base/bounds registers many pieces, potentially different access rights Segmentation usually visible (unlike paging) organizational convenience for subdividing process memory into pieces code can go here, data there, stack yonder segments can be further subdivided

15 Segmentation tables a perprocess table giving segment names and offsets a single OS table giving segment names and their true addresses Segmentation namebased

16 Segmentation unequal segment sizes no formula for logicaltophysical address translation (unlike paging) translation steps extract segment number as leftmost n bits of logical address use the segment number to index into the process segment table to find starting physical address of the segment compare offset, from rightmost m bits, to segment s length (if greater, error) physical address is sum of segment starting address plus offset Address translation w/segmentation

17 Address formation w/segmentation Segmentation namebased

18 Address hiding advantages segment is relocatable segment is swapoutable OS address translation step can include an access control decision Address hiding advantages address references are protection checked different protection can be accorded to different kinds of data multiple users can share access to a segment, with different access rights users cannot generate addresses or access unpermitted segments

19 Paging divide processes into equal fixedsize pieces partition memory into sections of that same size Page table, per each process maps inmemory pages to the frames that contain them address formation/determination must go through the table processor produces physical address from program s logical address plus the table

20 Pageto toframe assignments Process sizes A 4 pages B 3 pages C 4 pages D 5 pages processes loaded in alphabetical order, B terminates after C loaded esultant page tables D s pages distributed noncontiguously

21 Address formation with paging Address translation with paging

22 Paged segmented addressing Table entry formats Potential opportunity to label a segment with general security parameters

23 Virtual memory paging load can be partial pages are in disk store Contiguity/completeness of loading

24 elocation elocation of programs generally calls for a few internal adjustments. Parts of a program (certain of its instructions) typically reference addresses within the program. Obviously, if the program as a whole gets shifted from one place in memory to another (i.e., relocated), every portion of the program moves with it. So any part of the program that accounts for the address of the program, must account for the change of address of the program. General object access control directory one list for each subject, giving objects here are the files this user can access acl one list for each object, giving subjects here are the users that can access this file acm access control matrix expression of both

25 persubject directories subjects a directory of objects for each perobject access control lists objects a list of subjects for each

26 linux (ext filesystem) ACLs ACL exists for this file student can t read grades, teacher can make special changes, via ACL grades ACL student can now read grades, teacher no longer can (ACL overrides) Access control matrix BIBLIOG TEMP F HELP.TXT C_COMP LINKE SYS_CL OCK PINTE user A OW OW OW X X W user B X X W user S W X X W user T X X W Sys_mgr W OX OX OW O User_svcs O X X W

27 ACM cols=acls, rows=dirs BIBLIOG s acl user A s directory BIBLIOG TEMP F HELP.TXT C_COMP LINKE SYS_CL OCK PINTE user A OW OW OW X X W user B X X W user S W X X W user T X X W Sys_mgr W OX OX OW O User_svcs O X X W A capability an object id together with rights to it acm row is a list of subject s capabilities x can to this with a, that with b, etc other examples keys on somebody s physical keyring a concert ticket the set of groups of which a linux user is a member the conceptual capability list is not the group list it is the list of objects in the filesystem having those groups, each together with its group permissions e.g. somefile r is one of the capabilities in the capability list user david belongs to inf520, cs530, teachers

28 A capability an unforgeable token that gives the possessor certain rights to an object making the ticket unforgeable hardware tags protected address space cryptography protected address space implementation as example capability list retained in kernel memory process only gets indices into table can only reference capabilities that exist under kernel escrow, not directly linux process descriptor process descriptor table could add a capability list to all this a descriptor, for a single process; contains or points to that process s attributes identifiers, state, resources my process id number user account associated with me id number of my parent process id numbers of my children my state readiness to run run priority CPU s state flags register values files I hold open memory locations I occupy

29 Process domain / name space collection of all objects accessible to process varies dynamically Kerberos Starting point: parties want to talk a client a server but confidentially don t forget! our wishful hope: if only they had a common key!

30 What if there were a key fairy? fairy performs a double key transmittal a client a server Fairy would fly away Parties could talk confident(ial)ly thereafter a client a server These keys would be disposable, just for the session or just for today. (If there is such a thing as the client key or the server key that persist, these aren t it.) After today: Tomorrow?? : trash the keys ask for some new ones (they re free!)

31 Generalize the idea to a whole community clients clients could share keys with servers clienta clientb clientc servers server types mail time login/shell web clienta can secure 1) mail traffic 2) web traffic blue, red pairs respectively clientb can secure 1) mail traffic 2) login traffic purple, green pairs clientc can secure 1) file transfer traffic Yellow pair file transfer Actually there is no a key fairy. There s Kerberos. kerberos a client a server

32 Here client, have this pair of keys for you and server. Keep one for yourself and give the other to him. How the dualhandoff really works kerberos step 1 a client a server How the dualhandoff really works step 2 Here server, have this key and use it for cryption when we talk from now on kerberos a client a server

33 kerberos kerberos gets out of the way parties talk confident(ial)ly thereafter a client a server User authentication passwords biometrics hardware tokens

34 Password guessing: easy or hard? an alphabet is a set of symbols how many words of a certain length can you compose from an alphabet? depends on the number of symbols in the alphabet the particular wordlength How many words are there? 26letter alphabet, wordlength 3: 26 3 = letter alphabet, wordlength 3: 52 3 = 140,608 double alphabet length yields 8 times as many words 26letter alphabet, wordlength 6: 26 6 = 308,915,776 double word length yields times as many words 52letter alphabet, wordlength 6: 52 6 = 19,770,609,660 a fish is in a pond harder to catch in a bigger pond

35 Password strength determinants the number of possible characters it contains its length the randomness of character selection a 3 rd criterion!! humandependent! (arguably, the most important factor these days) Human factor discovery From passwords captured in large volume in recent publicized leaks, more commonly than expected, people chose 9character passwords whose first 5 characters are letters, last 4 are numbers, first character is sometimes capitalized, others are not. andom: any any any any any any any any any Observed: wordspace 96^9 = 7 * 10^17 1 million times bigger 1 million times smaller alpha lower lower lower lower num num num num wordspace 52*26*26*26*26*10*10*10*10 = 2 * 10^11

36 Passwords hashed, stored in /etc/shadow this is what exfiltrator has to work with MD5 SHA512 Bruteforce attack tries every character combination until it finds the password timeconsuming in proportion to password space will always find the password, given time cf. The Library of Babel by Jose Luis Borges

37 Bruteforce attack time estimator PAM* architecture 1 PAM 2 /etc/pam.d 4 PAMaware applications (e.g., /bin/login) /lib/security 3 configuration files *Pluggable Authentication Modules PAM modules

38 Default directories and files / /etc/pam.d /lib/security /etc/security /usr/share/doc/pamxx individual config files for each app the PAM modules, as shared library files modulespecific config files for modules that need them PAM documentation Operation sequence app calls PAM (1) PAM reads app s PAM config file (2) PAM calls PAM modules as listed in the file (3) each succeeds or fails independently PAM itself succeeds or fails, depending on the modules outcomes returns its overall outcome to app (4) app proceeds (if success) or terminates (if failure) the module that evaluates passwords can be supplemented or replaced by one(s) that evaluate biometric or hardtoken input instead

39 Example: hardware authentication tokens Yubico YubiKey SA SecureID Pressing yubikey, in Notepad yubikey is a USB keyboard device it types 44 letters whenever pressed right 32 letters left 12 letters onetime password, generated this time invariant public ID of this yubikey, generated every time

40 Good play, bad replay from pressing keyboard from pressing yubikey ykclient utility queries validation server with key from command history recall buffer 2 seconds later (onetime key, used 2 nd time, is stale) play: red client to server blue server to client replay:

41 PAM for sshd: involving yubikey in ssh logins sshd 1 PAM 2 /etc/pam.d 4 a PAMaware application 3 sshd pam_yubico.so PAM module for yubikey specifies pam_yubico.so configuration file for sshd program Configuration details corresponds this machine s david account to the particular white yubikey I bought recently, so a valid key from that yubikey device is good for admission to this account

42 yubikey pressed here client 1 yubikey types onetime key to client PuTTY 2 client PuTTY sends key to server sshd 3 sshd passes key to pam_yubico.so 4 pam_yubico.so ships it to api.yubico.com for validation ssh login by yubikey i n c r e a s i n g t i m e s e r v e r per yubico authentication server 5 api.yubico.com returns OK to pam_yubico.so 6 pam_yubico.so returns OK to sshd 7 sshd launches shell client Construction of output cccccccvrjbc = unique public ID s t a t i c a l l y s t o r e d B3D6 = unique secret ID = unique symmetric key (for AES) d y n a m i c a l l y g e n e r a t e d cccccccvrjbc encrypt cccccccvrjbc c o n c a t e n a t e tjjneccdnuerugkclcvenbilblgkdiie output cccccccvrjbctjjneccdnuerugkclcvenbilblgkdiie

43 Authentication processing application server validation request authentication server validation response app request app response public ID serial no. secret ID d a t a b a s e symmetric key last sequence number etc application client cccccccvrjbc B3D6 179

User authentication:

User authentication: User authentication: passwords versus alternative criteria Authentication verifying identity of a user example: logging into a system example: GPG digital signature is the authentication mechanism that

More information

Chapter 4 Protection in General-Purpose Operating Systems

Chapter 4 Protection in General-Purpose Operating Systems Chapter 4 Protection in General-Purpose Operating Systems Charles P. Pfleeger & Shari Lawrence Pfleeger, Security in Computing, 4 th Ed., Pearson Education, 2007 1 An operating system has two goals: controlling

More information

Authentication. Administrative VM login credentials. September 8, CentOS-6.4 root

Authentication. Administrative VM login credentials. September 8, CentOS-6.4 root Authentication September 8, 2017 Administrative VM login credentials CentOS-6.4 student/c$l@blinux root /c$l@blinux ( mnemonic: compter science lab linux ) Centos 4.3 min-gdb root/password Kali Linux root/c$l@blinux

More information

Operating Systems: Internals and Design Principles. Chapter 2 Operating System Overview Seventh Edition By William Stallings

Operating Systems: Internals and Design Principles. Chapter 2 Operating System Overview Seventh Edition By William Stallings Operating Systems: Internals and Design Principles Chapter 2 Operating System Overview Seventh Edition By William Stallings Operating Systems: Internals and Design Principles Operating systems are those

More information

Introduction. CS3026 Operating Systems Lecture 01

Introduction. CS3026 Operating Systems Lecture 01 Introduction CS3026 Operating Systems Lecture 01 One or more CPUs Device controllers (I/O modules) Memory Bus Operating system? Computer System What is an Operating System An Operating System is a program

More information

MEMORY MANAGEMENT/1 CS 409, FALL 2013

MEMORY MANAGEMENT/1 CS 409, FALL 2013 MEMORY MANAGEMENT Requirements: Relocation (to different memory areas) Protection (run time, usually implemented together with relocation) Sharing (and also protection) Logical organization Physical organization

More information

Operating systems and security - Overview

Operating systems and security - Overview Operating systems and security - Overview Protection in Operating systems Protected objects Protecting memory, files User authentication, especially passwords Trusted operating systems, security kernels,

More information

Operating systems and security - Overview

Operating systems and security - Overview Operating systems and security - Overview Protection in Operating systems Protected objects Protecting memory, files User authentication, especially passwords Trusted operating systems, security kernels,

More information

Chapter 4. Protection in General-Purpose Operating Systems. ch. 4 1

Chapter 4. Protection in General-Purpose Operating Systems. ch. 4 1 Chapter 4 Protection in General-Purpose Operating Systems ch. 4 1 Chapter Outline 4.1 Protected Objects and Methods of Protection 4.2 Memory and Address Protection 4.3 Control of Access to General Objects

More information

Embedded Systems Dr. Santanu Chaudhury Department of Electrical Engineering Indian Institute of Technology, Delhi

Embedded Systems Dr. Santanu Chaudhury Department of Electrical Engineering Indian Institute of Technology, Delhi Embedded Systems Dr. Santanu Chaudhury Department of Electrical Engineering Indian Institute of Technology, Delhi Lecture - 13 Virtual memory and memory management unit In the last class, we had discussed

More information

File Systems. OS Overview I/O. Swap. Management. Operations CPU. Hard Drive. Management. Memory. Hard Drive. CSI3131 Topics. Structure.

File Systems. OS Overview I/O. Swap. Management. Operations CPU. Hard Drive. Management. Memory. Hard Drive. CSI3131 Topics. Structure. File Systems I/O Management Hard Drive Management Virtual Memory Swap Memory Management Storage and I/O Introduction CSI3131 Topics Process Management Computing Systems Memory CPU Peripherals Processes

More information

What is an Operating System? A Whirlwind Tour of Operating Systems. How did OS evolve? How did OS evolve?

What is an Operating System? A Whirlwind Tour of Operating Systems. How did OS evolve? How did OS evolve? What is an Operating System? A Whirlwind Tour of Operating Systems Trusted software interposed between the hardware and application/utilities to improve efficiency and usability Most computing systems

More information

CPS221 Lecture: Operating System Protection

CPS221 Lecture: Operating System Protection Objectives CPS221 Lecture: Operating System Protection last revised 9/5/12 1. To explain the use of two CPU modes as the basis for protecting privileged instructions and memory 2. To introduce basic protection

More information

Principles of Operating Systems CS 446/646

Principles of Operating Systems CS 446/646 Principles of Operating Systems CS 446/646 1. Introduction to Operating Systems a. Role of an O/S b. O/S History and Features Serial processing Simple batch systems Multiprogrammed batch systems Time-sharing

More information

Chapter 2. OS Overview

Chapter 2. OS Overview Operating System Chapter 2. OS Overview Lynn Choi School of Electrical Engineering Class Information Lecturer Prof. Lynn Choi, School of Electrical Eng. Phone: 3290-3249, Kong-Hak-Kwan 411, lchoi@korea.ac.kr,

More information

Chapter 8. Operating System Support. Yonsei University

Chapter 8. Operating System Support. Yonsei University Chapter 8 Operating System Support Contents Operating System Overview Scheduling Memory Management Pentium II and PowerPC Memory Management 8-2 OS Objectives & Functions OS is a program that Manages the

More information

Windows 7 Overview. Windows 7. Objectives. The History of Windows. CS140M Fall Lake 1

Windows 7 Overview. Windows 7. Objectives. The History of Windows. CS140M Fall Lake 1 Windows 7 Overview Windows 7 Overview By Al Lake History Design Principles System Components Environmental Subsystems File system Networking Programmer Interface Lake 2 Objectives To explore the principles

More information

Outline. Operating System Security CS 239 Computer Security February 23, Introduction. Server Machines Vs. General Purpose Machines

Outline. Operating System Security CS 239 Computer Security February 23, Introduction. Server Machines Vs. General Purpose Machines Outline Operating System Security CS 239 Computer Security February 23, 2004 Introduction Memory protection Interprocess communications protection File protection Page 1 Page 2 Introduction Why Is OS Security

More information

Module 29: Operating System Memory Protection

Module 29: Operating System Memory Protection Module 29: Operating System Memory Protection An operating system is the multiprogramming system allowing multiple users to use concurrently. Operating system is designed in such a way that one user's

More information

Memory management. Last modified: Adaptation of Silberschatz, Galvin, Gagne slides for the textbook Applied Operating Systems Concepts

Memory management. Last modified: Adaptation of Silberschatz, Galvin, Gagne slides for the textbook Applied Operating Systems Concepts Memory management Last modified: 26.04.2016 1 Contents Background Logical and physical address spaces; address binding Overlaying, swapping Contiguous Memory Allocation Segmentation Paging Structure of

More information

Chapter 8: Main Memory

Chapter 8: Main Memory Chapter 8: Main Memory Chapter 8: Memory Management Background Swapping Contiguous Memory Allocation Segmentation Paging Structure of the Page Table Example: The Intel 32 and 64-bit Architectures Example:

More information

OPERATING SYSTEMS OVERVIEW

OPERATING SYSTEMS OVERVIEW OPERATING SYSTEMS OVERVIEW Contents O.S.Functions The Evolution of O.S. Characteristics of O.S. Basic hardware elements Contents USER 1 USER 2 USER 3 USER n O.S.Components System calls O.S.Structure compiler

More information

Operating System. Operating System Overview. Structure of a Computer System. Structure of a Computer System. Structure of a Computer System

Operating System. Operating System Overview. Structure of a Computer System. Structure of a Computer System. Structure of a Computer System Overview Chapter 1.5 1.9 A program that controls execution of applications The resource manager An interface between applications and hardware The extended machine 1 2 Structure of a Computer System Structure

More information

Persistent key, value storage

Persistent key, value storage Persistent key, value storage In programs, often use hash tables - E.g., Buckets are an array of pointers, collision chaining For persistant data, minimize # disk accesses - Traversing linked lists is

More information

Chapter 8: Memory-Management Strategies

Chapter 8: Memory-Management Strategies Chapter 8: Memory-Management Strategies Chapter 8: Memory Management Strategies Background Swapping Contiguous Memory Allocation Segmentation Paging Structure of the Page Table Example: The Intel 32 and

More information

Operating System Support

Operating System Support Operating System Support Objectives and Functions Convenience Making the computer easier to use Efficiency Allowing better use of computer resources Layers and Views of a Computer System Operating System

More information

YubiKey Mac Operating System Login Guide

YubiKey Mac Operating System Login Guide YubiKey Mac Operating System Login Guide Using Yubico Pluggable Authentication Module (PAM) with Challenge-Response YubiKey Mac Login Guide 2017 Yubico. All rights reserved. Page 1 of 19 Copyright 2017

More information

Operating Systems Overview. Chapter 2

Operating Systems Overview. Chapter 2 Operating Systems Overview Chapter 2 Operating System A program that controls the execution of application programs An interface between the user and hardware Masks the details of the hardware Layers and

More information

Chapter 7 Memory Management

Chapter 7 Memory Management Operating Systems: Internals and Design Principles Chapter 7 Memory Management Ninth Edition William Stallings Frame Page Segment A fixed-length block of main memory. A fixed-length block of data that

More information

16 Sharing Main Memory Segmentation and Paging

16 Sharing Main Memory Segmentation and Paging Operating Systems 64 16 Sharing Main Memory Segmentation and Paging Readings for this topic: Anderson/Dahlin Chapter 8 9; Siberschatz/Galvin Chapter 8 9 Simple uniprogramming with a single segment per

More information

(Refer Slide Time: 1:26)

(Refer Slide Time: 1:26) Information Security-3 Prof. V Kamakoti Department of Computer science and Engineering Indian Institute of Technology Madras Basics of Unix and Network Administration Operating Systems Introduction Mod01,

More information

Operating Systems. Engr. Abdul-Rahman Mahmood MS, PMP, MCP, QMR(ISO9001:2000) alphapeeler.sf.net/pubkeys/pkey.htm

Operating Systems. Engr. Abdul-Rahman Mahmood MS, PMP, MCP, QMR(ISO9001:2000) alphapeeler.sf.net/pubkeys/pkey.htm Operating Systems Engr. Abdul-Rahman Mahmood MS, PMP, MCP, QMR(ISO9001:2000) armahmood786@yahoo.com alphasecure@gmail.com alphapeeler.sf.net/pubkeys/pkey.htm http://alphapeeler.sourceforge.net pk.linkedin.com/in/armahmood

More information

Radius, LDAP, Radius, Kerberos used in Authenticating Users

Radius, LDAP, Radius, Kerberos used in Authenticating Users CSCD 303 Lecture 5 Fall 2018 Radius, LDAP, Radius, Kerberos used in Authenticating Users Kerberos Authentication and Authorization Previously Said that identification, authentication and authorization

More information

Architectural Support for A More Secure Operating System

Architectural Support for A More Secure Operating System Architectural Support for A More Secure Operating System Edward L. Bosworth, Ph.D. TSYS Department of Computer Science Columbus State University Columbus, GA A Few Comments The term Secure Operating System

More information

Operating System Security

Operating System Security Operating System Security Operating Systems Defined Hardware: I/o...Memory.CPU Operating Systems: Windows or Android, etc Applications run on operating system Operating Systems Makes it easier to use resources.

More information

COS 318: Operating Systems. File Systems. Topics. Evolved Data Center Storage Hierarchy. Traditional Data Center Storage Hierarchy

COS 318: Operating Systems. File Systems. Topics. Evolved Data Center Storage Hierarchy. Traditional Data Center Storage Hierarchy Topics COS 318: Operating Systems File Systems hierarchy File system abstraction File system operations File system protection 2 Traditional Data Center Hierarchy Evolved Data Center Hierarchy Clients

More information

Cryptographic Concepts

Cryptographic Concepts Outline Identify the different types of cryptography Learn about current cryptographic methods Chapter #23: Cryptography Understand how cryptography is applied for security Given a scenario, utilize general

More information

CHAPTER 8 - MEMORY MANAGEMENT STRATEGIES

CHAPTER 8 - MEMORY MANAGEMENT STRATEGIES CHAPTER 8 - MEMORY MANAGEMENT STRATEGIES OBJECTIVES Detailed description of various ways of organizing memory hardware Various memory-management techniques, including paging and segmentation To provide

More information

TYPES OF OPERATING SYSTEMS. Dimple Juneja

TYPES OF OPERATING SYSTEMS. Dimple Juneja TYPES OF OPERATING SYSTEMS Outline Operating Systems Multiprogramming Systems Time-sharing Systems Multitasking Systems Operating System Architectures OS: A Usual View What is an operating system? An interface

More information

Chapter 8: Main Memory. Operating System Concepts 9 th Edition

Chapter 8: Main Memory. Operating System Concepts 9 th Edition Chapter 8: Main Memory Silberschatz, Galvin and Gagne 2013 Chapter 8: Memory Management Background Swapping Contiguous Memory Allocation Segmentation Paging Structure of the Page Table Example: The Intel

More information

YubiKey Personalization Tool. User's Guide

YubiKey Personalization Tool. User's Guide YubiKey Personalization Tool User's Guide Copyright 2016 Yubico Inc. All rights reserved. Trademarks Disclaimer Yubico and YubiKey are registered trademarks of Yubico Inc. All other trademarks are the

More information

Processes and Threads

Processes and Threads OPERATING SYSTEMS CS3502 Spring 2018 Processes and Threads (Chapter 2) Processes Two important types of dynamic entities in a computer system are processes and threads. Dynamic entities only exist at execution

More information

Background. Contiguous Memory Allocation

Background. Contiguous Memory Allocation Operating System Lecture 8 2017.5.9 Chapter 8 (Main Memory) Background Swapping Contiguous Memory Allocation Segmentation - Paging Memory Management Selection of a memory-management method for a specific

More information

SAZ4B/SAE5A Operating System Unit : I - V

SAZ4B/SAE5A Operating System Unit : I - V SAZ4B/SAE5A Operating System Unit : I - V TM Unit I: Contents Views, Goals & Types of system OS Structure, Components & Services System Structures &Layered Approach Virtual Machines System Design and Implementation.

More information

Objectives and Functions Convenience. William Stallings Computer Organization and Architecture 7 th Edition. Efficiency

Objectives and Functions Convenience. William Stallings Computer Organization and Architecture 7 th Edition. Efficiency William Stallings Computer Organization and Architecture 7 th Edition Chapter 8 Operating System Support Objectives and Functions Convenience Making the computer easier to use Efficiency Allowing better

More information

Computer Organization and Architecture. OS Objectives and Functions Convenience Making the computer easier to use

Computer Organization and Architecture. OS Objectives and Functions Convenience Making the computer easier to use Computer Organization and Architecture Chapter 8 Operating System Support 1. Processes and Scheduling 2. Memory Management OS Objectives and Functions Convenience Making the computer easier to use Efficiency

More information

User accounts and authorization

User accounts and authorization User accounts and authorization Authentication vs authorization Authentication: proving the identity of someone Authorization: allowing a user to access certain resources 1 Government authorization documents

More information

PASSWORDS & ENCRYPTION

PASSWORDS & ENCRYPTION PASSWORDS & ENCRYPTION Villanova University Department of Computing Sciences D. Justin Price Fall 2014 CRYPTOGRAPHY Hiding the meaning of a message from unintended recipients. Open source algorithms are

More information

Chapter 8: Memory- Management Strategies. Operating System Concepts 9 th Edition

Chapter 8: Memory- Management Strategies. Operating System Concepts 9 th Edition Chapter 8: Memory- Management Strategies Operating System Concepts 9 th Edition Silberschatz, Galvin and Gagne 2013 Chapter 8: Memory Management Strategies Background Swapping Contiguous Memory Allocation

More information

Chapter 8: Memory- Management Strategies

Chapter 8: Memory- Management Strategies Chapter 8: Memory Management Strategies Chapter 8: Memory- Management Strategies Background Swapping Contiguous Memory Allocation Segmentation Paging Structure of the Page Table Example: The Intel 32 and

More information

Disciplina Sistemas de Computação

Disciplina Sistemas de Computação Aula 09 Disciplina Sistemas de Computação Operating System Roles (recall) OS as a Traffic Cop: Manages all resources Settles conflicting requests for resources Prevent errors and improper use of the computer

More information

O/S & Access Control. Aggelos Kiayias - Justin Neumann

O/S & Access Control. Aggelos Kiayias - Justin Neumann O/S & Access Control Aggelos Kiayias - Justin Neumann One system Many users Objects that require protection memory I/O devices (disks, printers) programs and processes networks stored data in general Separation

More information

Announcement. Exercise #2 will be out today. Due date is next Monday

Announcement. Exercise #2 will be out today. Due date is next Monday Announcement Exercise #2 will be out today Due date is next Monday Major OS Developments 2 Evolution of Operating Systems Generations include: Serial Processing Simple Batch Systems Multiprogrammed Batch

More information

Memory Management Topics. CS 537 Lecture 11 Memory. Virtualizing Resources

Memory Management Topics. CS 537 Lecture 11 Memory. Virtualizing Resources Memory Management Topics CS 537 Lecture Memory Michael Swift Goals of memory management convenient abstraction for programming isolation between processes allocate scarce memory resources between competing

More information

Test 2 Review. (b) Give one significant advantage of a nonce over a timestamp.

Test 2 Review. (b) Give one significant advantage of a nonce over a timestamp. Test 2 Review Name Student ID number Notation: {X} Bob Apply Bob s public key to X [Y ] Bob Apply Bob s private key to Y E(P, K) Encrypt P with symmetric key K D(C, K) Decrypt C with symmetric key K h(x)

More information

Process Time. Steven M. Bellovin January 25,

Process Time. Steven M. Bellovin January 25, Multiprogramming Computers don t really run multiple programs simultaneously; it just appears that way Each process runs to completion, but intermixed with other processes Process 1 6 ticks Process 2 Process

More information

Storage and File System

Storage and File System COS 318: Operating Systems Storage and File System Andy Bavier Computer Science Department Princeton University http://www.cs.princeton.edu/courses/archive/fall10/cos318/ Topics Storage hierarchy File

More information

Topics. Operating System. What is an Operating System? Let s Get Started! What is an Operating System? Where in the Book are we?

Topics. Operating System. What is an Operating System? Let s Get Started! What is an Operating System? Where in the Book are we? Topics Operating System What is an OS? OS History OS Concepts OS Structures Introduction Let s Get Started! What is an Operating System? What are some OSes you know? Guess if you are not sure Pick an OS

More information

Memory management. Requirements. Relocation: program loading. Terms. Relocation. Protection. Sharing. Logical organization. Physical organization

Memory management. Requirements. Relocation: program loading. Terms. Relocation. Protection. Sharing. Logical organization. Physical organization Requirements Relocation Memory management ability to change process image position Protection ability to avoid unwanted memory accesses Sharing ability to share memory portions among processes Logical

More information

Announcements. Reading. Project #1 due in 1 week at 5:00 pm Scheduling Chapter 6 (6 th ed) or Chapter 5 (8 th ed) CMSC 412 S14 (lect 5)

Announcements. Reading. Project #1 due in 1 week at 5:00 pm Scheduling Chapter 6 (6 th ed) or Chapter 5 (8 th ed) CMSC 412 S14 (lect 5) Announcements Reading Project #1 due in 1 week at 5:00 pm Scheduling Chapter 6 (6 th ed) or Chapter 5 (8 th ed) 1 Relationship between Kernel mod and User Mode User Process Kernel System Calls User Process

More information

Chapter 8: Memory- Management Strategies. Operating System Concepts 9 th Edition

Chapter 8: Memory- Management Strategies. Operating System Concepts 9 th Edition Chapter 8: Memory- Management Strategies Operating System Concepts 9 th Edition Silberschatz, Galvin and Gagne 2013 Chapter 8: Memory Management Strategies Background Swapping Contiguous Memory Allocation

More information

OS Security. Authentication. Radboud University Nijmegen, The Netherlands. Winter 2014/2015

OS Security. Authentication. Radboud University Nijmegen, The Netherlands. Winter 2014/2015 OS Security Authentication Radboud University Nijmegen, The Netherlands Winter 2014/2015 What does an OS do? Definition An operating system (OS) is a computer program that manages access of processes (programs)

More information

Operating Systems Overview. Chapter 2

Operating Systems Overview. Chapter 2 1 Operating Systems Overview 2 Chapter 2 3 An operating System: The interface between hardware and the user From the user s perspective: OS is a program that controls the execution of application programs

More information

Protecting Information Assets - Week 10 - Identity Management and Access Control. MIS 5206 Protecting Information Assets

Protecting Information Assets - Week 10 - Identity Management and Access Control. MIS 5206 Protecting Information Assets Protecting Information Assets - Week 10 - Identity Management and Access Control MIS5206 Week 10 Identity Management and Access Control Presentation Schedule Test Taking Tip Quiz Identity Management and

More information

Chapter 8: Main Memory

Chapter 8: Main Memory Chapter 8: Main Memory Silberschatz, Galvin and Gagne 2013 Chapter 8: Memory Management Background Swapping Contiguous Memory Allocation Segmentation Paging Structure of the Page Table Example: The Intel

More information

Multiprocessor Systems. Chapter 8, 8.1

Multiprocessor Systems. Chapter 8, 8.1 Multiprocessor Systems Chapter 8, 8.1 1 Learning Outcomes An understanding of the structure and limits of multiprocessor hardware. An appreciation of approaches to operating system support for multiprocessor

More information

Operating System Support

Operating System Support William Stallings Computer Organization and Architecture 10 th Edition Edited by Dr. George Lazik + Chapter 8 Operating System Support Application programming interface Application binary interface Instruction

More information

271 Waverley Oaks Rd. Telephone: Suite 206 Waltham, MA USA

271 Waverley Oaks Rd. Telephone: Suite 206 Waltham, MA USA Contacting Leostream Leostream Corporation http://www.leostream.com 271 Waverley Oaks Rd. Telephone: +1 781 890 2019 Suite 206 Waltham, MA 02452 USA To submit an enhancement request, email features@leostream.com.

More information

Introduction to Computer Science. Polly Huang NTU EE

Introduction to Computer Science. Polly Huang NTU EE Introduction to Computer Science Polly Huang NTU EE http://homepage.ntu.edu.tw/~pollyhuang pollyhuang@ntu.edu.tw Polly Huang, NTU EE Operating System 1 Chapter 3 Operating Systems Polly Huang, NTU EE Operating

More information

Course Syllabus. Operating Systems

Course Syllabus. Operating Systems Course Syllabus. Introduction - History; Views; Concepts; Structure 2. Process Management - Processes; State + Resources; Threads; Unix implementation of Processes 3. Scheduling Paradigms; Unix; Modeling

More information

ECE519 Advanced Operating Systems

ECE519 Advanced Operating Systems IT 540 Operating Systems ECE519 Advanced Operating Systems Prof. Dr. Hasan Hüseyin BALIK (8 th Week) (Advanced) Operating Systems 8. Virtual Memory 8. Outline Hardware and Control Structures Operating

More information

Misc. Third Generation Batch Multiprogramming. Fourth Generation Time Sharing. Last Time Evolution of OSs

Misc. Third Generation Batch Multiprogramming. Fourth Generation Time Sharing. Last Time Evolution of OSs Third Generation Batch Multiprogramming Misc. Problem: but I/O still expensive; can happen in middle of job Idea: have a pool of ready jobs in memory, switch to one when another needs I/O When one job

More information

How to Secure SSH with Google Two-Factor Authentication

How to Secure SSH with Google Two-Factor Authentication How to Secure SSH with Google Two-Factor Authentication WELL, SINCE IT IS QUITE COMPLEX TO SET UP, WE VE DECIDED TO DEDICATE A WHOLE BLOG TO THAT PARTICULAR STEP! A few weeks ago we took a look at how

More information

Operating system security models

Operating system security models Operating system security models Unix security model Windows security model MEELIS ROOS 1 General Unix model Everything is a file under a virtual root diretory Files Directories Sockets Devices... Objects

More information

Operating System Design

Operating System Design Operating System Design Processes Operations Inter Process Communication (IPC) Neda Nasiriani Fall 2018 1 Process 2 Process Lifecycle 3 What information is needed? If you want to design a scheduler to

More information

Access Control. Steven M. Bellovin September 13,

Access Control. Steven M. Bellovin September 13, Access Control Steven M. Bellovin September 13, 2016 1 Security Begins on the Host Even without a network, hosts must enforce the CIA trilogy Something on the host the operating system aided by the hardware

More information

OPERATING SYSTEM. Functions of Operating System:

OPERATING SYSTEM. Functions of Operating System: OPERATING SYSTEM Introduction: An operating system (commonly abbreviated to either OS or O/S) is an interface between hardware and user. OS is responsible for the management and coordination of activities

More information

CS307: Operating Systems

CS307: Operating Systems CS307: Operating Systems Chentao Wu 吴晨涛 Associate Professor Dept. of Computer Science and Engineering Shanghai Jiao Tong University SEIEE Building 3-513 wuct@cs.sjtu.edu.cn Download Lectures ftp://public.sjtu.edu.cn

More information

Multiprogramming. Evolution of OS. Today. Comp 104: Operating Systems Concepts 28/01/2013. Processes Management Scheduling & Resource Allocation

Multiprogramming. Evolution of OS. Today. Comp 104: Operating Systems Concepts 28/01/2013. Processes Management Scheduling & Resource Allocation Comp 104: Operating Systems Concepts Management Scheduling & Resource Allocation Today OS evolution Introduction to processes OS structure 1 2 Evolution of OS Largely driven by desire to do something useful

More information

Lecture Topics. Announcements. Today: Operating System Overview (Stallings, chapter , ) Next: Processes (Stallings, chapter

Lecture Topics. Announcements. Today: Operating System Overview (Stallings, chapter , ) Next: Processes (Stallings, chapter Lecture Topics Today: Operating System Overview (Stallings, chapter 2.1-2.4, 2.8-2.10) Next: Processes (Stallings, chapter 3.1-3.6) 1 Announcements Consulting hours posted Self-Study Exercise #3 posted

More information

CS 326: Operating Systems. Process Execution. Lecture 5

CS 326: Operating Systems. Process Execution. Lecture 5 CS 326: Operating Systems Process Execution Lecture 5 Today s Schedule Process Creation Threads Limited Direct Execution Basic Scheduling 2/5/18 CS 326: Operating Systems 2 Today s Schedule Process Creation

More information

User Authentication. Modified By: Dr. Ramzi Saifan

User Authentication. Modified By: Dr. Ramzi Saifan User Authentication Modified By: Dr. Ramzi Saifan Authentication Verifying the identity of another entity Computer authenticating to another computer Person authenticating to a local/remote computer Important

More information

Pattern Recognition and Applications Lab AUTHENTICATION. Giorgio Giacinto.

Pattern Recognition and Applications Lab AUTHENTICATION. Giorgio Giacinto. Pattern ecognition and Applications Lab AUTHENTICATION Giorgio Giacinto giacinto@diee.unica.it Computer Security 2018 Department of Electrical and Electronic Engineering University of Cagliari, Italy Authentication

More information

Data Security and Privacy. Unix Discretionary Access Control

Data Security and Privacy. Unix Discretionary Access Control Data Security and Privacy Unix Discretionary Access Control 1 Readings for This Lecture Wikipedia Filesystem Permissions Other readings UNIX File and Directory Permissions and Modes http://www.hccfl.edu/pollock/aunix1/filepermissions.htm

More information

User Authentication. Modified By: Dr. Ramzi Saifan

User Authentication. Modified By: Dr. Ramzi Saifan User Authentication Modified By: Dr. Ramzi Saifan Authentication Verifying the identity of another entity Computer authenticating to another computer Person authenticating to a local/remote computer Important

More information

Mon Sep 17, 2007 Lecture 3: Process Management

Mon Sep 17, 2007 Lecture 3: Process Management Mon Sep 17, 2007 Lecture 3: Process Management September 19, 2007 1 Review OS mediates between hardware and user software QUIZ: Q: Name three layers of a computer system where the OS is one of these layers.

More information

Chapter 2 Operating System Overview

Chapter 2 Operating System Overview True / False Questions: Chapter 2 Operating System Overview 1. T / F An operating system controls the execution of applications and acts as an interface between applications and the computer hardware.

More information

ECE 7650 Scalable and Secure Internet Services and Architecture ---- A Systems Perspective. Part I: Operating system overview: Memory Management

ECE 7650 Scalable and Secure Internet Services and Architecture ---- A Systems Perspective. Part I: Operating system overview: Memory Management ECE 7650 Scalable and Secure Internet Services and Architecture ---- A Systems Perspective Part I: Operating system overview: Memory Management 1 Hardware background The role of primary memory Program

More information

Chapter 7: Main Memory. Operating System Concepts Essentials 8 th Edition

Chapter 7: Main Memory. Operating System Concepts Essentials 8 th Edition Chapter 7: Main Memory Operating System Concepts Essentials 8 th Edition Silberschatz, Galvin and Gagne 2011 Chapter 7: Memory Management Background Swapping Contiguous Memory Allocation Paging Structure

More information

Processes. CS 475, Spring 2018 Concurrent & Distributed Systems

Processes. CS 475, Spring 2018 Concurrent & Distributed Systems Processes CS 475, Spring 2018 Concurrent & Distributed Systems Review: Abstractions 2 Review: Concurrency & Parallelism 4 different things: T1 T2 T3 T4 Concurrency: (1 processor) Time T1 T2 T3 T4 T1 T1

More information

Web Console Setup & User Guide. Version 7.1

Web Console Setup & User Guide. Version 7.1 Web Console Setup & User Guide Version 7.1 1 Contents Page Number Chapter 1 - Installation and Access 3 Server Setup Client Setup Windows Client Setup Mac Client Setup Linux Client Setup Interoperation

More information

Computer Security. 04r. Pre-exam 1 Concept Review. Paul Krzyzanowski. Rutgers University. Spring 2018

Computer Security. 04r. Pre-exam 1 Concept Review. Paul Krzyzanowski. Rutgers University. Spring 2018 Computer Security 04r. Pre-exam 1 Concept Review Paul Krzyzanowski Rutgers University Spring 2018 February 15, 2018 CS 419 2018 Paul Krzyzanowski 1 Key ideas from the past four lectures February 15, 2018

More information

Goals of memory management

Goals of memory management CSE 451: Operating Systems Winter 2004 Module 10 Memory Management Ed Lazowska lazowska@cs.washington.edu Allen Center 570 Goals of memory management Allocate scarce memory resources among competing processes,

More information

Operating Systems Design Exam 3 Review: Spring 2011

Operating Systems Design Exam 3 Review: Spring 2011 Operating Systems Design Exam 3 Review: Spring 2011 Paul Krzyzanowski pxk@cs.rutgers.edu 1 1. Why does an IP driver need to use ARP, the address resolution protocol? IP is a logical network. An IP address

More information

W4118: OS Overview. Junfeng Yang

W4118: OS Overview. Junfeng Yang W4118: OS Overview Junfeng Yang References: Modern Operating Systems (3 rd edition), Operating Systems Concepts (8 th edition), previous W4118, and OS at MIT, Stanford, and UWisc Outline OS definitions

More information

FILE SYSTEMS. CS124 Operating Systems Winter , Lecture 23

FILE SYSTEMS. CS124 Operating Systems Winter , Lecture 23 FILE SYSTEMS CS124 Operating Systems Winter 2015-2016, Lecture 23 2 Persistent Storage All programs require some form of persistent storage that lasts beyond the lifetime of an individual process Most

More information

CS450/550 Operating Systems

CS450/550 Operating Systems CS450/550 Operating Systems Lecture 1 Introductions to OS and Unix Palden Lama Department of Computer Science CS450/550 P&T.1 Chapter 1: Introduction 1.1 What is an operating system 1.2 History of operating

More information

Operating System. Operating System Overview. Layers of Computer System. Operating System Objectives. Services Provided by the Operating System

Operating System. Operating System Overview. Layers of Computer System. Operating System Objectives. Services Provided by the Operating System Operating System Operating System Overview Chapter 2 A program that controls the execution of application programs An interface between applications and hardware 1 2 Operating System Objectives Layers

More information

Operating System Overview. Operating System

Operating System Overview. Operating System Operating System Overview Chapter 2 1 Operating System A program that controls the execution of application programs An interface between applications and hardware 2 1 Operating System Objectives Convenience

More information

CSE543 - Introduction to Computer and Network Security. Module: Operating System Security

CSE543 - Introduction to Computer and Network Security. Module: Operating System Security CSE543 - Introduction to Computer and Network Security Module: Operating System Security Professor Trent Jaeger 1 OS Security An secure OS should provide (at least) the following mechanisms Memory protection

More information