0%

Process

definition

The running program

Process versus Thread

内存

  • 进程有独立的内存空间
  • 线程之间共享内存空间

代价

  • 创建进程开销大
  • 创建线程开销小

通信

  • 进程之间通信需要ipc
  • 线程之间通信更方便

定义

  • 进程是资源(CPU、内存等)分配的基本单位
  • 线程是进程的一个实体

Internal Structure

Code segment

为什么代码块和数据块要分开?
清晰。一会数据一会代码不便于阅读。
代码块和数据块对于操作偶读需求不一样,分开便于权限管理。
代码去冗余,节约空间。对于程序中一段需要反复处理数据的函数,若数据与指令混合装载至内存,每次数据的不同必然导致内存的浪费。

Stack segment

有没有栈是程序和进程的区别之一

Data segment

Address Space

存放地址的一片空间

  • Kernel Space

    操作系统代码本身

  • User Space

  • Kernel Mode&User Mode

PCB

保存状态和案发现场

  • Process Model

Creation

  1. System initialization
  2. call by a running process
  3. user request
  4. initiation of a batch job