Monitoring Linux Performance for the SQL Server Admin. Anthony E. Nocentino, Enterprise Architect, Centino Systems

Size: px
Start display at page:

Download "Monitoring Linux Performance for the SQL Server Admin. Anthony E. Nocentino, Enterprise Architect, Centino Systems"

Transcription

1 Monitoring Linux Performance for the SQL Server Admin Anthony E. Nocentino, Enterprise Architect, Centino Systems

2 Consultant and Trainer Founder and President of Centino Systems Specialize in system architecture and performance Computer Science, M.S. and B.S. Microsoft MVP - Data Platform Friend of Redgate Linux Foundation Certified Engineer Microsoft Certified Professional Anthony E. Nocentino Enterprise Architect, Centino Systems aen@centinosystems.com Other places online Blog - Pluralsight Author

3 Agenda Linux System Architecture SQL on Linux Architecture System Components CPU/Processes Memory/Pages Disk/File Systems Monitoring Tools

4 Things we re going to cover Linux OS concepts, how it works! Tools to view performance data What s good and what s bad Things we re NOT going to cover SQL Server internals Performance troubleshooting

5 Linux Architecture User Space Users Interact with the Shell Cause Problems :) Shell Executes Your Commands Your Interface to the Kernel Commands, Editors any User Program Kernel Space Kernel Resource Management and Access Process, Pages and File Systems Hardware Physical Resources CPU, Memory and Disk

6 SQLOS Scheduling Synchronization I/O Memory Management Placing tasks into workers and getting access to the CPU Controlling access to system resources Scheduling of I/O both network and disk Allocation of memory to various system objects Primary function is resource management specific to RDBMS A new platform layer in SQL Server 2005 to exploit new hardware capabilities and their trends S. Oks Operating System support for Database Management M. Stonebraker

7 SQL on Linux Architecture - Drawbridge From:

8 SQL on Linux Architecture - SQLPAL From:

9 SQL on Linux Architecture - Process Layout From:

10 SQL on Linux Architecture - SQLPAL All other Code Performance Sensitive Code Win32 Hosted APIs (LibOS) SQL OS API SQL OS v2 Host Extension (Memory, Threads/Scheduling, I/O) Linux Kernel via System Calls From:

11 SQL on Linux Architecture - Host Extensions Call table maps Win32 API semantics to Linux System calls ~45 ABI Calls Memory Management Threads and Scheduling Synchronization Primitives I/O Network and Disk We care a lot about host extensions it s more code

12 Shhhhhh - SQLPAL is Virtualization ;) Process virtualization (not machine) Presenting another environment inside the process context that s different than that of the hardware s operating environment But the environment is purpose built for SQL Server We need to understand that this is a hybrid Win32/Linux process and have a firm grasp of Resource allocation and management in SQLPAL How that turns into Linux OS performance Debugging

13 CPU and Processes

14 What is a Process Process Executing program, program code, memory and resources Thread (LWP) Shared access to resources Process and Thread Creation fork/exec - parent process yields a child process with a PID clone - same address space as thread creator, cheap and fast! Process Tree The hierarchy of parent and it s child processes

15 What is a Process (con t) Process States Running Stopped Zombie Runnable Sleeping

16 Controlling Processes Signals Methods of process control kill and killall Niceness Set the execution priority nice and renice Default 20, lower is less nice

17 More on Processes Context switching Kernel versus User Mode CPU Scheduling How is a SQLOS Worker scheduled onto the CPU? Creates a thread via pthread and that s pushed into the scheduler pthreads?

18 Process/Thread Scheduling Unit of scheduling is the thread Default scheduler is SCHED_OTHER/SCHED_NORMAL Time sharing scheduler Preemptive Dynamic priority list, based on niceness Calculated quantum length based on priority kernel.sched_min_granularity_ns = (10ms) - default kernel.sched_wakeup_granularity_ns = (15ms) - default NUMA Aware, but kernel.numa_balancing = 0 - default

19 CPU - What to look for? Percentage of what? Load average Run queue length and I/O waits Spikes aren t bad Long waits User I/O - disk latency will effect access to the CPU System

20 Tools to use for process monitoring top/htop ps mpstat/pidstat dstat procfs

21 Demos Processes and threads Run load average under CPU saturation Exploring procfs

22 Memory and Pages

23 Memory Memory Layout and Architecture Physical and Virtual Memory NUMA - free lists per node Pages (Anonymous) Demand Paging Swap out Time and Pressure Swap in, Major Page Fault Allocation, Minor Page Fault File System Cache and swappiness - vm.swappiness = 10 (default 30, 0 disables swapping) vm.dirty_ratio = 40 (default 30) vm.max_map_count = (default 65530)

24 Pages Regular pages - 4KB Transparent huge pages - 2MB Increases memory I/O by decreasing TLB cache misses SQLOSv2 Can request large pages inside SQL Server with trace flag 834 SQL will allocate memory on start up When SQLPAL exposes 8GB+ to SQL Server As of today, no locked pages but TF 835 is on?

25 Hello Old Friend AWE On Windows Lock Pages in Memory is Address Window Extensions (AWE) Allocates contiguous mappings to PFNs. Logically contiguous, but not guaranteed contiguous Linux will try to make the THPs contiguous Then those PFNs are mapping into the process virtual address space Why use AWE? How are they unpageable?

26 Memory - What to look for? High consumers of space Physical Virtual External memory pressure on SQL Server Excessive swapping swapping in/out

27 Tools to use for memory monitoring /proc/meminfo free top/htop ps vmstat pidstat

28 Demos Memory layout Isolating a memory hog Identifying external memory pressure External memory pressure on SQL Server Excessive swapping Swapping in/swapping out

29 Disks and File Systems

30 Disks Sectors (physical) Actual storage unit of the disk, 512B or 4KB Blocks (logical) Fundamental unit of I/O, allocation Disks have finite performance characteristics Bandwidth - how much data Latency - how fast Storage Interconnects Internal External

31 File Systems XFS Default file system - EXT4 Block size Impact utilization and performance nominally 4KB default block size Mount time options Access times - noatime

32 Block Allocation in Linux XFS and EXT4 essentially the same Files i-nodes Extents Blocks

33 I/O under SQLPAL Stream I/O via NTUM Fast I/O via the host extension Kernel asynchronous IO (kaio) io_submit() Returns to caller immediately, completion polling is in user space O_DIRECT - bypasses page cache and I/O stays in user mode fsync() probably designed by a deranged monkey on some serious mind-controlling substances. - Linus man 2 open

34 Disks - What to look for? This is the slowest thing in your computer, sorry Argenis! :) Saturated disks and I/O subsystems Swapping Caching is your friend (generally, but not in an RDBMS) Baseline!

35 Tools to use for disk monitoring iostat iotop pidstat dstat

36 Demos Finding high I/O processes Measuring disk latency (DMVs and cmd line tools) sys.dm_io_virtual_file_stats

37 Monitoring Tools

38 Baselining Tools Nearly everything we ve talked about so far has been point in time what about baselining? sar - System Activity Reporter dstat - writes to CSV

39 Tools for Monitoring SQL Server You have all of the same tools you re used to for SQL Server Because of SQLOS we get DMVs Extended Events

40 New Tools Available for SQL on Linux New DMVs PSSDiag DBFS Grafana

41 Metrics Captured by PSSDiag Don t just listen to me here s what Microsoft is interested in CPU - mpstat, pidstat Disk - iostat, iotop Memory - free, sar Network - sar DMV Data System log information

42 Review Linux System Architecture SQL on Linux Architecture System Components CPU/Processes Memory/Pages Disk/File Systems Monitoring Tools

43 Need more data? Blog Pluralsight Understanding and Using Essential Tools for Enterprise Linux 7 Linux basics, system architecture, file and directory management LFCE: Advanced Network and System Administration systemd, Performance and Tools

44 References Many of the man pages

45 Session evaluations Your feedback is important and valuable. Submit by 5pm Friday, November 10 th to win prizes. 3 Ways to Access: Go to passsummit.com Download the GuideBook App and search: PASS Summit 2017 Follow the QR code link displayed on session signage throughout the conference venue and in the program guide

46 Thank You Join me for the BOF lunch from

Monitoring Linux Performance for the SQL Server Admin. Anthony Nocentino, Enterprise Architect, Centino Systems

Monitoring Linux Performance for the SQL Server Admin. Anthony Nocentino, Enterprise Architect, Centino Systems Monitoring Linux Performance for the SQL Server Admin Anthony Nocentino, Enterprise Architect, Centino Systems Technical Assistance If you require assistance during the session, type your inquiry into

More information

Linux OS Fundamentals for the SQL Admin. Anthony E. Nocentino

Linux OS Fundamentals for the SQL Admin. Anthony E. Nocentino Linux OS Fundamentals for the SQL Admin Anthony E. Nocentino aen@centinosystems.com Anthony E. Nocentino Consultant and Trainer Founder and President of Centino Systems Specialize in system architecture

More information

Linux OS Fundamentals for the SQL Admin. Anthony E. Nocentino

Linux OS Fundamentals for the SQL Admin. Anthony E. Nocentino Linux OS Fundamentals for the SQL Admin Anthony E. Nocentino aen@centinosystems.com Anthony E. Nocentino Consultant and Trainer Founder and President of Centino Systems Specialize in system architecture

More information

LINUX OS FUNDAMENTALS FOR THE SQL ADMIN

LINUX OS FUNDAMENTALS FOR THE SQL ADMIN LINUX OS FUNDAMENTALS FOR THE SQL ADMIN Anthony E. Nocentino aen@centinosystems.com ANTHONY E. NOCENTINO! Consultant and Trainer! Founder and President of Centino Systems! Specialize in system architecture

More information

I Needed to Install 80 SQL Servers Fast. Here s How I Did It! Anthony E. Nocentino

I Needed to Install 80 SQL Servers Fast. Here s How I Did It! Anthony E. Nocentino I Needed to Install 80 SQL Servers Fast. Here s How I Did It! Anthony E. Nocentino aen@centinosystems.com Anthony E. Nocentino Consultant and Trainer Founder and President of Centino Systems Specialize

More information

Linux OS Fundamentals for the Windows Admin

Linux OS Fundamentals for the Windows Admin Linux OS Fundamentals for the Windows Admin Anthony E. Nocentino Enterprise Architect Centino Systems Level: Intermediate Anthony E. Nocentino Consultant and Trainer Founder and President of Centino Systems

More information

SQL Server: Practical Troubleshooting. Dmitri Korotkevitch (http://aboutsqlserver.com)

SQL Server: Practical Troubleshooting. Dmitri Korotkevitch (http://aboutsqlserver.com) SQL Server: Practical Troubleshooting 1 Who is this guy with heavy accent? 11+ years of experience working with Microsoft SQL Server Microsoft SQL Server MVP Microsoft Certified Master (SQL Server 2008)

More information

Data Partitioning. For DB Architects and Mere Mortals. Dmitri Korotkevitch

Data Partitioning. For DB Architects and Mere Mortals. Dmitri Korotkevitch Data Partitioning For DB Architects and Mere Mortals Dmitri Korotkevitch http://aboutsqlserver.com Please silence cell phones Explore Everything PASS Has to Offer FREE ONLINE WEBINAR EVENTS FREE 1-DAY

More information

Azure Data Factory VS. SSIS. Reza Rad, Consultant, RADACAD

Azure Data Factory VS. SSIS. Reza Rad, Consultant, RADACAD Azure Data Factory VS. SSIS Reza Rad, Consultant, RADACAD 2 Please silence cell phones Explore Everything PASS Has to Offer FREE ONLINE WEBINAR EVENTS FREE 1-DAY LOCAL TRAINING EVENTS VOLUNTEERING OPPORTUNITIES

More information

OS-caused Long JVM Pauses - Deep Dive and Solutions

OS-caused Long JVM Pauses - Deep Dive and Solutions OS-caused Long JVM Pauses - Deep Dive and Solutions Zhenyun Zhuang LinkedIn Corp., Mountain View, California, USA https://www.linkedin.com/in/zhenyun Zhenyun@gmail.com 2016-4-21 Outline q Introduction

More information

ECE 550D Fundamentals of Computer Systems and Engineering. Fall 2017

ECE 550D Fundamentals of Computer Systems and Engineering. Fall 2017 ECE 550D Fundamentals of Computer Systems and Engineering Fall 2017 The Operating System (OS) Prof. John Board Duke University Slides are derived from work by Profs. Tyler Bletsch and Andrew Hilton (Duke)

More information

Questions answered in this lecture: CS 537 Lecture 19 Threads and Cooperation. What s in a process? Organizing a Process

Questions answered in this lecture: CS 537 Lecture 19 Threads and Cooperation. What s in a process? Organizing a Process Questions answered in this lecture: CS 537 Lecture 19 Threads and Cooperation Why are threads useful? How does one use POSIX pthreads? Michael Swift 1 2 What s in a process? Organizing a Process A process

More information

Performance Monitoring AlwaysOn Availability Groups. Anthony E. Nocentino

Performance Monitoring AlwaysOn Availability Groups. Anthony E. Nocentino Performance Monitoring AlwaysOn Availability Groups Anthony E. Nocentino aen@centinosystems.com Anthony E. Nocentino Consultant and Trainer Founder and President of Centino Systems Specialize in system

More information

Performance Monitoring AlwaysOn Availability Groups. Anthony E. Nocentino

Performance Monitoring AlwaysOn Availability Groups. Anthony E. Nocentino Performance Monitoring AlwaysOn Availability Groups Anthony E. Nocentino aen@centinosystems.com Anthony E. Nocentino Consultant and Trainer Founder and President of Centino Systems Specialize in system

More information

Performance Monitoring Always On Availability Groups. Anthony E. Nocentino

Performance Monitoring Always On Availability Groups. Anthony E. Nocentino Performance Monitoring Always On Availability Groups Anthony E. Nocentino aen@centinosystems.com Anthony E. Nocentino Consultant and Trainer Founder and President of Centino Systems Specialize in system

More information

Performance Monitoring AlwaysOn Availability Groups. Anthony E. Nocentino

Performance Monitoring AlwaysOn Availability Groups. Anthony E. Nocentino Performance Monitoring AlwaysOn Availability Groups Anthony E. Nocentino aen@centinosystems.com TUGA IT 2017 LISBON, PORTUGAL THANK YOU TO OUR SPONSORS Anthony E. Nocentino Consultant and Trainer Founder

More information

CSI3131 Final Exam Review

CSI3131 Final Exam Review CSI3131 Final Exam Review Final Exam: When: April 24, 2015 2:00 PM Where: SMD 425 File Systems I/O Hard Drive Virtual Memory Swap Memory Storage and I/O Introduction CSI3131 Topics Process Computing Systems

More information

Performance Monitoring AlwaysOn Availability Groups. Anthony E. Nocentino

Performance Monitoring AlwaysOn Availability Groups. Anthony E. Nocentino Performance Monitoring AlwaysOn Availability Groups Anthony E. Nocentino aen@centinosystems.com Anthony E. Nocentino Consultant and Trainer Founder and President of Centino Systems Specialize in system

More information

Chapter 4: Threads. Operating System Concepts. Silberschatz, Galvin and Gagne

Chapter 4: Threads. Operating System Concepts. Silberschatz, Galvin and Gagne Chapter 4: Threads Silberschatz, Galvin and Gagne Chapter 4: Threads Overview Multithreading Models Thread Libraries Threading Issues Operating System Examples Linux Threads 4.2 Silberschatz, Galvin and

More information

CS5460: Operating Systems

CS5460: Operating Systems CS5460: Operating Systems Lecture 5: Processes and Threads (Chapters 3-4) Context Switch Results lab2-15 gamow home 3.8 us 1.6 us 1.0 us VirtualBox on lab2-25 VirtualBox on gamow VirtualBox on home 170

More information

Threads. Raju Pandey Department of Computer Sciences University of California, Davis Spring 2011

Threads. Raju Pandey Department of Computer Sciences University of California, Davis Spring 2011 Threads Raju Pandey Department of Computer Sciences University of California, Davis Spring 2011 Threads Effectiveness of parallel computing depends on the performance of the primitives used to express

More information

I/O Systems. Jo, Heeseung

I/O Systems. Jo, Heeseung I/O Systems Jo, Heeseung Today's Topics Device characteristics Block device vs. Character device Direct I/O vs. Memory-mapped I/O Polling vs. Interrupts Programmed I/O vs. DMA Blocking vs. Non-blocking

More information

Basics of Database Corruption Repair

Basics of Database Corruption Repair Basics of Database Corruption Repair When Corruption Strikes, will you be ready? Steve Stedman, Managing Technology Partner, SQL Data Partners 2 Please silence cell phones Explore everything PASS has to

More information

Today s class. Operating System Machine Level. Informationsteknologi. Friday, November 16, 2007 Computer Architecture I - Class 12 1

Today s class. Operating System Machine Level. Informationsteknologi. Friday, November 16, 2007 Computer Architecture I - Class 12 1 Today s class Operating System Machine Level Friday, November 16, 2007 Computer Architecture I - Class 12 1 Operating System Machine Friday, November 16, 2007 Computer Architecture I - Class 12 2 Paging

More information

The Care and Feeding of a MySQL Database for Linux Adminstrators. Dave Stokes MySQL Community Manager

The Care and Feeding of a MySQL Database for Linux Adminstrators. Dave Stokes MySQL Community Manager The Care and Feeding of a MySQL Database for Linux Adminstrators Dave Stokes MySQL Community Manager David.Stokes@Oracle.com Simple Introduction This is a general introduction to running a MySQL database

More information

Recall: Address Space Map. 13: Memory Management. Let s be reasonable. Processes Address Space. Send it to disk. Freeing up System Memory

Recall: Address Space Map. 13: Memory Management. Let s be reasonable. Processes Address Space. Send it to disk. Freeing up System Memory Recall: Address Space Map 13: Memory Management Biggest Virtual Address Stack (Space for local variables etc. For each nested procedure call) Sometimes Reserved for OS Stack Pointer Last Modified: 6/21/2004

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

CPU Scheduling. Operating Systems (Fall/Winter 2018) Yajin Zhou ( Zhejiang University

CPU Scheduling. Operating Systems (Fall/Winter 2018) Yajin Zhou (  Zhejiang University Operating Systems (Fall/Winter 2018) CPU Scheduling Yajin Zhou (http://yajin.org) Zhejiang University Acknowledgement: some pages are based on the slides from Zhi Wang(fsu). Review Motivation to use threads

More information

CS 333 Introduction to Operating Systems. Class 3 Threads & Concurrency. Jonathan Walpole Computer Science Portland State University

CS 333 Introduction to Operating Systems. Class 3 Threads & Concurrency. Jonathan Walpole Computer Science Portland State University CS 333 Introduction to Operating Systems Class 3 Threads & Concurrency Jonathan Walpole Computer Science Portland State University 1 The Process Concept 2 The Process Concept Process a program in execution

More information

PM Support in Linux and Windows. Dr. Stephen Bates, CTO, Eideticom Neal Christiansen, Principal Development Lead, Microsoft

PM Support in Linux and Windows. Dr. Stephen Bates, CTO, Eideticom Neal Christiansen, Principal Development Lead, Microsoft PM Support in Linux and Windows Dr. Stephen Bates, CTO, Eideticom Neal Christiansen, Principal Development Lead, Microsoft Windows Support for Persistent Memory 2 Availability of Windows PM Support Client

More information

What s Wrong with the Operating System Interface? Collin Lee and John Ousterhout

What s Wrong with the Operating System Interface? Collin Lee and John Ousterhout What s Wrong with the Operating System Interface? Collin Lee and John Ousterhout Goals for the OS Interface More convenient abstractions than hardware interface Manage shared resources Provide near-hardware

More information

Agenda Process Concept Process Scheduling Operations on Processes Interprocess Communication 3.2

Agenda Process Concept Process Scheduling Operations on Processes Interprocess Communication 3.2 Lecture 3: Processes Agenda Process Concept Process Scheduling Operations on Processes Interprocess Communication 3.2 Process in General 3.3 Process Concept Process is an active program in execution; process

More information

2 nd Half. Memory management Disk management Network and Security Virtual machine

2 nd Half. Memory management Disk management Network and Security Virtual machine Final Review 1 2 nd Half Memory management Disk management Network and Security Virtual machine 2 Abstraction Virtual Memory (VM) 4GB (32bit) linear address space for each process Reality 1GB of actual

More information

Motivation. Threads. Multithreaded Server Architecture. Thread of execution. Chapter 4

Motivation. Threads. Multithreaded Server Architecture. Thread of execution. Chapter 4 Motivation Threads Chapter 4 Most modern applications are multithreaded Threads run within application Multiple tasks with the application can be implemented by separate Update display Fetch data Spell

More information

CS 333 Introduction to Operating Systems. Class 3 Threads & Concurrency. Jonathan Walpole Computer Science Portland State University

CS 333 Introduction to Operating Systems. Class 3 Threads & Concurrency. Jonathan Walpole Computer Science Portland State University CS 333 Introduction to Operating Systems Class 3 Threads & Concurrency Jonathan Walpole Computer Science Portland State University 1 Process creation in UNIX All processes have a unique process id getpid(),

More information

Processes and Threads

Processes and Threads COS 318: Operating Systems Processes and Threads Kai Li and Andy Bavier Computer Science Department Princeton University http://www.cs.princeton.edu/courses/archive/fall13/cos318 Today s Topics u Concurrency

More information

DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING UNIT I

DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING UNIT I DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING Year and Semester : II / IV Subject Code : CS6401 Subject Name : Operating System Degree and Branch : B.E CSE UNIT I 1. Define system process 2. What is an

More information

Staying Out of the Swamp

Staying Out of the Swamp Staying Out of the Swamp Perforce User Conference 2001 Richard E. Baum Introduction Perforce runs well when given proper resources. CPU requirements are quite small. A server s I/O bandwidth is generally

More information

Design Overview of the FreeBSD Kernel CIS 657

Design Overview of the FreeBSD Kernel CIS 657 Design Overview of the FreeBSD Kernel CIS 657 Organization of the Kernel Machine-independent 86% of the kernel (80% in 4.4BSD) C code Machine-dependent 14% of kernel Only 0.6% of kernel in assembler (2%

More information

Community Enterprise Operating System (CentOS 7) Courses

Community Enterprise Operating System (CentOS 7) Courses Community Enterprise Operating System (CentOS 7) Courses CentOS 7 Administration I Core Skills (5 days) Advanced Linux Shell Scripting Shell Scripting (bash,ksh93) and awk Programming (3 days) Advanced

More information

Design Overview of the FreeBSD Kernel. Organization of the Kernel. What Code is Machine Independent?

Design Overview of the FreeBSD Kernel. Organization of the Kernel. What Code is Machine Independent? Design Overview of the FreeBSD Kernel CIS 657 Organization of the Kernel Machine-independent 86% of the kernel (80% in 4.4BSD) C C code Machine-dependent 14% of kernel Only 0.6% of kernel in assembler

More information

Linux Performance Tuning

Linux Performance Tuning Page 1 of 5 close window Print Linux Performance Tuning Getting the most from your Linux investment February March 2007 by Jaqui Lynch This is the first article in a two-part series. The second installment

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

I/O Systems. Jinkyu Jeong Computer Systems Laboratory Sungkyunkwan University

I/O Systems. Jinkyu Jeong Computer Systems Laboratory Sungkyunkwan University I/O Systems Jinkyu Jeong (jinkyu@skku.edu) Computer Systems Laboratory Sungkyunkwan University http://csl.skku.edu Today s Topics Device characteristics Block device vs. Character device Direct I/O vs.

More information

Operating System. Chapter 4. Threads. Lynn Choi School of Electrical Engineering

Operating System. Chapter 4. Threads. Lynn Choi School of Electrical Engineering Operating System Chapter 4. Threads Lynn Choi School of Electrical Engineering Process Characteristics Resource ownership Includes a virtual address space (process image) Ownership of resources including

More information

CSE 4/521 Introduction to Operating Systems. Lecture 29 Windows 7 (History, Design Principles, System Components, Programmer Interface) Summer 2018

CSE 4/521 Introduction to Operating Systems. Lecture 29 Windows 7 (History, Design Principles, System Components, Programmer Interface) Summer 2018 CSE 4/521 Introduction to Operating Systems Lecture 29 Windows 7 (History, Design Principles, System Components, Programmer Interface) Summer 2018 Overview Objective: To explore the principles upon which

More information

Manohar Punna. Azure Database Migration Choosing the Right Tier

Manohar Punna. Azure Database Migration Choosing the Right Tier Manohar Punna Azure Database Migration Choosing the Right Tier Thank you to our sponsors: Evaluations: Please complete the evaluation forms for each session you attend. You received these in your welcome

More information

Process Description and Control

Process Description and Control Process Description and Control 1 Process:the concept Process = a program in execution Example processes: OS kernel OS shell Program executing after compilation www-browser Process management by OS : Allocate

More information

Chapter 4: Threads. Operating System Concepts 9 th Edit9on

Chapter 4: Threads. Operating System Concepts 9 th Edit9on Chapter 4: Threads Operating System Concepts 9 th Edit9on Silberschatz, Galvin and Gagne 2013 Chapter 4: Threads 1. Overview 2. Multicore Programming 3. Multithreading Models 4. Thread Libraries 5. Implicit

More information

PROCESS MANAGEMENT. Operating Systems 2015 Spring by Euiseong Seo

PROCESS MANAGEMENT. Operating Systems 2015 Spring by Euiseong Seo PROCESS MANAGEMENT Operating Systems 2015 Spring by Euiseong Seo Today s Topics Process Concept Process Scheduling Operations on Processes Interprocess Communication Examples of IPC Systems Communication

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

OS lpr. www. nfsd gcc emacs ls 1/27/09. Process Management. CS 537 Lecture 3: Processes. Example OS in operation. Why Processes? Simplicity + Speed

OS lpr. www. nfsd gcc emacs ls 1/27/09. Process Management. CS 537 Lecture 3: Processes. Example OS in operation. Why Processes? Simplicity + Speed Process Management CS 537 Lecture 3: Processes Michael Swift This lecture begins a series of topics on processes, threads, and synchronization Today: processes and process management what are the OS units

More information

CS 471 Operating Systems. Yue Cheng. George Mason University Fall 2017

CS 471 Operating Systems. Yue Cheng. George Mason University Fall 2017 CS 471 Operating Systems Yue Cheng George Mason University Fall 2017 Outline o Process concept o Process creation o Process states and scheduling o Preemption and context switch o Inter-process communication

More information

Red Hat Enterprise 7 Beta File Systems

Red Hat Enterprise 7 Beta File Systems Red Hat Enterprise 7 Beta File Systems New Scale, Speed & Features Ric Wheeler Director Red Hat Kernel File & Storage Team Red Hat Storage Engineering Agenda Red Hat Enterprise Linux 7 Storage Features

More information

Notes. CS 537 Lecture 5 Threads and Cooperation. Questions answered in this lecture: What s in a process?

Notes. CS 537 Lecture 5 Threads and Cooperation. Questions answered in this lecture: What s in a process? Notes CS 537 Lecture 5 Threads and Cooperation Michael Swift OS news MS lost antitrust in EU: harder to integrate features Quiz tomorrow on material from chapters 2 and 3 in the book Hardware support for

More information

ECE 598 Advanced Operating Systems Lecture 14

ECE 598 Advanced Operating Systems Lecture 14 ECE 598 Advanced Operating Systems Lecture 14 Vince Weaver http://web.eece.maine.edu/~vweaver vincent.weaver@maine.edu 22 March 2018 HW#6 was due. Announcements HW#7 will be posted eventually. Project

More information

Chapter 10: Case Studies. So what happens in a real operating system?

Chapter 10: Case Studies. So what happens in a real operating system? Chapter 10: Case Studies So what happens in a real operating system? Operating systems in the real world Studied mechanisms used by operating systems Processes & scheduling Memory management File systems

More information

e-ale-rt-apps Building Real-Time Applications for Linux Version c CC-BY SA4

e-ale-rt-apps Building Real-Time Applications for Linux Version c CC-BY SA4 e-ale-rt-apps Building Real-Time Applications for Linux Version 20181023 ii The E-ALE (Embedded Apprentice Linux Engineer) is a series of seminars held at existing conferences covering topics which are

More information

Linux System Administration

Linux System Administration System Processes Objective At the conclusion of this module, the student will be able to: Describe and define a process Identify a process ID, the parent process and the child process Learn the PID for

More information

Chapter 4: Multi-Threaded Programming

Chapter 4: Multi-Threaded Programming Chapter 4: Multi-Threaded Programming Chapter 4: Threads 4.1 Overview 4.2 Multicore Programming 4.3 Multithreading Models 4.4 Thread Libraries Pthreads Win32 Threads Java Threads 4.5 Implicit Threading

More information

HPMMAP: Lightweight Memory Management for Commodity Operating Systems. University of Pittsburgh

HPMMAP: Lightweight Memory Management for Commodity Operating Systems. University of Pittsburgh HPMMAP: Lightweight Memory Management for Commodity Operating Systems Brian Kocoloski Jack Lange University of Pittsburgh Lightweight Experience in a Consolidated Environment HPC applications need lightweight

More information

Noorul Islam College Of Engineering, Kumaracoil MCA Degree Model Examination (October 2007) 5 th Semester MC1642 UNIX Internals 2 mark Questions

Noorul Islam College Of Engineering, Kumaracoil MCA Degree Model Examination (October 2007) 5 th Semester MC1642 UNIX Internals 2 mark Questions Noorul Islam College Of Engineering, Kumaracoil MCA Degree Model Examination (October 2007) 5 th Semester MC1642 UNIX Internals 2 mark Questions 1. What are the different parts of UNIX system? i. Programs

More information

ò Paper reading assigned for next Tuesday ò Understand low-level building blocks of a scheduler User Kernel ò Understand competing policy goals

ò Paper reading assigned for next Tuesday ò Understand low-level building blocks of a scheduler User Kernel ò Understand competing policy goals Housekeeping Paper reading assigned for next Tuesday Scheduling Don Porter CSE 506 Memory Management Logical Diagram Binary Memory Formats Allocators Threads Today s Lecture Switching System to CPU Calls

More information

Windows Persistent Memory Support

Windows Persistent Memory Support Windows Persistent Memory Support Neal Christiansen Microsoft Agenda Review: Existing Windows PM Support What s New New PM APIs Large & Huge Page Support Dax aware Write-ahead LOG Improved Driver Model

More information

SMD149 - Operating Systems

SMD149 - Operating Systems SMD149 - Operating Systems Roland Parviainen November 3, 2005 1 / 45 Outline Overview 2 / 45 Process (tasks) are necessary for concurrency Instance of a program in execution Next invocation of the program

More information

Processes. Operating System CS 217. Supports virtual machines. Provides services: User Process. User Process. OS Kernel. Hardware

Processes. Operating System CS 217. Supports virtual machines. Provides services: User Process. User Process. OS Kernel. Hardware es CS 217 Operating System Supports virtual machines Promises each process the illusion of having whole machine to itself Provides services: Protection Scheduling Memory management File systems Synchronization

More information

Getting to know you. Anatomy of a Process. Processes. Of Programs and Processes

Getting to know you. Anatomy of a Process. Processes. Of Programs and Processes Getting to know you Processes A process is an abstraction that supports running programs A sequential stream of execution in its own address space A process is NOT the same as a program! So, two parts

More information

Readings and References. Virtual Memory. Virtual Memory. Virtual Memory VPN. Reading. CSE Computer Systems December 5, 2001.

Readings and References. Virtual Memory. Virtual Memory. Virtual Memory VPN. Reading. CSE Computer Systems December 5, 2001. Readings and References Virtual Memory Reading Chapter through.., Operating System Concepts, Silberschatz, Galvin, and Gagne CSE - Computer Systems December, Other References Chapter, Inside Microsoft

More information

CS 333 Introduction to Operating Systems. Class 2 OS-Related Hardware & Software The Process Concept

CS 333 Introduction to Operating Systems. Class 2 OS-Related Hardware & Software The Process Concept CS 333 Introduction to Operating Systems Class 2 OS-Related Hardware & Software The Process Concept Jonathan Walpole Computer Science Portland State University 1 Administrivia CS333 lecture videos are

More information

Conoscere e ottimizzare l'i/o su Linux. Andrea Righi -

Conoscere e ottimizzare l'i/o su Linux. Andrea Righi - Conoscere e ottimizzare l'i/o su Linux Agenda Overview I/O Monitoring I/O Tuning Reliability Q/A Overview File I/O in Linux READ vs WRITE READ synchronous: CPU needs to wait the completion of the READ

More information

CS 450 Operating System Week 4 Lecture Notes

CS 450 Operating System Week 4 Lecture Notes CS 450 Operating System Week 4 Lecture Notes Reading: Operating System Concepts (7 th Edition) - Silberschatz, Galvin, Gagne Chapter 5 - Pages 129 147 Objectives: 1. Explain the main Objective of Threads

More information

Handout 4 Memory Hierarchy

Handout 4 Memory Hierarchy Handout 4 Memory Hierarchy Outline Memory hierarchy Locality Cache design Virtual address spaces Page table layout TLB design options (MMU Sub-system) Conclusion 2012/11/7 2 Since 1980, CPU has outpaced

More information

Update on Windows Persistent Memory Support Neal Christiansen Microsoft

Update on Windows Persistent Memory Support Neal Christiansen Microsoft Update on Windows Persistent Memory Support Neal Christiansen Microsoft 1 Agenda What is Persistent Memory (PM) Review: Existing Windows PM Support What s New New PM APIs Large Page Support Hyper-V Support

More information

Chapter 4: Threads. Chapter 4: Threads

Chapter 4: Threads. Chapter 4: Threads Chapter 4: Threads Silberschatz, Galvin and Gagne 2009 Chapter 4: Threads Overview Multithreading Models Thread Libraries Threading Issues Operating System Examples Windows XP Threads Linux Threads 4.2

More information

What s in a process?

What s in a process? CSE 451: Operating Systems Winter 2015 Module 5 Threads Mark Zbikowski mzbik@cs.washington.edu Allen Center 476 2013 Gribble, Lazowska, Levy, Zahorjan What s in a process? A process consists of (at least):

More information

To Everyone... iii To Educators... v To Students... vi Acknowledgments... vii Final Words... ix References... x. 1 ADialogueontheBook 1

To Everyone... iii To Educators... v To Students... vi Acknowledgments... vii Final Words... ix References... x. 1 ADialogueontheBook 1 Contents To Everyone.............................. iii To Educators.............................. v To Students............................... vi Acknowledgments........................... vii Final Words..............................

More information

Processes. CS439: Principles of Computer Systems January 24, 2018

Processes. CS439: Principles of Computer Systems January 24, 2018 Processes CS439: Principles of Computer Systems January 24, 2018 Last Time History Lesson Hardware expensive, humans cheap Hardware cheap, humans expensive Hardware very cheap, humans very expensive Dual-mode

More information

CS2506 Quick Revision

CS2506 Quick Revision CS2506 Quick Revision OS Structure / Layer Kernel Structure Enter Kernel / Trap Instruction Classification of OS Process Definition Process Context Operations Process Management Child Process Thread Process

More information

Operating Systems 2 nd semester 2016/2017. Chapter 4: Threads

Operating Systems 2 nd semester 2016/2017. Chapter 4: Threads Operating Systems 2 nd semester 2016/2017 Chapter 4: Threads Mohamed B. Abubaker Palestine Technical College Deir El-Balah Note: Adapted from the resources of textbox Operating System Concepts, 9 th edition

More information

Monitoring & Tuning Azure SQL Database

Monitoring & Tuning Azure SQL Database Monitoring & Tuning Azure SQL Database Dustin Ryan, Data Platform Solution Architect, Microsoft Moderated By: Paresh Motiwala Presenting Sponsors Thank You to Our Presenting Sponsors Empower users with

More information

CS 471 Operating Systems. Yue Cheng. George Mason University Fall 2017

CS 471 Operating Systems. Yue Cheng. George Mason University Fall 2017 CS 471 Operating Systems Yue Cheng George Mason University Fall 2017 Introduction o Instructor of Section 002 Dr. Yue Cheng (web: cs.gmu.edu/~yuecheng) Email: yuecheng@gmu.edu Office: 5324 Engineering

More information

Processes. Jin-Soo Kim Computer Systems Laboratory Sungkyunkwan University

Processes. Jin-Soo Kim Computer Systems Laboratory Sungkyunkwan University Processes Jin-Soo Kim (jinsookim@skku.edu) Computer Systems Laboratory Sungkyunkwan University http://csl.skku.edu OS Internals User space shell ls trap shell ps Kernel space File System Management I/O

More information

ECE 598 Advanced Operating Systems Lecture 22

ECE 598 Advanced Operating Systems Lecture 22 ECE 598 Advanced Operating Systems Lecture 22 Vince Weaver http://web.eece.maine.edu/~vweaver vincent.weaver@maine.edu 19 April 2016 Announcements Project update HW#9 posted, a bit late Midterm next Thursday

More information

Lecture 13. Shared memory: Architecture and programming

Lecture 13. Shared memory: Architecture and programming Lecture 13 Shared memory: Architecture and programming Announcements Special guest lecture on Parallel Programming Language Uniform Parallel C Thursday 11/2, 2:00 to 3:20 PM EBU3B 1202 See www.cse.ucsd.edu/classes/fa06/cse260/lectures/lec13

More information

Capriccio : Scalable Threads for Internet Services

Capriccio : Scalable Threads for Internet Services Capriccio : Scalable Threads for Internet Services - Ron von Behren &et al - University of California, Berkeley. Presented By: Rajesh Subbiah Background Each incoming request is dispatched to a separate

More information

CSE Opera+ng System Principles

CSE Opera+ng System Principles CSE 30341 Opera+ng System Principles Lecture 2 Introduc5on Con5nued Recap Last Lecture What is an opera+ng system & kernel? What is an interrupt? CSE 30341 Opera+ng System Principles 2 1 OS - Kernel CSE

More information

Process States. Controlling processes. Process states. PID and PPID UID and EUID GID and EGID Niceness Control terminal. Runnable. Sleeping.

Process States. Controlling processes. Process states. PID and PPID UID and EUID GID and EGID Niceness Control terminal. Runnable. Sleeping. Controlling processes PID and PPID UID and EUID GID and EGID Niceness Control terminal 1 Process States Process states Runnable The process can be executed Waiting for CPU Sleeping The process is waiting

More information

Last class: Today: Thread Background. Thread Systems

Last class: Today: Thread Background. Thread Systems 1 Last class: Thread Background Today: Thread Systems 2 Threading Systems 3 What kind of problems would you solve with threads? Imagine you are building a web server You could allocate a pool of threads,

More information

Distributed Systems Operation System Support

Distributed Systems Operation System Support Hajussüsteemid MTAT.08.009 Distributed Systems Operation System Support slides are adopted from: lecture: Operating System(OS) support (years 2016, 2017) book: Distributed Systems: Concepts and Design,

More information

Threads. Computer Systems. 5/12/2009 cse threads Perkins, DW Johnson and University of Washington 1

Threads. Computer Systems.   5/12/2009 cse threads Perkins, DW Johnson and University of Washington 1 Threads CSE 410, Spring 2009 Computer Systems http://www.cs.washington.edu/410 5/12/2009 cse410-20-threads 2006-09 Perkins, DW Johnson and University of Washington 1 Reading and References Reading» Read

More information

Filesystem Performance on FreeBSD

Filesystem Performance on FreeBSD Filesystem Performance on FreeBSD Kris Kennaway kris@freebsd.org BSDCan 2006, Ottawa, May 12 Introduction Filesystem performance has many aspects No single metric for quantifying it I will focus on aspects

More information

CS2028 -UNIX INTERNALS

CS2028 -UNIX INTERNALS DHANALAKSHMI SRINIVASAN INSTITUTE OF RESEARCH AND TECHNOLOGY,SIRUVACHUR-621113. CS2028 -UNIX INTERNALS PART B UNIT 1 1. Explain briefly details about History of UNIX operating system? In 1965, Bell Telephone

More information

QUESTION BANK UNIT I

QUESTION BANK UNIT I QUESTION BANK Subject Name: Operating Systems UNIT I 1) Differentiate between tightly coupled systems and loosely coupled systems. 2) Define OS 3) What are the differences between Batch OS and Multiprogramming?

More information

Lecture Topics. Announcements. Today: Threads (Stallings, chapter , 4.6) Next: Concurrency (Stallings, chapter , 5.

Lecture Topics. Announcements. Today: Threads (Stallings, chapter , 4.6) Next: Concurrency (Stallings, chapter , 5. Lecture Topics Today: Threads (Stallings, chapter 4.1-4.3, 4.6) Next: Concurrency (Stallings, chapter 5.1-5.4, 5.7) 1 Announcements Make tutorial Self-Study Exercise #4 Project #2 (due 9/20) Project #3

More information

CS162 Operating Systems and Systems Programming Lecture 12. Address Translation. Page 1

CS162 Operating Systems and Systems Programming Lecture 12. Address Translation. Page 1 CS162 Operating Systems and Systems Programming Lecture 12 Translation March 10, 2008 Prof. Anthony D. Joseph http://inst.eecs.berkeley.edu/~cs162 Review: Important Aspects of Memory Multiplexing Controlled

More information

Process Concepts. CSC400 - Operating Systems. 3. Process Concepts. J. Sumey

Process Concepts. CSC400 - Operating Systems. 3. Process Concepts. J. Sumey CSC400 - Operating Systems 3. Process Concepts J. Sumey Overview Concurrency Processes & Process States Process Accounting Interrupts & Interrupt Processing Interprocess Communication CSC400 - Process

More information

Exam Guide COMPSCI 386

Exam Guide COMPSCI 386 FOUNDATIONS We discussed in broad terms the three primary responsibilities of an operating system. Describe each. What is a process? What is a thread? What parts of a process are shared by threads? What

More information

FINE-GRAINED SYNCHRONIZATION. Operating Systems Engineering. Sleep & Wakeup [chapter #5] 15-Jun-14. in the previous lecture.

FINE-GRAINED SYNCHRONIZATION. Operating Systems Engineering. Sleep & Wakeup [chapter #5] 15-Jun-14. in the previous lecture. Operating Systems Engineering Sleep & Wakeup [chapter #5] By Dan Tsafrir, 2014-04-02 1 in the previous lecture. When critical section is very short FINE-GRAINED SYNCHRONIZATION 2 1 in this lecture. When

More information

Practical Considerations for Multi- Level Schedulers. Benjamin

Practical Considerations for Multi- Level Schedulers. Benjamin Practical Considerations for Multi- Level Schedulers Benjamin Hindman @benh agenda 1 multi- level scheduling (scheduler activations) 2 intra- process multi- level scheduling (Lithe) 3 distributed multi-

More information

Chapter 4: Threads. Chapter 4: Threads

Chapter 4: Threads. Chapter 4: Threads Chapter 4: Threads Silberschatz, Galvin and Gagne 2013 Chapter 4: Threads Overview Multicore Programming Multithreading Models Thread Libraries Implicit Threading Threading Issues Operating System Examples

More information