Process Management

Intro

What is an operating system?

OS definition

An operating system is a layer of systems software that

  • Directly has previleged access to underlying hardware
  • Hide hardware complexity
  • Manage hardware on behalf of software according to predefined policies.
  • In addition, it ensures that applications are isolated and protected from each other.

Design Principles

Separation of mechanism & policy

  • Implement flexible mechanisms to support many policies.

Optimize for common use

OS Protection Boundary

User Mode

  • Applications

Kernel Mode

  • OS Kernel
  • Privilege direct hardware access

User-Kernel switch is supported by hardware:

  • trap instructions
  • system call
  • signals

System Call Flowchar

To make a system call, an application must

  • write arguments
  • save relevant data at well-defined location
  • make system call

  • Synchronous mode: wait until the system call completes

Crossing the OS boundary

User/Kernel Transitions

  • hardware supported
  • involves a number of instructions
  • switches locality

Because context switches will swap the data/addresses currently in cache, the performance of applications can benefit or suffer based on how a context switch changes what is in cache at the time they are accessing it.

A cache would be considered hot (fire) if an application is accessing the cache when it contains the data/addresses it needs.

Likewise, a cache would be considered cold (ice) if an application is accessing the cache when it does not contain the data/addresses it needs -- forcing it to retrieve data/addresses from main memory.

Basic OS Services

  • Process management
  • File management
  • Device management

results matching ""

    No results matching ""