CS 5523: Operating Systems

Size: px
Start display at page:

Download "CS 5523: Operating Systems"

Transcription

1 Lecture1: OS Overview CS 5523: Operating Systems Instructor: Dr Tongping Liu Midterm Exam: Oct 2, 2017, Monday 7:20pm 8:45pm Operating System: what is it?! Evolution of Computer Systems and OS Concepts Different types/variations of Systems/OS Ø Parallel/distributed/real-time/embedded OS etc OS as a resource manager Ø How does OS provide service? interrupt/system calls OS Structures and basic components Ø Process/memory/IO device managers Basic design approaches Ø Monolithic/layered/microkernel/virtual machine etc CS5523: Operating UTSA 1 CS5523: Operating UTSA 2 Components in Operating System Process/thread Management Ø CPU (processors): most precious resource Memory Management Ø Main memory File Management à data /program Secondary-Storage Management à disk I/O System Management à I/O devices Protection and Security à access management I/O devices 3 OS Interface: APIs and System Calls For application programmers Application programming interface (API) Ø The run-time support system (run-time libraries) provides a system-call interface, that intercepts function calls in the API and invokes the necessary system call within the operating system System calls provide the interface between a running program and the operating system Ø Generally available in routines written in C and C++ Ø Certain low-level tasks may have to be written using assembly language 4 1

2 Types of System Calls Process control" File management" Device management" Information maintenance" Communications" Protection" " Interrupt Mechanisms Save the current process state Interrupt transfers control to the interrupt service routine (ISR) generally through interrupt vector containing the addresses of all the service routines ISR: Separate segments of code determine what action should be taken for each type of interrupt Once the interrupt has been serviced by the ISR, the control is returned to the interrupted program 6 Basic Interrupt Processing 1 The interrupt is issued 2 Processor finishes execution of current instruction 3 Processor signals acknowledgement of interrupt 4 Processor pushes PSW(Program Status Word) and PC to control stack 5 Processor loads new PC value through the interrupt vector 6 ISR saves remainder of the process state information 7 ISR executes 8 ISR restores process state information 7 9 Old PSW and PC values are restored from the control stack Lecture2: Process Management Basic concepts of process Ø Process control block (PCB) and address space Basic operations for process management Ø Process creation/termination States of process: different queues Ø ready, running, or wait etc Ø Context switch: multiple hardware running contexts Scheduling of process: CPU scheduling Ø Basic scheduling algorithms: FIFO, SJF etc Inter process communication Ø shared memory and message CS5523: Operating UTSA 8 2

3 Process vs Program Program: a set of functions Ø a passive entity Ø stored as files on disk Process: a program in execution Ø Dynamic concept: running of a program How do we run a program? What are steps to create a process? Process: Running Context Registers: in addition to general registers Ø Program Counter (PC): contains the memory address of the next instruction to be executed Ø Stack Pointer (SP): points to the top of the current stack in memory The stack contains one frame for each procedure that has been entered but not yet exited Ø Program Status Word (PSW): is an IBM System/360 architecture and successors control register, which performs the function of a Status register and Program counter in other architectures Higher level resources: open files etc Synchronization and communication resource: semaphores and sockets 9 10 Example: PCB in Linux (task_struct) Context Switch Process Management Registers Program Counter Stack Pointers Process State Priority Scheduling Parameters (slice) Process ID Parent process Process group Time when process started CPU time used Memory Management Pointer to text (code) segment Pointer to data segment Pointer to stack segment File Management Root directory Working directory User Id Group Id List of open files When CPU switches to another process, the system must save the state of the old process and load the saved state for the new process via a context switch! Context of a process represented in the PCB" Context-switch time is overhead" Ø 1 ~ 1000 ms" Hardware support" Ø Multiple set of registers" Other performance issues/problems" Ø Cache content: locality is lost" Ø TLB content: may need to flush" 11 3

4 Process Creation An Example: Unix fork( ) Address space" Ø Child duplicate its parent (data, program)" Ø Child has a program loaded into it (exec())" Execution" Ø Parent and children execute concurrently" Ø Parent waits until children terminate" Resource sharing: complicated" Ø Shared open files, but not descriptors" Ø Different page tables" Text pid = 25 Data Stack Process Status < > int cpid = fork( ); if (cpid = = 0) { <child code> exit(0); } <parent code> wait(cpid); File File Resources Resources Text pid = 26 Data Stack Process Status cpid = 26 < > int cpid = fork( ); if (cpid = = 0) { <child code> exit(0); } <parent code> wait(cpid); cpid = 0 UNIX kernel 14 Activities in Processes Bursts of CPU usage alternate with periods of I/O wait CPU-bound: high CPU utilization, interrupts are processed slowly I/O-bound: more time is spending on requesting data than processing it Process 1: CPU bound" Process 2:" I/O bound" Time" CPU bursts" Total CPU usage" I/O waits" Total CPU usage" 15 Classical Scheduling Algorithms FCFS: non-preemptive, based on arrival time Ø Long waiting time, eg long process before SSH console? SJF(shortest job first): preemptive & non-preemptive Ø Optimal in term of waiting time RR (Round-robin): preemptive Ø Processes take turns with fixed time quantum eg, 10ms Priority-based scheduling Ø Real-time systems: earliest deadline first (EDF) Multi-level queue (priority classes) Ø System processes >faculty processes >student processes Multi-level feedback queues: short à long quantum 16 4

5 Inter-Process Communication (IPC) Processes within a system may be independent or cooperating! Cooperating process can affect or be affected by other processes" Reasons for cooperating processes:" Ø Information sharing, eg, sharing a file" Ø Computation speedup, eg, subtasks for parallelism" Ø Modularity & Convenience ( eg, editing, printing in the same time)" Cooperating processes need inter-process communication (IPC)" Ø Shared memory" Ø Pipe and Named Pipe" Ø Message passing" Lecture 3: Memory Management Outline Simple memory management: swap etc Virtual memory and paging Ø Page table and address translation Ø Translation lookaside buffer (TLB) Multi-level page table Page replacement algorithms and modeling Working set of processes " Department of Computer UTSA 18 Motivations for Virtual Memory Use physical DRAM as cache for the disk" Ø Virtual pages of processes can exceed physical memory size" Simplify memory management" Ø Multiple processes resident in main memory" ü Each with its own address space" Ø Only active code and data is actually in memory" Provide protection" Ø One process can t interfere with another" ü Because they operate in different address spaces" Ø User process cannot access privileged information" ü Different sections of address spaces have different permissions" Address Translation Architecture CPU Virtual address page number page offset p d page table 0 1 p-1 p f frame number f d physical address How big the page table is? 0 1 f-1 f f+1 f+2 physical memory 20 5

6 Page Table Size Memory Requirement of Page Tables Modern Systems/Applications Ø 32 bits virtual address Ø System with 1GB physical memory à 30 bits physical address Ø Suppose the size of one page/frame is 4KB (12 bits) Page table size Ø # of virtual pages: = 20 bits à 2 20 PTEs Ø Page table size = PTE size * 2 20 = 4 MB per process à 2 10 frames If there are 128 processes Ø Page tables occupy 128 * 4MB = 512 MB Ø 50% of memory will be used by page tables? How can we get smaller page table?! Only the 1 st level page table and the required 2 nd level page tables need to be in memory Example: a process with working-set size of 32 MB (recall that 1GB memory and 32 bits virtual address) Ø 4KB / page à process has 8KB (8*2 10 ) virtual pages Ø One 2 nd level page table maps 2 10 pages; Ø Number (minimum) of 2 nd level page table needed: 8 Ø Total (minimum) memory for page table: 1 st level page table + 8; in total of 9 page tables à 9 X 4KB = 36 KB Department of Computer UTSA 21 Department of Computer UTSA 22 Page table size 32bit machine, page size 4k, each entry 4 bytes, one level page table (full 4GB linear address) Page table size = 2^20 pages = 2^22 = 4M 32bit machine, page size 4k, each entry 4 bytes, two level page table (two apges:0x , and 0xFFFFF000) Page table size = (2^10 level-0 entries) *4bytes + (2^10 level-1 entries * 4 bytes) * 2 = 12 Kbytes Size of Page/Frame: How Big? Determined by number of bits in offset (12Bità4KB) Smaller pages have advantages Ø Less internal fragmentation Ø Better fit for various data structures, code sections Larger pages are better because Ø Less overhead to keep track of them Ø More efficient to transfer larger pages to and from disk One principle: page table à fit into one frame 32bits machine, 10 bits for each level How can we make the address translation faster? 23 Department of Computer UTSA 24 6

7 Integrating TLB and Cache Translation Lookaside Buffer (TLB)" CPU hit VA PA miss TLB Cache Lookup miss Translation hit data Main Memory Working-Set Model Δ working-set window a fixed number of page references, example: 10,000 instruction" WSS i (working set of Process P i ) = total number of pages referenced in the most recent Δ " Ø if Δ too small, will not encompass entire locality" Ø if Δ too large, will encompass localities" Ø if Δ = will encompass entire program" D = Σ WSS i total demand frames " if D > (available frames) m Thrashing" Thus, if D > m, then suspend one of the processes" Page Replacement Algorithms Summary: Page Replacement Algorithms How to select the victim frame?" Ø You can select any frame, the page replacement will work; but the performance???" Ø Gives the lowest page-fault rate" Evaluate an algorithm by running it on a particular string of memory references (reference string) and compute the number of page faults on that string" "In all our examples, we will have 3 frames and the following reference string" Algorithm FIFO (First-In, First Out) Second chance LRU (Least Recently Used) OPT (Optimal) Comment Might throw out useful pages Big improvement over FIFO Excellent, but hard to implement exactly Not implementable, but useful as a benchmark Department of Computer UTSA 28 7

8 Page Allocation Buddy Allocation Example: Need to allocate 65 contiguous page frames" Ø Look in list of free 128-page-frame blocks " Ø If free block exists, allocate it, else look in next highest order list (here, 256-page-frame blocks)" Ø If first free block is in 256-page-frame list, allocate a 128- page-frame block and put remaining 128-page-frame block in lower order list" Ø If first free block is in 512-page-frame list, allocate a 128- page-frame block and split remaining 384 page frames into 2 blocks of 256 and 128 page frames These blocks are allocated to the corresponding free lists" Question: What is the worst-case internal fragmentation?" 29 Buddy De-Allocation When blocks of page frames are released the kernel tries to merge pairs of buddy blocks of size b into blocks of size 2b" Two blocks are buddies if:" Ø They have equal size b" Ø They are located at contiguous physical addresses" Ø The address of the first page frame in the first block is aligned on a multiple of 2b*2 12 " The process repeats by attempting to merge buddies of size 2b, 4b, 8b etc " Slab Allocator Performs the following functions" Ø Allocate memory" Ø Initialize objects/structures" Ø Use objects/structures" Ø Deconstruct objects/structures" Ø Free memory" /proc/slabinfo gives full information about memory usage on the slab level (see also /usr/bin/slabtop)" 8

9 Types of questions on Midterm1 Question answering: Ø Example: What is a system call? Problem Analysis: Ø Example: drawing the Gantt chart for FIFO scheduler CS5523: Operating UTSA 33 9

Processes. Criteria for Comparing Scheduling Algorithms

Processes. Criteria for Comparing Scheduling Algorithms 1 Processes Scheduling Processes Scheduling Processes Don Porter Portions courtesy Emmett Witchel Each process has state, that includes its text and data, procedure call stack, etc. This state resides

More information

Cyber-Physical Systems Scheduling

Cyber-Physical Systems Scheduling Cyber-Physical Systems Scheduling ICEN 553/453 Fall 2018 Prof. Dola Saha 1 Quick Recap 1. What characterizes the memory architecture of a system? 2. What are the issues with heaps in embedded/real-time

More information

File Systems: Fundamentals

File Systems: Fundamentals File Systems: Fundamentals 1 Files What is a file? Ø A named collection of related information recorded on secondary storage (e.g., disks) File attributes Ø Name, type, location, size, protection, creator,

More information

Final Review. Chenyang Lu. CSE 467S Embedded Compu5ng Systems

Final Review. Chenyang Lu. CSE 467S Embedded Compu5ng Systems Final Review Chenyang Lu CSE 467S Embedded Compu5ng Systems OS: Basic Func2ons Ø OS controls resources: q who gets the CPU; q when I/O takes place; q how much memory is allocated; q power management. Ø

More information

Operating Systems. Chenyang Lu

Operating Systems. Chenyang Lu Operating Systems Chenyang Lu Example: Linux Ø A Brief History: https://youtu.be/aurdhyl7bta Chenyang Lu 2 Android Source: h*p:// en.wikipedia.org/wiki/ File:Android-System- Architecture.svg Chenyang Lu

More information

CS 2461: Computer Architecture I

CS 2461: Computer Architecture I The von Neumann Model : Computer Architecture I Instructor: Prof. Bhagi Narahari Dept. of Computer Science Course URL: www.seas.gwu.edu/~bhagiweb/cs2461/ Memory MAR MDR Processing Unit Input ALU TEMP Output

More information

Virtual Memory and Address Translation

Virtual Memory and Address Translation Virtual Memry and Address Translatin Review! Prgram addresses are virtual addresses. Ø Relative ffset f prgram regins can nt change during prgram executin. E.g., heap can nt mve further frm cde. Ø Virtual

More information

CS 5523 Operating Systems: Synchronization in Distributed Systems

CS 5523 Operating Systems: Synchronization in Distributed Systems CS 5523 Operating Systems: Synchronization in Distributed Systems Instructor: Dr. Tongping Liu Thank Dr. Dakai Zhu and Dr. Palden Lama for providing their slides. Outline Physical clock/time in distributed

More information

Real-Time Scheduling Single Processor. Chenyang Lu

Real-Time Scheduling Single Processor. Chenyang Lu Real-Time Scheduling Single Processor Chenyang Lu Critiques Ø 1/2 page critiques of research papers. q Back-of-envelop comments - NOT whole essays. q Guidelines: http://www.cs.wustl.edu/%7elu/cse521s/critique.html

More information

A Micro-Benchmark Evaluation of Catamount and Cray Linux Environment (CLE) Performance

A Micro-Benchmark Evaluation of Catamount and Cray Linux Environment (CLE) Performance A Micro-Benchmark Evaluation of Catamount and Cray Linux Environment (CLE) Performance Jeff Larkin Cray Inc. Jeff Kuehn ORNL Does CLE waddle like a penguin, or run like

More information

Real-Time CORBA. Chenyang Lu CSE 520S

Real-Time CORBA. Chenyang Lu CSE 520S Real-Time CORBA Chenyang Lu CSE 520S CORBA Common Object Request Broker Architecture Ø CORBA specifications q OMG is the standards body q Over 800 companies q CORBA defines interfaces, not implementations

More information

Last Time. Bit banged SPI I2C LIN Ethernet. u Embedded networks. Ø Characteristics Ø Requirements Ø Simple embedded LANs

Last Time. Bit banged SPI I2C LIN Ethernet. u Embedded networks. Ø Characteristics Ø Requirements Ø Simple embedded LANs Last Time u Embedded networks Ø Characteristics Ø Requirements Ø Simple embedded LANs Bit banged SPI I2C LIN Ethernet Today u CAN Bus Ø Intro Ø Low-level stuff Ø Frame types Ø Arbitration Ø Filtering Ø

More information

CS 5523 Operating Systems: Intro to Distributed Systems

CS 5523 Operating Systems: Intro to Distributed Systems CS 5523 Operating Systems: Intro to Distributed Systems Instructor: Dr. Tongping Liu Thank Dr. Dakai Zhu, Dr. Palden Lama for providing their slides. Outline Different Distributed Systems Ø Distributed

More information

CSE 520S Real-Time Systems

CSE 520S Real-Time Systems CSE 520S Real-Time Systems Prof. Chenyang Lu TAs: Haoran Li, Yehan Ma Real-Time Systems Ø Systems operating under timing constraints q Automobiles. q Airplanes. q Mars rovers. q Game console. q Factory

More information

Concurrent Programing: Why you should care, deeply. Don Porter Portions courtesy Emmett Witchel

Concurrent Programing: Why you should care, deeply. Don Porter Portions courtesy Emmett Witchel Concurrent Programing: Why you should care, deeply Don Porter Portions courtesy Emmett Witchel 1 Uniprocessor Performance Not Scaling Performance (vs. VAX-11/780) 10000 1000 100 10 1 20% /year 52% /year

More information

Adaptive QoS Control for Real-Time Systems

Adaptive QoS Control for Real-Time Systems Adaptive QoS Control for Real-Time Systems Chenyang Lu CSE 520S Challenges Ø Classical real-time scheduling theory relies on accurate knowledge about workload and platform. New challenges under uncertainties

More information

Optimization Strategies

Optimization Strategies Global Memory Access Pattern and Control Flow Objectives Ø Ø Global Memory Access Pattern (Coalescing) Ø Control Flow (Divergent branch) Copyright 2013 by Yong Cao, Referencing UIUC ECE498AL Course Notes

More information

Servilla: Service Provisioning in Wireless Sensor Networks. Chenyang Lu

Servilla: Service Provisioning in Wireless Sensor Networks. Chenyang Lu Servilla: Provisioning in Wireless Sensor Networks Chenyang Lu Sensor Network Challenges Ø Device heterogeneity Ø Network dynamics q due to mobility and interference Ø Limited resources and energy Signal

More information

Priority Queues & Heaps

Priority Queues & Heaps Priority Queues & Heaps - 1 - Outline Ø The Priority Queue class of the Java Collections Framework Ø Total orderings, the Comparable Interface and the Comparator Class Ø Heaps Ø Adaptable Priority Queues

More information

Priority Queues & Heaps

Priority Queues & Heaps Priority Queues & Heaps - 1 - Outline Ø The Priority Queue ADT Ø Total orderings, the Comparable Interface and the Comparator Class Ø Heaps Ø Adaptable Priority Queues - 2 - Outcomes Ø By understanding

More information

Downloaded from: justpaste.it/vlxf

Downloaded from: justpaste.it/vlxf Downloaded from: justpaste.it/vlxf Jun 24, 2016 20:19:27.468 [2944] INFO - Plex Media Server v1.0.0.2261-a17e99e - Microsoft PC - build: windows-i386 english Jun 24, 2016 20:19:27.469 [2944] INFO - Windows

More information

The optical memory card is a Write Once media, a written area cannot be overwritten. Information stored on an optical memory card is non-volatile.

The optical memory card is a Write Once media, a written area cannot be overwritten. Information stored on an optical memory card is non-volatile. T10/99-128r0 Subject: Comments on the Committee Draft 14776-381 -Small Computer System Interface -Part 381: Optical Memory Card Device Commands (SCSI OMC). 99-107R0 on T10 site. I have a number of comments

More information

Priority Queues & Heaps

Priority Queues & Heaps Priority Queues & Heaps Chapter 8-1 - The Java Collections Framework (Ordered Data Types) Interface Abstract Class Class Iterable Collection Queue Abstract Collection List Abstract Queue Abstract List

More information

OPEN SOURCE CRYPTOCURRENCY

OPEN SOURCE CRYPTOCURRENCY 23 April, 2018 OPEN SOURCE CRYPTOCURRENCY Document Filetype: PDF 325.26 KB 0 OPEN SOURCE CRYPTOCURRENCY Detailed information for OpenSourcecoin, including the OpenSourcecoin price and value, OpenSourcecoin

More information

Maps and Hash Tables. EECS 2011 Prof. J. Elder - 1 -

Maps and Hash Tables. EECS 2011 Prof. J. Elder - 1 - Maps and Hash Tables - 1 - Outline Ø Maps Ø Hashing Ø Multimaps Ø Ordered Maps - 2 - Learning Outcomes Ø By understanding this lecture, you should be able to: Ø Outline the ADT for a map and a multimap

More information

CS 5523: Operating Systems

CS 5523: Operating Systems CS 5523: Operating Systems Instructor: Dr. Tongping Liu Final Reviews (Comprehensive) Final Exam: May 5, 2015, Tuesday 6:00pm 8:30pm CS5523: Operating Systems @ UTSA 1 Lecture06: Distributed Systems Distributed

More information

Introduction to VI-HPS

Introduction to VI-HPS Introduction to VI-HPS Brian Wylie Jülich Supercomputing Centre Virtual Institute High Productivity Supercomputing Goal: Improve the quality and accelerate the development process of complex simulation

More information

Critiques. Ø Critique #1

Critiques. Ø Critique #1 Critiques Ø 1/2 page critiques of research papers Ø Due at 10am on the class day (hard deadline) Ø Email Yehan yehan.ma@wustl.edu in plain txt Ø Back-of-envelop notes - NOT whole essays Ø Guidelines: http://www.cs.wustl.edu/%7elu/cse521s/critique.html

More information

TinyOS and nesc. Ø TinyOS: OS for wireless sensor networks. Ø nesc: programming language for TinyOS.

TinyOS and nesc. Ø TinyOS: OS for wireless sensor networks. Ø nesc: programming language for TinyOS. TinyOS and nesc Ø TinyOS: OS for wireless sensor networks. Ø nesc: programming language for TinyOS. Original slides by Chenyang Lu, adapted by Octav Chipara 1 Mica2 Mote Ø Processor Ø Radio Ø Sensors Ø

More information

HPCG on Tianhe2. Yutong Lu 1,Chao Yang 2, Yunfei Du 1

HPCG on Tianhe2. Yutong Lu 1,Chao Yang 2, Yunfei Du 1 HPCG on 2 Yutong Lu 1,Chao Yang 2, Yunfei Du 1 1, Changsha, Hunan, China 2 Institute of Software, CAS, Beijing, China Outline r HPCG result overview on -2 r Key Optimization works Ø Hybrid HPCG:CPU+MIC

More information

Midterm Review. EECS 2011 Prof. J. Elder - 1 -

Midterm Review. EECS 2011 Prof. J. Elder - 1 - Midterm Review - 1 - Topics on the Midterm Ø Data Structures & Object-Oriented Design Ø Run-Time Analysis Ø Linear Data Structures Ø The Java Collections Framework Ø Recursion Ø Trees Ø Priority Queues

More information

IN THE UNITED STATES DISTRICT COURT FOR THE EASTERN DISTRICT OF TEXAS MARSHALL DIVISION

IN THE UNITED STATES DISTRICT COURT FOR THE EASTERN DISTRICT OF TEXAS MARSHALL DIVISION IN THE UNITED STATES DISTRICT COURT FOR THE EASTERN DISTRICT OF TEXAS MARSHALL DIVISION Advanced Processor Technologies LLC Plaintiff, v. Marvell Semiconductor, Inc. Defendant. Civil Action No. 2:12-cv-155

More information

SMS based Voting System

SMS based Voting System IJIRST International Journal for Innovative Research in Science & Technology Volume 4 Issue 11 April 2018 ISSN (online): 2349-6010 SMS based Voting System Dr. R. R. Mergu Associate Professor Ms. Nagmani

More information

Batch binary Edwards. D. J. Bernstein University of Illinois at Chicago NSF ITR

Batch binary Edwards. D. J. Bernstein University of Illinois at Chicago NSF ITR Batch binary Edwards D. J. Bernstein University of Illinois at Chicago NSF ITR 0716498 Nonnegative elements of Z: etc. 0 meaning 0 1 meaning 2 0 10 meaning 2 1 11 meaning 2 0 + 2 1 100 meaning 2 2 101

More information

Ø Project Description. Ø Design Criteria. Ø Design Overview. Ø Design Components. Ø Schedule. Ø Testing Criteria. Background Design Implementation

Ø Project Description. Ø Design Criteria. Ø Design Overview. Ø Design Components. Ø Schedule. Ø Testing Criteria. Background Design Implementation Ø Project Description Ø Design Criteria Ø Design Overview Ø Design Components Background Design Implementation Ø Schedule Ø Testing Criteria Ø Asante Solutions, Inc. and RCPD Ø Blind user focused insulin

More information

Kjell-Einar Anderssen. Country Manager Norway - Nutanix

Kjell-Einar Anderssen. Country Manager Norway - Nutanix Kjell-Einar Anderssen. Country Manager Norway - Nutanix About Nutanix Make datacenter infrastructure invisible, eleva4ng IT to focus on applica4ons and services 1750+ customers Founded in 2009 Over 70

More information

Product Description

Product Description www.youratenews.com Product Description Prepared on June 20, 2017 by Vadosity LLC Author: Brett Shelley brett.shelley@vadosity.com Introduction With YouRateNews, users are able to rate online news articles

More information

Comparison Sorts. EECS 2011 Prof. J. Elder - 1 -

Comparison Sorts. EECS 2011 Prof. J. Elder - 1 - Comparison Sorts - 1 - Sorting Ø We have seen the advantage of sorted data representations for a number of applications q Sparse vectors q Maps q Dictionaries Ø Here we consider the problem of how to efficiently

More information

Maps, Hash Tables and Dictionaries

Maps, Hash Tables and Dictionaries Maps, Hash Tables and Dictionaries Chapter 9-1 - Outline Ø Maps Ø Hashing Ø Dictionaries Ø Ordered Maps & Dictionaries - 2 - Outline Ø Maps Ø Hashing Ø Dictionaries Ø Ordered Maps & Dictionaries - 3 -

More information

Chapter 8: Recursion

Chapter 8: Recursion Chapter 8: Recursion Presentation slides for Java Software Solutions for AP* Computer Science 3rd Edition by John Lewis, William Loftus, and Cara Cocking Java Software Solutions is published by Addison-Wesley

More information

New features in Oracle 11g for PL/SQL code tuning.

New features in Oracle 11g for PL/SQL code tuning. New features in Oracle 11g for PL/SQL code tuning. 1-1 - Speakers Nikunj Gadoya Nikunj is working in Blink Consul4ng as Technical Consultant for more than 2 years now. He did his engineering in computer

More information

DevOps Course Content

DevOps Course Content INTRODUCTION TO DEVOPS DevOps Course Content Ø What is DevOps? Ø History of DevOps Ø Different Teams Involved Ø DevOps definitions Ø DevOps and Software Development Life Cycle o Waterfall Model o Agile

More information

Performance & Energy

Performance & Energy 1 Performance & Energy Optimization @ Md Abdullah Shahneous Bari Abid M. Malik Millad Ghane Ahmad Qawasmeh Barbara M. Chapman 11/28/15 2 Layout of the talk Ø Overview Ø Motivation Ø Factors that affect

More information

Title Author Edition

Title Author Edition 2 3 Title: AN OPERATING SYSTEM IN A NUTSHELL Author: Corrado Santoro Edition: Draft 1.2.0 - Dec 04, 2004 Copyright c 2001, 2002, 2003, 2004, 2005 Corrado Santoro (csanto@diit.unict.it), University of Catania.

More information

4th International Industrial Supercomputing Workshop Supercomputing for industry and SMEs in the Netherlands

4th International Industrial Supercomputing Workshop Supercomputing for industry and SMEs in the Netherlands 4th International Industrial Supercomputing Workshop Supercomputing for industry and SMEs in the Netherlands Dr. Peter Michielse Deputy Director 1 Agenda q Historical example: oil reservoir simulation

More information

Exploring QR Factorization on GPU for Quantum Monte Carlo Simulation

Exploring QR Factorization on GPU for Quantum Monte Carlo Simulation Exploring QR Factorization on GPU for Quantum Monte Carlo Simulation Tyler McDaniel Ming Wong Mentors: Ed D Azevedo, Ying Wai Li, Kwai Wong Quantum Monte Carlo Simulation Slater Determinant for N-electrons

More information

Estonian National Electoral Committee. E-Voting System. General Overview

Estonian National Electoral Committee. E-Voting System. General Overview Estonian National Electoral Committee E-Voting System General Overview Tallinn 2005-2010 Annotation This paper gives an overview of the technical and organisational aspects of the Estonian e-voting system.

More information

IMPLEMENTATION OF SECURE PLATFORM FOR E- VOTING SYSTEM

IMPLEMENTATION OF SECURE PLATFORM FOR E- VOTING SYSTEM IMPLEMENTATION OF SECURE PLATFORM FOR E- VOTING SYSTEM PROJECT REFERENCE NO.: 39S_BE_1662 COLLEGE BRANCH GUIDE STUDETS : AMRUTHA INSTITUTE OF ENGINEERING AND MANAGEMENT SCIENCE, BENGALURU : DEPARTMENT

More information

Ownership of Site; Agreement to Terms of Use

Ownership of Site; Agreement to Terms of Use Ownership of Site; Agreement to Terms of Use These Terms and Conditions of Use (the Terms of Use ) apply to the Volta Career Resource Center, being a web site located at www.voltapeople.com (the Site ).

More information

Civil Justice Improvements (CJI) Committee. Update #2

Civil Justice Improvements (CJI) Committee. Update #2 A Brief Re-cap from Update #1 Civil Justice Improvements (CJI) Committee Update #2 CJI Committee members recognize that many factors, including the resources available to each court system, influence the

More information

A Bloom Filter Based Scalable Data Integrity Check Tool for Large-scale Dataset

A Bloom Filter Based Scalable Data Integrity Check Tool for Large-scale Dataset A Bloom Filter Based Scalable Data Integrity Check Tool for Large-scale Dataset Sisi Xiong*, Feiyi Wang + and Qing Cao* *University of Tennessee Knoxville, Knoxville, TN, USA + Oak Ridge National Laboratory,

More information

LEGAL TERMS OF USE. Ownership of Terms of Use

LEGAL TERMS OF USE. Ownership of Terms of Use LEGAL TERMS OF USE Ownership of Terms of Use These Terms and Conditions of Use (the Terms of Use ) apply to the Compas web site located at www.compasstone.com, and all associated sites linked to www.compasstone.com

More information

Agreement for iseries and AS/400 System Restore Test Service

Agreement for iseries and AS/400 System Restore Test Service Agreement for iseries and AS/400 System Restore Test Service 1. Introduction The iseries and AS/400 System Restore Test Service (called "the Service"). The Service is provided to you, as a registered subscriber

More information

FM Legacy Converter User Guide

FM Legacy Converter User Guide FM Legacy Converter User Guide Version 1.0 Table of Contents v Ways to Convert Ø Drag and Drop Supported file types Types of content that are converted Types of content that are not converted Converting

More information

Philips Lifeline. Ø Chenyang Lu 1

Philips Lifeline. Ø  Chenyang Lu 1 Philips Lifeline Ø http://www.lifelinesys.com/content/lifeline-products/auto-alert Chenyang Lu 1 Smartphone for Medicine Ø http://video.msnbc.msn.com/rock-center/50582822 2 Proposal Presenta5on Ø 2/12,

More information

General Framework of Electronic Voting and Implementation thereof at National Elections in Estonia

General Framework of Electronic Voting and Implementation thereof at National Elections in Estonia State Electoral Office of Estonia General Framework of Electronic Voting and Implementation thereof at National Elections in Estonia Document: IVXV-ÜK-1.0 Date: 20 June 2017 Tallinn 2017 Annotation This

More information

Wednesday, January 4, electronic components

Wednesday, January 4, electronic components electronic components a desktop computer relatively complex inside: screen (CRT) disk drive backup battery power supply connectors for: keyboard printer n more! Wednesday, January 4, 2012 integrated circuit

More information

TAFTW (Take Aways for the Week) APT Quiz and Markov Overview. Comparing objects and tradeoffs. From Comparable to TreeMap/Sort

TAFTW (Take Aways for the Week) APT Quiz and Markov Overview. Comparing objects and tradeoffs. From Comparable to TreeMap/Sort TAFTW (Take Aways for the Week) Graded work this week: Ø APT Quiz, details and overview Ø Markov assignment, details and overview Concepts: Empirical and Analytical Analysis Ø Algorithms and Data Structures

More information

Key Considerations for Implementing Bodies and Oversight Actors

Key Considerations for Implementing Bodies and Oversight Actors Implementing and Overseeing Electronic Voting and Counting Technologies Key Considerations for Implementing Bodies and Oversight Actors Lead Authors Ben Goldsmith Holly Ruthrauff This publication is made

More information

Last Time. Embedded systems introduction

Last Time. Embedded systems introduction Last Time Embedded systems introduction Ø Definition of embedded system Ø Common characteristics Ø Kinds of embedded systems Ø Crosscutting issues Ø Software architectures Ø Choosing a processor Ø Choosing

More information

UNITED STATES DISTRICT COURT CENTRAL DISTRICT OF CALIFORNIA CIVIL MINUTES GENERAL

UNITED STATES DISTRICT COURT CENTRAL DISTRICT OF CALIFORNIA CIVIL MINUTES GENERAL Present: The Honorable Andrea Keifer Deputy Clerk JOHN A. KRONSTADT, UNITED STATES DISTRICT JUDGE Not Reported Court Reporter / Recorder Attorneys Present for Plaintiffs: Not Present Attorneys Present

More information

Text UI. Data Store Ø Example of a backend to a real Could add a different user interface. Good judgment comes from experience

Text UI. Data Store Ø Example of a backend to a real Could add a different user interface. Good judgment comes from experience Reviewing Lab 10 Text UI Created two classes Ø Used one class within another class Ø Tested them Graphical UI Backend Data Store Ø Example of a backend to a real applica@on Could add a different user interface

More information

Deadlock. deadlock analysis - primitive processes, parallel composition, avoidance

Deadlock. deadlock analysis - primitive processes, parallel composition, avoidance Deadlock CDS News: Brainy IBM Chip Packs One Million Neuron Punch Overview: ideas, 4 four necessary and sufficient conditions deadlock analysis - primitive processes, parallel composition, avoidance the

More information

Software License Agreement for Beckhoff Software Products

Software License Agreement for Beckhoff Software Products 1 Scope of this Agreement (1) Licensor has agreed with Licensee to grant Licensee a license to use and exploit the software set out in the License Certificate ("Licensed Software") subject to the terms

More information

Supreme Court of Florida

Supreme Court of Florida Supreme Court of Florida No. AOSC18-8 IN RE: JUROR SELECTION PLAN: OSCEOLA COUNTY ADMINISTRATIVE ORDER Section 40.225, Florida Statutes, provides for the selection of jurors to serve within the county

More information

MAPR END USER LICENSE AGREEMENT Last updated: April 20, 2016

MAPR END USER LICENSE AGREEMENT Last updated: April 20, 2016 MAPR END USER LICENSE AGREEMENT Last updated: April 20, 2016 THIS MAPR END USER LICENSE AGREEMENT ( AGREEMENT ) IS BY AND BETWEEN MAPR TECHNOLOGIES INC., A DELAWARE COMPANY WITH OFFICES AT 350 HOLGER WAY,

More information

We should share our secrets

We should share our secrets We should share our secrets Shamir secret sharing: how it works and how to implement it Daan Sprenkels hello@dsprenkels.com Radboud University Nijmegen 28 December 2017 Daan Sprenkels We should share our

More information

Internet of Things Wireless Sensor Networks. Chenyang Lu

Internet of Things Wireless Sensor Networks. Chenyang Lu Internet of Things Wireless Sensor Networks Chenyang Lu Internet of Things Ø Convergence of q Miniaturized hardware: processor+sensors+wireless q Low-power wireless: connect millions of devices to the

More information

Implementing Domain Specific Languages using Dependent Types and Partial Evaluation

Implementing Domain Specific Languages using Dependent Types and Partial Evaluation Implementing Domain Specific Languages using Dependent Types and Partial Evaluation Edwin Brady eb@cs.st-andrews.ac.uk University of St Andrews EE-PigWeek, January 7th 2010 EE-PigWeek, January 7th 2010

More information

IC Chapter 15. Ballot Card and Electronic Voting Systems; Additional Standards and Procedures for Approving System Changes

IC Chapter 15. Ballot Card and Electronic Voting Systems; Additional Standards and Procedures for Approving System Changes IC 3-11-15 Chapter 15. Ballot Card and Electronic Voting Systems; Additional Standards and Procedures for Approving System Changes IC 3-11-15-1 Applicability of chapter Sec. 1. Except as otherwise provided,

More information

FairCom Press Release Archive:

FairCom Press Release Archive: FairCom Press Release Archive: 2000-2009 With over thirty years of innovation in the database industry, FairCom has a long-standing tradition of leadership. This archive highlights the announcements we

More information

Lab 11: Pair Programming. Review: Pair Programming Roles

Lab 11: Pair Programming. Review: Pair Programming Roles Lab 11: Pair Programming Apr 2, 2019 Sprenkle - CSCI111 1 Review: Pair Programming Roles Driver (Like the role I play when we write programs in class) Uses keyboard and mouse to execute all actions on

More information

Recommendations For Reddit Users Avideh Taalimanesh and Mohammad Aleagha Stanford University, December 2012

Recommendations For Reddit Users Avideh Taalimanesh and Mohammad Aleagha Stanford University, December 2012 Recommendations For Reddit Users Avideh Taalimanesh and Mohammad Aleagha Stanford University, December 2012 Abstract In this paper we attempt to develop an algorithm to generate a set of post recommendations

More information

A Calculus for End-to-end Statistical Service Guarantees

A Calculus for End-to-end Statistical Service Guarantees A Calculus for End-to-end Statistical Service Guarantees Technical Report: University of Virginia, CS-2001-19 (2nd revised version) Almut Burchard Ý Jörg Liebeherr Stephen Patek Ý Department of Mathematics

More information

IF YOU DO NOT AGREE TO THESE TERMS, DO NOT DOWNLOAD, INSTALL OR USE BSC.

IF YOU DO NOT AGREE TO THESE TERMS, DO NOT DOWNLOAD, INSTALL OR USE BSC. Bitvise SSH Client End User License Agreement Bitvise Limited, a Texas corporation with its principal office at 4105 Lombardy Court, Colleyville, Texas 76034, USA, ("Bitvise"), develops a Windows SSH client

More information

14 Managing Split Precincts

14 Managing Split Precincts 14 Managing Split Precincts Contents 14 Managing Split Precincts... 1 14.1 Overview... 1 14.2 Defining Split Precincts... 1 14.3 How Split Precincts are Created... 2 14.4 Managing Split Precincts In General...

More information

I do not wish to feud I am very sad about the Jefferson County Schools dilemma and definitely want it to settle down.

I do not wish to feud I am very sad about the Jefferson County Schools dilemma and definitely want it to settle down. Dwight Shellman From: Sent: To: Subject: Wayne Williams Monday, November 02, 2015 5:03 PM Dwight Shellman Fw: Jefferson County Elections - Severe Problems With Voting Machines & Appearance of Candidate's

More information

COMP 635: WIRELESS & MOBILE COMMUNICATIONS COURSE INTRODUCTION. Jasleen Kaur. Fall 2017

COMP 635: WIRELESS & MOBILE COMMUNICATIONS COURSE INTRODUCTION.   Jasleen Kaur. Fall 2017 COMP 635: WIRELESS & MOBILE COMMUNICATIONS COURSE INTRODUCTION http://wireless.web.unc.edu Jasleen Kaur Fall 2017 1 Introductions Names BS/MS, First-year Grad, Senior Grad? If you re new, where have you

More information

Key Considerations for Oversight Actors

Key Considerations for Oversight Actors Implementing and Overseeing Electronic Voting and Counting Technologies Key Considerations for Oversight Actors Lead Authors Ben Goldsmith Holly Ruthrauff This publication is made possible by the generous

More information

Learning Systems. Research at the Intersection of Machine Learning & Data Systems. Joseph E. Gonzalez

Learning Systems. Research at the Intersection of Machine Learning & Data Systems. Joseph E. Gonzalez Learning Systems Research at the Intersection of Machine Learning & Data Systems Joseph E. Gonzalez Asst. Professor, UC Berkeley jegonzal@cs.berkeley.edu How can machine learning techniques be used to

More information

Platform independent proc interface

Platform independent proc interface Platform independent proc interface Author: WangDi & Komal 05/07/2008 1 Introduction This document describes how to implement a platform independent proc interface for Lustre. The basic idea is that the

More information

Search Trees. Chapter 10. CSE 2011 Prof. J. Elder Last Updated: :51 PM

Search Trees. Chapter 10. CSE 2011 Prof. J. Elder Last Updated: :51 PM Search Trees Chapter 1 < 6 2 > 1 4 = 8 9-1 - Outline Ø Binary Search Trees Ø AVL Trees Ø Splay Trees - 2 - Binary Search Trees Ø A binary search tree is a binary tree storing key-value entries at its internal

More information

Installation of InfraStruXure for Medium Data Centers with an Emergency Power Off Circuit

Installation of InfraStruXure for Medium Data Centers with an Emergency Power Off Circuit Application Note #25 Installation of InfraStruXure for Medium Data Centers with an Emergency Power Off Circuit Many installations require the use of an Emergency Power Off (EPO) circuit to disconnect power

More information

The HeLIx + inversion code Genetic algorithms. A. Lagg - Abisko Winter School 1

The HeLIx + inversion code Genetic algorithms. A. Lagg - Abisko Winter School 1 The HeLIx + inversion code Genetic algorithms A. Lagg - Abisko Winter School 1 Inversion of the RTE Once solution of RTE is known: Ø comparison between Stokes spectra of synthetic and observed spectrum

More information

Act means the Municipal Elections Act, 1996, c. 32 as amended;

Act means the Municipal Elections Act, 1996, c. 32 as amended; The Corporation of the City of Brantford 2018 Municipal Election Procedure for use of the Automated Tabulator System and Online Voting System (Pursuant to section 42(3) of the Municipal Elections Act,

More information

M-Vote (Online Voting System)

M-Vote (Online Voting System) ISSN (online): 2456-0006 International Journal of Science Technology Management and Research Available online at: M-Vote (Online Voting System) Madhuri Mahajan Madhuri Wagh Prof. Puspendu Biswas Yogeshwari

More information

SOFTWARE END USER LICENSE AGREEMENT (Load Systems Software and Firmware)

SOFTWARE END USER LICENSE AGREEMENT (Load Systems Software and Firmware) SOFTWARE END USER LICENSE AGREEMENT (Load Systems Software and Firmware) IMPORTANT, READ THIS AGREEMENT CAREFULLY. BY INSTALLING OR USING ALL OR ANY PORTION OF THE SOFTWARE, YOU ARE ACCEPTING ALL OF THE

More information

Hoboken Public Schools. College Algebra Curriculum

Hoboken Public Schools. College Algebra Curriculum Hoboken Public Schools College Algebra Curriculum College Algebra HOBOKEN PUBLIC SCHOOLS Course Description College Algebra reflects the New Jersey learning standards at the high school level and is designed

More information

Outline. Your Project Proposal an evolving plan. Project Proposal Guidelines (2 files) ECE496 Design Project Preparing Your Project Proposal

Outline. Your Project Proposal an evolving plan. Project Proposal Guidelines (2 files) ECE496 Design Project Preparing Your Project Proposal Outline ECE496 Design Project Preparing Your Project Proposal Dr. Ken Tallman & Khoman Phang Thursday, Sept. 15, 2016 Tonight n Introduction to the proposal (Phang) n Proposal details (Phang) n Writing

More information

IF YOU DO NOT AGREE TO THESE TERMS, DO NOT DOWNLOAD, INSTALL OR USE BSC.

IF YOU DO NOT AGREE TO THESE TERMS, DO NOT DOWNLOAD, INSTALL OR USE BSC. Bitvise SSH Client End User License Agreement Bitvise Limited, a Texas corporation with its principal office at 4105 Lombardy Ct, Colleyville, Texas 76034, USA, ("Bitvise"), develops a Windows SSH client

More information

Category-level localization. Cordelia Schmid

Category-level localization. Cordelia Schmid Category-level localization Cordelia Schmid Recognition Classification Object present/absent in an image Often presence of a significant amount of background clutter Localization / Detection Localize object

More information

US MOBILE NEWS SEEKING TRENDS. Based on October September 2015 data. Excerpted from a full findings report delivered November 2015.

US MOBILE NEWS SEEKING TRENDS. Based on October September 2015 data. Excerpted from a full findings report delivered November 2015. US MOBILE NEWS SEEKING TRENDS Based on October 2013- September 2015 data. Excerpted from a full findings report delivered November 2015. BACKGROUND Knight Foundation commissioned Nielsen to delve into

More information

Title: Local Search Required reading: AIMA, Chapter 4 LWH: Chapters 6, 10, 13 and 14.

Title: Local Search Required reading: AIMA, Chapter 4 LWH: Chapters 6, 10, 13 and 14. B.Y. Choueiry 1 Instructor s notes #8 Title: Local Search Required reading: AIMA, Chapter 4 LWH: Chapters 6, 10, 13 and 14. Introduction to Artificial Intelligence CSCE 476-876, Fall 2017 URL: www.cse.unl.edu/

More information

IceCube Project Monthly Report November 2007

IceCube Project Monthly Report November 2007 Accomplishments IceCube Project Monthly Report November 2007 Completed the commissioning of the IceCube Seasonal Equipment Site in preparations for drilling. Started deep ice drilling on December 5 following

More information

Exhibit No. 373A-06 to IBM Vendor Access Agreement Page 1 of 5

Exhibit No. 373A-06 to IBM Vendor Access Agreement Page 1 of 5 Exhibit No. 373A-06 to IBM Vendor Access Agreement Page 1 of 5 Reference Agreement No.: Exhibit Identifier: Additional Terms and Conditions The terms and conditions described in this Exhibit apply to your

More information

The Digital Appellate Court Introduction to the edca Electronic Portal

The Digital Appellate Court Introduction to the edca Electronic Portal The Digital Appellate Court Introduction to the edca Electronic Portal First District Court of Appeal - State of Florida Table of Contents Introduction... 2 External District Court of Appeal - edca...

More information

LOCAL LAW NO.: OF 2016

LOCAL LAW NO.: OF 2016 LOCAL LAWS & ORDINANCES\Chapter 179 Zoning Commercial Intensive Exit 18 Zoning District 4-18-16 LOCAL LAW NO.: OF 2016 A LOCAL LAW TO AMEND CHAPTER 179 ZONING OF QUEENSBURY TOWN CODE TO ESTABLISH COMMERCIAL

More information

Lecture 6 Cryptographic Hash Functions

Lecture 6 Cryptographic Hash Functions Lecture 6 Cryptographic Hash Functions 1 Purpose Ø CHF one of the most important tools in modern cryptography and security Ø In crypto, CHF instantiates a Random Oracle paradigm Ø In security, used in

More information

Midterm Review. EECS 2011 Prof. J. Elder - 1 -

Midterm Review. EECS 2011 Prof. J. Elder - 1 - Midterm Review - 1 - Topics on the Midterm Ø Data Structures & Object-Oriented Design Ø Run-Time Analysis Ø Linear Data Structures Ø The Java Collections Framework Ø Recursion Ø Trees Ø Priority Queues

More information

Case3:10-cv JW Document81 Filed06/12/12 Page1 of 23 SAN FRANCISCO DIVISION

Case3:10-cv JW Document81 Filed06/12/12 Page1 of 23 SAN FRANCISCO DIVISION Case:-cv-00-JW Document Filed0// Page of IN THE UNITED STATES DISTRICT COURT FOR THE NORTHERN DISTRICT OF CALIFORNIA SAN FRANCISCO DIVISION Acer, Inc., Plaintiff, NO. C 0-00 JW NO. C 0-00 JW NO. C 0-0

More information