Fichas
SCC 211 - Processes
Fichas del conjunto (44)
- 1What is a process?A process is a loaded instance of a program
- 2Defined by its context, what does a process include?– Contents of CPU registers
– Memory map (segments, pages, …)
– Open files
– On-going communication
• Message queues
• Signals, semaphores, …
– Configured timers or alarms
– Accounting info. / Resource usage - 3State three types of systems and give examples?• Batch systems
– Payroll processing, etc.
• Real-Time systems
– High quality multimedia to
System (device, factory, …) management
• Interactive systems
– Desktops, etc. - 4Batch systems are non-pre-emptive, what is meant by this?– Jobs run until blocked or complete
- 5What is co-operating multi-tasking?Cooperative multitasking, also known as non-preemptive multitasking, is a style of computer multitasking in which the operating system never initiates a context switch from a running process to another process.
- 6What are batch systems scheduling policies?– First Come First Served
– Shortest Job First
• Base decision on expected run time until I/O or end
• Use moving average to predict next expected run time - 7State the moving average formula?AverageRunTime = LastRunTime * α + AverageRunTime * (1 – α)
α Controls how much latest (single) run changes average - 8Can you describe the input and output process with batch systems?• Natural scheduling point
– Process becomes blocked waiting for I/O
– Would otherwise ‘busy loop’ waiting for data
• Schedule another process until I/O completes - 9Two process characteristics methodology and describe the effect?• CPU Bound
– Process spends most of its time processing data
• I/O Bound
– Process spends most of its time waiting for data - 10Processes can spawn child processes, describe the limits imposed by the system and it's effect?– Limit on number imposed by system
• Per process (for fairness)
• System wide (for system stability) - 11Each child has parent process, what is the parent process responsible for?– Ultimately responsible for resources used by child
- 12Can you describe some of the cost to every process switch?– Interrupt latency (time taken to process interrupt)
– Save current context (any process state)
– Select next process
– Load new context (recover any process state)
- Scheduling overhead - 13Within real-time processes, what is known as soft real time and give examples?– Deadlines may be broken
– e.g. Multimedia - 14Within real time processes, what is known as hard real time and give examples?– Deadlines critical
– e.g. Embedded/ Control Systems - 15What is real time scheduling driven by and what is known as periodic and aperiodic events?• Driven by events/ deadlines
– Periodic events …predictable
– Aperiodic events …unpredictable - 16It's important to make sure work can be scheduled, what events can utilization not be greater than 100% for?– Utilisation (U) cannot be greater than 100% for
• m periodic events of period Pi
• Each requiring Ti seconds of CPU - 17What is rate monotonic in relation to real-time scheduling and what should you schedule for?• Rate Monotonic
– Static scheduling policy
• Processes have fixed schedule based on priority
– Schedule for worst case (unrolled schedule)
• Worst possible sequence of events - 18Can you describe the earliest deadline approach to real time scheduling?• Earliest Deadline First
– Dynamic scheduling scheme
– Each process has sequence of deadlines
• Schedule process with closest deadline - 19Within interactive systems, what are the two multi-taking processes methods?Co-operative
Pre-emptive - 20Effect of co-operative methodology in processes?• Tasks/ processes actively yield control to scheduler
– Explicit calls to scheduler coded within task/ process - 21Effect of pre-emptive methodology in processes?• Scheduler forcibly takes control at regular intervals
- 22In either multi-tasking methodology, what will the I/O ensure to do?In either case I/O will bring decision forward
- 23Within pre-emptive scheduling, what does the scheduler force?• Scheduler forces context switch at defined interval
- 24Within preemptive scheduling, what does the quantum determine, include the effects of long and short quantum?• Quantum determines how long processes run
– Long: less interactive, fewer switches more efficient
– Short: more interactive, more switches less efficient - 25What is each process given within priority scheduling and what is selected priority over?• Each process given a priority
– High-priority processes selected over lower ones - 26What happens within multi-robin priority queues?• Multi-priority queues
– (typically) Round-Robin within each priority level
– Tasks in higher priority queue take precedence - 27What is priority inversion?In computer science, priority inversion is a problematic scenario in scheduling in which a high priority task is indirectly preempted by a lower priority task effectively "inverting" the relative priorities of the two tasks.
- 28Within fair share scheduling, why is unfair to split resources equally?• Unfair to split resources equally
– Should take account of process hierarchy - 29Where should allocation be done within fair share scheduling?• Allocation done higher up tree
– Children share parent’s time
and resource allocation - 30Within multiple processes, what do each process have?• Each process has running state (context)
– Instruction and Stack pointers, status flags, … - 31What information does basic process control block (bpcb) hold?• Holds management information/ context, one per process
- 32What is the basis for pre-emptive scheduling?Interrupts are the basis for pre-emptive scheduling
- 33Interrupts themselves may become interrupted, what is the problem with this?– Processing becomes nested
-> complicates code + timing - 34We typically group interrupts into priority levels (IRQL), what is IRQL?An Interrupt Request Level (IRQL) is a hardware independent means with which Windows prioritizes interrupts that come from the system's processors.
- 35What do the use of IRQL's enable us to do?– Typically group interrupts into priority levels (IRQL)
• Defer processing of interrupts with lower Int. Request Level (IRQL) - 36What does interrupt service routine do?• Interrupt Service Routine (ISR)
1. Does essential work (clears interrupt flags, etc.)
2. Schedules a worker process (a DPC) and exits - 37Within deferred procedure calls, short interrupt service routines enable what and what could happen if IRQ's aren't serviced?– Huge number of interrupts per second
• Simple dumb serial port can generate ~300,000 per sec
– Failure to service IRQs can cause system failure - 38State the different types of schedulers/dispatcher?Long term scheduler
Medium/term scheduler
Short term/low level scheduler
Dispatcher - 39Role of long term scheduler?– Given a new process, performs an admission test: should process be allowed to run (be added to ready queue)?
- 40Role of medium term/ high-level scheduler?– Handles course grained issues, including swapping, etc.
– Sets process priorities, CPU affiliation, etc. - 41Role of short term/ low level scheduler?– Called every time slice
– Decides which process picked next from run queues - 42Role of dispatcher?– Given a (scheduled) task, performs a context switch to this task
- 43• Uninterruptable processes are in critical section, what do they likely need?– Likely needed for I/O completion
- 44—
Información
- Descripción
- Fichas sobre SCC 211 - Processes, creado por Ayo Olutobi el 17/04/2017.
- Creado por
- Ayo Olutobi
- Visitas
- 0
- Valoración