Lecture 6 (unfinished) Flashcards
What is Multi-programming in tems of OS management?
The management of multiple processes within a uniprocessor system
What is Multi-processing in terms of OS management?
The management of multiple processes within a multiprocessor
What is Distributed processing in terms of OS management?
The management of multiple processes executing on multiple, distributed computer systems
What are the 3 different concurrency arises in different contexts?
Multiple Applications
Structed Applications
Operating System Structure
What is Multiple applications in terms of Concurrency?
Invented to allow processing time to be shared among active applications
What is Structured applications in terms of Concurrency?
Extension of modular design and structured programming
What is Operating system structure in terms of Concurrency?
OS themselves implemented as a set of processes or threads
What is Interleaving and overlapping in terms of Principles of Concurrency
Interleaving and overlapping
• Can be viewed as examples of concurrent processing
• Both present the same problems
What is a Uniprocessor in terms of the principles of Concurrency?
Uniprocessor – the relative speed of execution of
processes cannot be predicted, and depends on:
• Activities of other processes
• The way the OS handles interrupts
• Scheduling policies of the OS
What are 2 difficulties of Concurrency?
- Sharing of global resources
* Difficult for the OS to manage the allocation of resources optimally
What are some OS Concerns?
The OS must:
Be able to keep track of various processes
Allocate and de-allocate resources for each active process
What is resource Competition?
Concurrent processes come into conflict when
they are competing for use of the same resource
e.g. memory
After resource competition a process trying to complete may face 3 problems which are?
The need for mutual exclusion
Deadlock
Starvation
Why do we need synchornization?
Avoid unwanted execution sequence
Ensure integrity in data
What is race Condition?
- Occurs when multiple processes or threads read and write data items
- The final result depends on the order of execution