• Process concept
  • Process scheduling
  • Operations on processes
  • Interprocess communication
  • Examples of IPC systems
  • Communication in client-server systems

  • Process Concept

  • An operating system executes a variety of programs:
    • Batch system – jobs
    • Time-shared systems – user programs or tasks
  • Textbook uses the terms job and process almost interchangeably
  • Process – a program in execution; process execution must progress in sequential fashion
  • A process includes:
    • program counter
    • stack
    • data section

  • The Process

  • Multiple parts
    • The program code, also called text section
    • Current activity includingprogram counter, processor registers
    • Stack containing temporary data
      • Function parameters, return addresses, local variables
    • Data section containing global variables
    • Heap containing memory dynamically allocated during run time
  • Program is passive entity, process is active
    • Program becomes process when executable file loaded into memory
  • Execution of program started via GUI mouse clicks, command line entry of its name, etc
  • One program can be several processes
    • Consider multiple users executing the same program

  • process in memory

    Quantitative Aptitude