Linux internals: Understanding through Analogies Dr. Jeyakesavan Veerasamy Senior Lecturer University of Texas at Dallas

Slides:



Advertisements
Similar presentations
Analysis of Algorithms: time & space Dr. Jeyakesavan Veerasamy The University of Texas at Dallas, USA.
Advertisements

Operating System.
1 Threads CSCE 351: Operating System Kernels Witawas Srisa-an Chapter 4-5.
Chapter 2: Processes Topics –Processes –Threads –Process Scheduling –Inter Process Communication (IPC) Reference: Operating Systems Design and Implementation.
CSE 451: Operating Systems Winter 2009 Module 4 Processes Mark Zbikowski Gary Kimura.
Review for Test 2 i206 Fall 2010 John Chuang. 2 Topics  Operating System and Memory Hierarchy  Algorithm analysis and Big-O Notation  Data structures.
Threads CSCI 444/544 Operating Systems Fall 2008.
CS533 Concepts of Operating Systems Class 7 Integrated Task and Stack Management.
CS533 Concepts of Operating Systems Class 3 Integrated Task and Stack Management.
Real-Time Operating Systems Suzanne Rivoire November 20, 2002
CSE 451: Operating Systems Winter 2012 Processes Mark Zbikowski Gary Kimura.
CS 3305 Course Overview. Introduction r Instructor: Dr Hanan Lutfiyya r Office: MC 355 r hanan at csd dot uwo ca r Office Hours: m Drop-by m Appointment.
1 Process States (1) Possible process states –running –blocked –ready Transitions between states shown.
Advanced Operating Systems CIS 720 Lecture 1. Instructor Dr. Gurdip Singh – 234 Nichols Hall –
Chapter 2 (PART 1) Light-Weight Process (Threads) Department of Computer Science Southern Illinois University Edwardsville Summer, 2004 Dr. Hiroshi Fujinoki.
Quick overview of threads in Java Babak Esfandiari (extracted from Qusay Mahmoud’s slides)
Concurrent Programming. Concurrency  Concurrency means for a program to have multiple paths of execution running at (almost) the same time. Examples:
Process by Dr. Amin Danial Asham. References Operating System Concepts ABRAHAM SILBERSCHATZ, PETER BAER GALVIN, and GREG GAGNE.
30 October Agenda for Today Introduction and purpose of the course Introduction and purpose of the course Organization of a computer system Organization.
Scheduling Lecture 6. What is Scheduling? An O/S often has many pending tasks. –Threads, async callbacks, device input. The order may matter. –Policy,
Copyright ©: University of Illinois CS 241 Staff1 Threads Systems Concepts.
LINUX System : Lecture 7 Bong-Soo Sohn Lecture notes acknowledgement : The design of UNIX Operating System.
OPERATING SYSTEM SUPPORT DISTRIBUTED SYSTEMS CHAPTER 6 Lawrence Heyman July 8, 2002.
Threaded Programming in Python Adapted from Fundamentals of Python: From First Programs Through Data Structures CPE 401 / 601 Computer Network Systems.
C o n f i d e n t i a l 1 Course: BCA Semester: III Subject Code : BC 0042 Subject Name: Operating Systems Unit number : 1 Unit Title: Overview of Operating.
Concurrency Control 1 Fall 2014 CS7020: Game Design and Development.
Overview of Operating Systems Introduction to Operating Systems: Module 0.
Group no.2 Presented to : Eng.Ahmed Hassan Sunday, March 04,2012.
Department of Computer Science and Software Engineering
Good afternoon!. Recursive Algorithms Dr. Jeyakesavan Veerasamy
CS533 Concepts of Operating Systems Jonathan Walpole.
Processes. Process Concept Process Scheduling Operations on Processes Interprocess Communication Communication in Client-Server Systems.
Lecture 20 Threads Richard Gesick. Threads Makes use of multiple processors/cores if available Share memory within the program (as opposed to processes.
1/31/20161 Final Exam Dec 10. Monday. 4-7pm. Phelp 1160 Similar to midterm The exam is closed book. You can bring 2 page of notes (double sided) Nachos.
What is an Operating System? Various systems and their pros and cons –E.g. multi-tasking vs. Batch OS definitions –Resource allocator –Control program.
Operating Systems CMPSC 473 Signals, Introduction to mutual exclusion September 28, Lecture 9 Instructor: Bhuvan Urgaonkar.
Embedded Real-Time Systems Processing interrupts Lecturer Department University.
Comparison on Size FreeRTOS RTLinux Kernel Size Kernel Size
CSE321: OPERATING SYSTEMS LECTURE 0 NARZU TARANNUM(NAT) LECTURER-II DEPT. OF CSE, BRAC UNIVERSITY 66 MOHAKHALI, DHAKA 1212, BANGLADESH.
Big Picture Lab 4 Operating Systems C Andras Moritz
Embedded Real-Time Systems
Lecture 5. Example for periority The average waiting time : = 41/5= 8.2.
Introduction to threads
Homework Assignment #2 J. H. Wang Oct. 25, 2016.
Threaded Programming in Python
Advanced Operating Systems CIS 720
Operating Systems CMPSC 473
Threads and Scheduling
Lecture Topics: 11/1 Processes Process Management
Introduction to Parallelism.
Threads and Locks.
Chapter 4 Multithreading programming
Mid Term review CSC345.
Midterm review: closed book multiple choice chapters 1 to 9
COMS Prelim 1 Review Session
CSE 451: Operating Systems Winter 2011 Processes
CSE 451: Operating Systems Winter 2010 Module 4 Processes
CSSE 340 Operating Systems (First class)
Midterm Review CSE4/521 B.Ramamurthy 1/11/2019 B.Ramamurthy.
Threaded Programming in Python
Operating Systems Lecture 1.
LINUX System : Lecture 7 Lecture notes acknowledgement : The design of UNIX Operating System.
Midterm Review CSE4/521 B.Ramamurthy 4/19/2019 B.Ramamurthy.
Midterm Review CSE4/521 B.Ramamurthy 5/5/2019 B.Ramamurthy.
CSE 153 Design of Operating Systems Winter 2019
Operating System Overview
Light-Weight Process (Threads)
Midterm Review CSE4/521 B.Ramamurthy 9/10/2019 B.Ramamurthy.
Chapter 3: Process Management
Threads CSE 2431: Introduction to Operating Systems
Presentation transcript:

Linux internals: Understanding through Analogies Dr. Jeyakesavan Veerasamy Senior Lecturer University of Texas at Dallas

Topics Linux OS Executable Code : Sharing book Processes & Threads : Factory CPU scheduling : limited # of workers! Synchronization using Semaphores : Assembly line Linux Scheduler : “Smack the head” game Shared memory : dual access from 2 rooms Pipes: Pipes! Mailbox: Delivery through “Chute” Q & A

Linux OS: Layered architecture

Executable “code” pages: sharing books?

Executable “code” pages: Notes Every program uses 3 types of memory: heap, stack & code

Processes & Threads : Factory Work proceeds in several rooms in parallel

Processes & Threads : Notes Heap, Stack and Code memory

CPU scheduling : limited # of workers! distribute to all rooms (or) one room at a time? How to allocate within a room?

Fighting in assembly line Simple case: 2 workers in each section Solutions?

Efficiency in assembly line

Counting semaphores : # of items waiting to be processed

Classic producer-consumer problem

Linux Scheduler: “Smack in the head” game? Priority increases as the waiting time goes up CPU is assigned to highest priority task

Linux Scheduler: “Smack in the head” game But what about real-time vs. other tasks?

Shared memory : dual access from 2 rooms

Pipes : Pipes? cut –f5 –d: /etc/passwd | sort | cut –c1 | sort | uniq –c How many tasks? Small is beautiful.

Mailbox: Similar to pipes but packaged transfer

Questions & Answers Thank you!