Multimedia Systems (Part 2) CS-502 Fall 20061 Multimedia Systems (Part 2) CS-502 Operating Systems...
-
date post
22-Dec-2015 -
Category
Documents
-
view
217 -
download
1
Transcript of Multimedia Systems (Part 2) CS-502 Fall 20061 Multimedia Systems (Part 2) CS-502 Operating Systems...
Multimedia Systems (Part 2)
CS-502 Fall 2006 1
Multimedia Systems (Part 2)
CS-502 Operating SystemsFall 2006
(Slides include materials from Operating System Concepts, 7th ed., by Silbershatz, Galvin, & Gagne and from Modern Operating Systems, 2nd ed., by Tanenbaum)
Multimedia Systems (Part 2)
CS-502 Fall 2006 2
Review
• What is multi-media?• Audio, video, etc., in digital computing environment
• Requirements and challenges for audio and video in computer systems
• CD devices and formats
• Systems for multimedia
• Compression and bandwidth• JPEG and MPEG
Multimedia Systems (Part 2)
CS-502 Fall 2006 3
This week
• Processor and disk scheduling• Real-time scheduling
• QoS: quality of service
• Network streaming and management• HTTP vs. RTSP
• Video Server organization
Multimedia Systems (Part 2)
CS-502 Fall 2006 4
Operating System Challenge
• How to get the contents of a movie file from disk or DVD drive to video screen and speakers.– Fixed frame rate (25 or 30 fps)– Steady audio rate– Bounded jitter
• Such requirements are known as Quality-of-Service (QoS) guarantees.
• Classical problem in real-time scheduling– Obscure niche become mainstream!– See Silbershatz, §19.1–19.5
Multimedia Systems (Part 2)
CS-502 Fall 2006 5
QoS Challenge
• Building a system to guarantee QoS effects the following:–– CPU processing– Scheduling and interrupt handling– File systems– Network protocols
Multimedia Systems (Part 2)
CS-502 Fall 2006 6
Three levels of QoS
• Best-effort service: the system makes a best effort with no attempt to guarantee
• Soft QoS: allows different traffic streams to be prioritized, but no QoS guarantees are made– Prioritization
• Hard QoS: system ensures QoS requirements are always met– Prioritization
– Admission control
– Bounded latency on interrupt handling, processing, etc.
Multimedia Systems (Part 2)
CS-502 Fall 2006 7
Parameters Defining QoS
• Throughput: – total amount of work completed during a specified time
interval
• Delay: – elapsed time from when request is first submitted to
desired result
• Jitter: – (uneven) variation in playback rate of a stream.
• Reliability: – how errors are handled during transmission and
processing of continuous media
Multimedia Systems (Part 2)
CS-502 Fall 2006 8
Further QoS Issues
• QoS may be negotiated between the client and server.
• Operating systems may use an admission control algorithm– Admits a request for service only if the server
has sufficient resources to satisfy the request
Multimedia Systems (Part 2)
CS-502 Fall 2006 9
Processor scheduling – two common methods
• Rate Monotonic Scheduling
• Earliest Deadline First
• Many variations
• Many analytic methods for proving QoS (Quality of Service)
Multimedia Systems (Part 2)
CS-502 Fall 2006 10
Rate Monotonic Scheduling (RMS)
• Assume m periodic processes– Process i requires ti msec of processing time
every pi msec.
– Equal processing every interval — like clockwork!
Multimedia Systems (Part 2)
CS-502 Fall 2006 11
Example• Periodic process i requires the CPU at specified intervals
(periods)• pi is the duration of the period• ti is the processing time• di is the deadline by when the process must be serviced
– Often same as end of period
Multimedia Systems (Part 2)
CS-502 Fall 2006 12
Rate Monotonic Scheduling (RMS)
• Assume m periodic processes– Process i requires ti msec of processing time every pi
msec.
– Equal processing every interval — like clockwork!
• Assume
• Assign priority of process i to be– Statically assigned
• Let priority of non-real-time processes be 0
11
m
i i
i
p
t
ip
1
Multimedia Systems (Part 2)
CS-502 Fall 2006 13
Rate Monotonic Scheduling (continued)
• Scheduler simply runs highest priority process that is ready– May pre-empt other real-time processes– Real-time processes become ready in time for
each frame or sound interval– Non-real-time processes run only when no real-
time process needs CPU
Multimedia Systems (Part 2)
CS-502 Fall 2006 14
Example
• p1 = 50 msec; t1 = 20 msec
• p2 = 100 msec; t2 = 35 msec
• Priority(p1) > Priority(p2)
• Total compute load is 75 msec per every 100 msec.
• Both tasks complete within every period• 25 msec per 100 msec to spare
Multimedia Systems (Part 2)
CS-502 Fall 2006 15
Example 2
• p1 = 50 msec; t1 = 25 msec
• p2 = 80 msec; t2 = 35 msec
• Priority(p1) > Priority(p2)
• Total compute load is ~ 94% of CPU.
• Cannot complete both tasks within some periods• Even though there is still CPU capacity to spare!
Multimedia Systems (Part 2)
CS-502 Fall 2006 16
Rate Monotonic Theorems (without proof)
• Theorem 1: using these priorities, scheduler can guarantee the needed Quality of Service (QoS), provided that
– Asymptotically approaches ln 2 as m ln 2 = 0.6931…
• Theorem 2: If a set of processes can be scheduled by any method of static priorities, then it can be scheduled by Rate Monotonic method.
)12(1
1
mm
i i
i mp
t
Multimedia Systems (Part 2)
CS-502 Fall 2006 17
Example 2 again
• Note that p1 pre-empts p2 in second interval, even
though p2 has the earlier deadline!
828.01229375.080
35
50
25 21
2
2
1
1
p
t
p
t
Multimedia Systems (Part 2)
CS-502 Fall 2006 18
More on Rate Monotonic Scheduling
• Rate Monotonic assumes periodic processes
• MPEG-2 playback is not a periodic process!
Multimedia Systems (Part 2)
CS-502 Fall 2006 19
Earliest Deadline First (EDF)
• When each process i become ready, it announces deadline Di for its next task.
• Scheduler always assigns processor to process with earliest deadline.
• May pre-empt other real-time processes
Multimedia Systems (Part 2)
CS-502 Fall 2006 20
Earliest Deadline First Scheduling (continued)
• No assumption of periodicity• No assumption of uniform processing times
• Theorem: If any scheduling policy can satisfy QoS requirement for a sequence of real time tasks, then EDF can also satisfy it.– Proof: If i scheduled before i+1, but Di+1 < Di , then i
and i+1 can be interchanged without affecting QoS guarantee to either one.
Multimedia Systems (Part 2)
CS-502 Fall 2006 21
Earliest Deadline First Scheduling (continued)
• EDF is more complex scheduling algorithm• Priorities are dynamically calculated• Processes must know deadlines for tasks
• EDF can make higher use of processor than RMS
• Up to 100%
• There is a large body of knowledge and theorems about EDF analysis
Multimedia Systems (Part 2)
CS-502 Fall 2006 22
Example 2 (again)
• Priorities are assigned according to deadlines:
– the earlier the deadline, the higher the priority;
– the later the deadline, the lower the priority.
Multimedia Systems (Part 2)
CS-502 Fall 2006 24
Network Management
• General methods for delivering content from a server to a client across a network:–– Broadcasting: server delivers content to all
clients, whether they want it or not.– Multicasting: server delivers content to group
of clients who indicate they wish to receive the content.
– Unicasting: server delivers content to a single client.
Multimedia Systems (Part 2)
CS-502 Fall 2006 25
Network Management (continued)
• Broadcasting• Like cable TV
• Fixed portion of network bandwidth dedicated to set of broadcast streams; inflexible
• Multicasting• Typical webcast
• Multicast tree set up through internet to reach customers
• Customers can come and go
• Unicast• Dedicated connection between server and client
• Streaming version of familiar transport protocols
Multimedia Systems (Part 2)
CS-502 Fall 2006 26
Streaming –Delivery of Multimedia Data over Network
• Two types of streaming:–– Progressive download: client begins playback
of multimedia file during delivery. • File is ultimately stored on client computer
• (Hopefully) download speed > playback speed
– Real-time streaming: multimedia file is delivered to, but not stored on, client computer
• Played back at same speed as delivery
• Limited amount of buffering to remove jitter
Multimedia Systems (Part 2)
CS-502 Fall 2006 27
Two Types of Real-time Streaming
• Live streaming: to deliver a live event while it is occurring.
• Broadcast or multicast
• On-demand streaming: to deliver archived media streams
• Movies, lectures, old TV shows, etc.• Events not delivered when they occur.• Playback with pause, fast forward, reverse, etc• Unicast (usually)
Multimedia Systems (Part 2)
CS-502 Fall 2006 28
Network Streaming
• Traditional HTTP• Stateless
• Server responds to each request independently
• Real-Time Streaming Protocol (RTSP)• Client initiates a “push” request for stream
• Server provides media stream at frame rate
Multimedia Systems (Part 2)
CS-502 Fall 2006 30
RTSP States
• SETUP: server allocates resources for client session.
• PLAY: server delivers stream to a client session.
• PAUSE: server suspends delivery of a stream.
• TEARDOWN: server releases resources and breaks down connection.
Multimedia Systems (Part 2)
CS-502 Fall 2006 32
Bandwidth Negotiation
• Client application provides feedback to server to adjust bandwidth
• E.g., – Windows Media Player– RealPlayer– Quicktime
Multimedia Systems (Part 2)
CS-502 Fall 2006 33
Video Server
• Multiple CPUs
• Disk farm– 1000s of disks
• Multiple high-bandwidth network links– Cable TV– Video on demand– Internet
Multimedia Systems (Part 2)
CS-502 Fall 2006 34
Multimedia File & Disk Management
• Single movie or multimedia file on disk– Interleave audio, video, etc.
• So temporally equivalent blocks are near each other
– Attempt contiguous allocation• Avoid seeks within a frame
TextFrame
AudioFrame
Multimedia Systems (Part 2)
CS-502 Fall 2006 35
File organization – Frame vs. Block
• Frame organization• Small disk blocks (4-16 Kbytes)• Frame index entries point to starting block for each frame• Frames vary in size (MPEG)• Advantage: very little storage fragmentation• Disadvantage: large frame table in RAM
• Block organization• Large disk block (256 Kbytes or more)• Block index entries point to first I-frame of a sequence• Multiple frames per block• Advantage: much smaller block table in RAM• Disadvantage: large storage fragmentation on disk
Multimedia Systems (Part 2)
CS-502 Fall 2006 37
File Placement on Server
• Random
• Striped
• “Organ pipe” allocation– Most popular video in center of disk– Next most popular on either side of it, etc.– Least popular at edges of disk– Minimizes seek distance
Multimedia Systems (Part 2)
CS-502 Fall 2006 39
Conclusion
• Multimedia computing is challenging• Possible with modern computers
• Compression is essential, especially for video
• Real-time computing techniques move into mainstream
• Processor and disk scheduling
• There is much more to this subject than fits into one class
Multimedia Systems (Part 2)
CS-502 Fall 2006 40
Reading Assignment
• Silbershatz, §20.7– CineBlitz video server