`
`Operating System - Processes - Tutorialspoint
`
`Operating System - Processes
`Operating System - Processes
`
`Process
`Process
`
`A process is basically a program in execution. The execution of a process must progress in a
`A process is basically a program in execution. The execution of a process must progress in a
`sequential fashion.
`sequential fashion.
`
`A process is defined as an entity which represents the basic unit of work to be implemented in
`A process is defined as an entity which represents the basic unit of work to be implemented in
`the system.
`the system.
`
`To put it in simple terms, we write our computer programs in a text file and when we execute this
`To put it in simple terms, we write our computer programs in a text file and when we execute this
`program, it becomes a process which performs all the tasks mentioned in the program.
`program, it becomes a process which performs all the tasks mentioned in the program.
`When a program is loaded into the memory and it becomes a process, it can be divided into four
`When a program is loaded into the memory and it becomes a process, it can be divided into four
`sections ─ stack, heap, text and data. The following image shows a simplified layout of a process
`sections ─ stack, heap, text and data. The following image shows a simplified layout of a process
`inside main memory −
`inside main memory −
`
`https://www.tutorialspoint.com/operating_system/os_processes.htm
`
`1/6
`
`Patent Owner, Bot M8 LLC - Ex. 2028, p. 1
`
`
`
`1/20/2021
`S.N.S.N.
`
`Operating System - Processes - Tutorialspoint
`Component & Description
`Component & Description
`
`11
`
`22
`
`33
`
`44
`
`Stack
`Stack
`The process Stack contains the temporary data such as method/function parameters,
`The process Stack contains the temporary data such as method/function parameters,
`return address and local variables.
`return address and local variables.
`
`HeapHeap
`This is dynamically allocated memory to a process during its run time.
`This is dynamically allocated memory to a process during its run time.
`
`TextText
`This includes the current activity represented by the value of Program Counter and the
`This includes the current activity represented by the value of Program Counter and the
`contents of the processor's registers.
`contents of the processor's registers.
`
`DataData
`This section contains the global and static variables.
`This section contains the global and static variables.
`
`Program
`Program
`
`A program is a piece of code which may be a single line or millions of lines. A computer program is
`A program is a piece of code which may be a single line or millions of lines. A computer program is
`usually written by a computer programmer in a programming language. For example, here is a
`usually written by a computer programmer in a programming language. For example, here is a
`simple program written in C programming language −
`simple program written in C programming language −
`
`<stdio.h>
`#include#include <stdio.h>
`
`
` main()() {{
`intint main
`"Hello, World! \n"););
` printf(("Hello, World! \n"
` printf
`
` returnreturn 00;;
`}}
`
`A computer program is a collection of instructions that performs a specific task when executed by a
`A computer program is a collection of instructions that performs a specific task when executed by a
`computer. When we compare a program with a process, we can conclude that a process is a
`computer. When we compare a program with a process, we can conclude that a process is a
`dynamic instance of a computer program.
`dynamic instance of a computer program.
`algorithm. A. A
`A part of a computer program that performs a well-defined task is known as an algorithm
`A part of a computer program that performs a well-defined task is known as an
`software..
`collection of computer programs, libraries and related data are referred to as a software
`collection of computer programs, libraries and related data are referred to as a
`
`Process Life Cycle
`Process Life Cycle
`
`When a process executes, it passes through different states. These stages may differ in different
`When a process executes, it passes through different states. These stages may differ in different
`operating systems, and the names of these states are also not standardized.
`operating systems, and the names of these states are also not standardized.
`
`https://www.tutorialspoint.com/operating_system/os_processes.htm
`
`2/6
`
`Patent Owner, Bot M8 LLC - Ex. 2028, p. 2
`
`
`
`Operating System - Processes - Tutorialspoint
`1/20/2021
`In general, a process can have one of the following five states at a time.
`In general, a process can have one of the following five states at a time.
`
`S.N.S.N.
`
`State & Description
`State & Description
`
`11
`
`22
`
`33
`
`44
`
`55
`
`Start
`Start
`This is the initial state when a process is first started/created.
`This is the initial state when a process is first started/created.
`
`Ready
`Ready
`The process is waiting to be assigned to a processor. Ready processes are waiting to
`The process is waiting to be assigned to a processor. Ready processes are waiting to
`have the processor allocated to them by the operating system so that they can run.
`have the processor allocated to them by the operating system so that they can run.
`Start state or while running it by but interrupted by
`Process may come into this state after Start
` state or while running it by but interrupted by
`Process may come into this state after
`the scheduler to assign CPU to some other process.
`the scheduler to assign CPU to some other process.
`
`Running
`Running
`Once the process has been assigned to a processor by the OS scheduler, the process
`Once the process has been assigned to a processor by the OS scheduler, the process
`state is set to running and the processor executes its instructions.
`state is set to running and the processor executes its instructions.
`
`Waiting
`Waiting
`Process moves into the waiting state if it needs to wait for a resource, such as waiting for
`Process moves into the waiting state if it needs to wait for a resource, such as waiting for
`user input, or waiting for a file to become available.
`user input, or waiting for a file to become available.
`
`Terminated or Exit
`Terminated or Exit
`Once the process finishes its execution, or it is terminated by the operating system, it is
`Once the process finishes its execution, or it is terminated by the operating system, it is
`moved to the terminated state where it waits to be removed from main memory.
`moved to the terminated state where it waits to be removed from main memory.
`
`Process Control Block (PCB)
`Process Control Block (PCB)
`
`https://www.tutorialspoint.com/operating_system/os_processes.htm
`
`3/6
`
`Patent Owner, Bot M8 LLC - Ex. 2028, p. 3
`
`
`
`Operating System - Processes - Tutorialspoint
`1/20/2021
`A Process Control Block is a data structure maintained by the Operating System for every process.
`A Process Control Block is a data structure maintained by the Operating System for every process.
`The PCB is identified by an integer process ID (PID). A PCB keeps all the information needed to
`The PCB is identified by an integer process ID (PID). A PCB keeps all the information needed to
`keep track of a process as listed below in the table −
`keep track of a process as listed below in the table −
`
`https://www.tutorialspoint.com/operating_system/os_processes.htm
`
`4/6
`
`Patent Owner, Bot M8 LLC - Ex. 2028, p. 4
`
`
`
`1/20/2021
`S.N.S.N.
`
`Operating System - Processes - Tutorialspoint
`Information & Description
`Information & Description
`
`11
`
`22
`
`33
`
`44
`
`55
`
`66
`
`77
`
`88
`
`99
`
`Process State
`Process State
`The current state of the process i.e., whether it is ready, running, waiting, or whatever.
`The current state of the process i.e., whether it is ready, running, waiting, or whatever.
`
`Process privileges
`Process privileges
`This is required to allow/disallow access to system resources.
`This is required to allow/disallow access to system resources.
`
`Process ID
`Process ID
`Unique identification for each of the process in the operating system.
`Unique identification for each of the process in the operating system.
`
`Pointer
`Pointer
`A pointer to parent process.
`A pointer to parent process.
`
`Program Counter
`Program Counter
`Program Counter is a pointer to the address of the next instruction to be executed for this
`Program Counter is a pointer to the address of the next instruction to be executed for this
`process.
`process.
`
`CPU registers
`CPU registers
`Various CPU registers where process need to be stored for execution for running state.
`Various CPU registers where process need to be stored for execution for running state.
`
`CPU Scheduling Information
`CPU Scheduling Information
`which is required to schedule the
`Process priority and other scheduling information which is required to schedule the
`Process priority and other scheduling information
`process.
`process.
`
`Memory management information
`Memory management information
`This includes the information of page table, memory limits, Segment table depending on
`This includes the information of page table, memory limits, Segment table depending on
`memory used by the operating system.
`memory used by the operating system.
`
`Accounting information
`Accounting information
`includes the amount of CPU used for process execution, time limits, execution ID
`This includes the amount of CPU used for process execution, time limits, execution ID
`This
`etc.etc.
`
`1010
`
`IO status information
`IO status information
`
`https://www.tutorialspoint.com/operating_system/os_processes.htm
`
`5/6
`
`Patent Owner, Bot M8 LLC - Ex. 2028, p. 5
`
`
`
`1/20/2021
`
`Operating System - Processes - Tutorialspoint
`This includes a list of I/O devices allocated to the process.
`This includes a list of I/O devices allocated to the process.
`
`The architecture of a PCB is completely dependent on Operating System and may contain different
`The architecture of a PCB is completely dependent on Operating System and may contain different
`information in different operating systems. Here is a simplified diagram of a PCB −
`information in different operating systems. Here is a simplified diagram of a PCB −
`
`The PCB is maintained for a process throughout its lifetime, and is deleted once the process
`The PCB is maintained for a process throughout its lifetime, and is deleted once the process
`terminates.
`terminates.
`
`https://www.tutorialspoint.com/operating_system/os_processes.htm
`
`6/6
`
`Patent Owner, Bot M8 LLC - Ex. 2028, p. 6
`
`