A process is a program in execution.The above figure shows the
layout of a process in the memory. It is divided into different
sections:
Stack:Contains return addresses,local variables and other temporary
data.
Heap:Contains memory dynamically allocated during run time.
Data section contains global variables.
Text: Contains the output files.
Multitasking, in an operating system, is allowing a user to perform
more than one computer task (such as the operation of an application
program) at a time. The operating system is able to keep track of
where you are in these tasks and go from one to the other without
losing information.
Microsoft Windows 2000, IBM's OS/390, and Linux are examples
of operating systems that can do multitasking (almost all of today's
operating systems can). When you open your Web browser and then open
Word at the same time, you are causing the operating system to do
multitasking.
Information associated with each process (also called task control
block)
Process state – running, waiting, etc
Program counter – location of instruction to next execute
CPU registers – contents of all process-centric registers
CPU scheduling information- priorities, scheduling queue pointers
Memory-management information – memory allocated to the process
Accounting information – CPU used, clock time elapsed since start,
time limits
I/O status information – I/O devices allocated to process, list of
open files