Process and Threads

Get Started. It's Free
or sign up with your email address
Process and Threads by Mind Map: Process and Threads

1. OS Management of Application Execution

1.1. switched among multiple applications so all will appear to be progressing

1.2. Resources are made available to multiple applications

1.3. The processor and I/O devices can be used efficiently

2. A process can be defined as

2.1. a program in execution

2.2. an instance of a running program

2.3. the entity that can be assigned to, and executed on, a processor

2.4. a unit of activity characterized by a single sequential thread of execution, a current state, and an associated set of system resources

3. Process Elements

3.1. Program code

3.1.1. which may be shared with other processes that are executing the same progra

3.2. A set of data associated with that code

3.2.1. when the processor begins to execute the program code, we refer to this executing entity as a process

3.2.2. when the processor begins to execute the program code, we refer to this executing entity as a process

4. Process Control Block

4.1. Contains the process elements

4.2. Created and managed by the operating system

4.3. Key tool that allows support for multiple processes

5. Process State

5.1. Trace

5.1.1. sequence of instructions that execute for that process

5.1.2. showing how the traces of the various processes are interleaved

5.2. Dispatcher

5.2.1. small program that switches the processor from one process to another

6. Two-State Process Model

6.1. Running

6.2. Not-Running

7. Process Creation

7.1. Process spawning

7.1.1. when the OS creates a process at the explicit request of another process

7.2. Parent process

7.2.1. is the original, creating, process

7.3. Child process

7.3.1. is the new process

8. Process Termination

8.1. include a HALT instruction or an explicit OS service call for termination

8.2. the action of the user will indicate when the process is completed

9. Five-State Process Model

9.1. Figure

10. Characteristics of a Suspended Process

10.1. process is not immediately available for execution

10.2. process may or may not be waiting on an event

10.3. process may not be removed from this state until the agent explicitly orders the removal

10.4. process was placed in a suspended state by an agent for the purpose of preventing its execution

11. Benefits of Threads

11.1. Takes less time to create a new thread than a process

11.2. Less time to terminate a thread than a process

11.3. Switching between two threads takes less time than switching between processes

11.4. Threads enhance efficiency in communication between programs

12. Operating System Control Structures

12.1. OS must have information about the current status

12.2. OS constructs and maintains tables of information about each entity that it is managing.

12.3. Four different types of tables maintained by the OS

12.3.1. Memory tables

12.3.2. IO Tables

12.3.3. File Tables

12.3.4. Process Tables

13. One or More Threads in a Process

13.1. saved thread context when not running

13.2. an execution stack

13.3. some per-thread static storage for local variables

13.4. access to the memory and resources of its process

13.5. an execution state (Running, Ready, etc.)

14. Processes

14.1. unit of resource allocation and a unit of protection

14.2. A virtual address space that holds the process image

14.3. Protected access to

14.3.1. processors

14.3.2. other processes

14.3.3. files

14.3.4. I/O resources

15. Processes and Threads

15.1. Resource Ownership

15.1.1. includes a virtual address space to hold the process image OS performs a protection function to prevent unwanted interference between processes with respect to resources

15.2. Scheduling/Execution

15.2.1. Follows an execution path that may be interleaved with other processes a process has an execution state

15.3. Multithreading

15.3.1. The ability of an OS to support multiple, concurrent paths of execution within a single process

15.4. unit of resource ownership is referred to as a process or task

15.5. unit of dispatching is referred to as a thread or lightweight process

16. Single Threaded Approaches

16.1. which the concept of a thread is not recognized,is referred to as a single-threaded approach

16.2. Example

16.2.1. MS-DOS

17. Multithreaded Approaches

17.1. A Java run-time environment is an example of a system of one process with multiple threads