Review Device Drivers Device Driver Device specific code in the kernel that interacts directly with the device hardware CS162 Operating Systems and Systems Programming Lecture 18 Supports a standard internal interface Same kernel I O system can interact easily with different device drivers Special device specific configuration supported with the ioctl system call Device Drivers typically divided into two pieces File Systems Naming and Directories Top half accessed in call path from system calls implements a set of standard cross device calls like open close read write ioctl strategy This is the kernel s interface to the device driver Top half will start I O to device may put thread to sleep until finished November 2nd 2009 Prof John Kubiatowicz http inst eecs berkeley edu cs162 Bottom half run as interrupt routine Gets input or transfers next block of output May wake sleeping threads if I O now complete 11 02 09 Disk Latency Queueing Time Controller time Seek Time Rotation Time Xfer Time Result Hardware Controller Request Highest Bandwidth Transfer large group of blocks sequentially from one track 11 02 09 Kubiatowicz CS162 UCB Fall 2009 Lec 18 3 Arrivals Queue Controller Seek time position the head arm over the proper track into proper cylinder Rotational latency wait for the desired sector to rotate under the read write head Transfer time transfer a block of bits sector under the read write head Media Time Seek Rot Xfer Lec 18 2 Review Introduction to Queuing Theory Review Disk Performance Model Read write data is a three stage process Software Queue Device Driver Kubiatowicz CS162 UCB Fall 2009 Disk Departures Queuing System What about queuing time Let s apply some queuing theory Queuing Theory applies to long term steady state behavior Arrival rate Departure rate Little s Law Mean tasks in system arrival rate x mean response time Observed by many Little was first to prove Simple interpretation you should see the same number of tasks in queue when entering as when leaving Applies to any system in equilibrium as long as nothing in black box is creating or destroying tasks Typical queuing theory doesn t deal with transient behavior only steady state behavior 11 02 09 Kubiatowicz CS162 UCB Fall 2009 Lec 18 4 Goals for Today Background Use of random distributions Server spends variable time with customers Mean Average m1 p T T Variance 2 p T T m1 2 p T T2 m1 Queuing Theory Continued File Systems Structure Naming Directories Mean m1 Distribution of service times Squared coefficient of variance C 2 m12 Aggregate description of the distribution Important values of C No variance or deterministic C 0 memoryless or exponential C 1 Past tells nothing about future Many complex systems or aggregates well described as memoryless mean Memoryless Disk response times C 1 5 majority seeks avg Mean Residual Wait Time m1 z Note Some slides and or pictures in the following are adapted from slides 2005 Silberschatz Galvin and Gagne Gagne Many slides generated from my lecture notes by Kubiatowicz 11 02 09 Kubiatowicz CS162 UCB Fall 2009 Lec 18 5 A Little Queuing Theory Mean Wait Time Arrival Rate Queue Service Rate 1 Tser Tser C u Server mean number of arriving customers second mean time to service a customer m1 squared coefficient of variance 2 m12 service rate 1 Tser server utilization 0 u 1 u Tser Parameters we wish to compute Tq Lq Time spent in queue Length of queue Tq by Little s law Basic Approach Customers before us must finish mean time Lq Tser If something at server takes m1 z to complete on avg m1 z mean residual wait time at server Tser 1 C Chance something at server u mean time is u m1 z Computation of wait time in queue Tq Tq Lq Tser u m1 z 11 02 09 Kubiatowicz CS162 UCB Fall 2009 Not just m1 because doesn t capture variance C 0 m1 z m1 C 1 m1 z m1 11 02 09 Kubiatowicz CS162 UCB Fall 2009 Lec 18 6 A Little Queuing Theory M G 1 and M M 1 Computation of wait time in queue Tq Tq Lq Tser u m1 z Little s Law Parameters that describe our system Mean time must wait for server to complete current task Can derive m1 z m1 1 C Lec 18 7 Tq Tq Tq Tq Tq Tser u m1 z Defn of utilization u u Tq u m1 z 1 u m1 z u Tq m1 z u 1 u Tser 1 C u 1 u Notice that as u 1 Tq Assumptions so far System in equilibrium No limit to the queue works First In First Out Time between two successive arrivals in line are random and memoryless M for C 1 exponentially random Server can start on next customer immediately after prior finishes General service distribution no restrictions 1 server Called M G 1 queue Tq Tser 1 C u 1 u Memoryless service distribution C 1 Called M M 1 queue Tq Tser u 1 u 11 02 09 Kubiatowicz CS162 UCB Fall 2009 Lec 18 8 A Little Queuing Theory An Example Example Usage Statistics Queuing Theory Resources User requests 10 8KB disk I Os per second Requests service exponentially distributed C 1 0 Avg service 20 ms controller seek rot Xfertime Questions How utilized is the disk Ans server utilization u Tser Handouts page contains Queueing Theory Resources Scanned pages from Patterson and Hennesey book that gives further discussion and simple proof for general eq A complete website full of resources What is the average time spent in the queue Midterms with queueing theory questions What is the number of requests in the queue Midterm IIs from previous years that I ve taught Assume that Queueing theory is fair game for the final Ans Tq Ans Lq Tq What is the avg response time for disk request Ans Tsys Tq Tser Wait in queue then get served Computation avg arriving customers s 10 s Tser avg time to service customer 20 ms 0 02s u server utilization Tser 10 s 02s 0 2 Tq avg time customer in queue Tser u 1 u 20 x 0 2 1 0 2 20 0 25 5 ms 0 005s Lq avg length of queue Tq 10 s 005s 0 05 Tsys avg time customer in system Tq Tser 25 ms 11 02 09 Kubiatowicz CS162 UCB Fall 2009 Lec 18 9 Administrivia 11 02 09 Kubiatowicz CS162 UCB Fall 2009 Lec 18 10 Disk Scheduling Disk can do only one request at a time What order do you choose to do queued requests Course Feedback Tomorrow in Section User Requests Group Evaluations not Optional You will get a zero for project if you don t fill them out We use these for grading Must be in by next week Check glookup to make sure that we have right grades Make sure that we don t have errors Head Fair among requesters but order of arrival may be to random spots on the disk Very long seeks SSTF Shortest seek time first Pick the request that s closest on the …
View Full Document
Unlocking...