4进程和线程

进程和线程

进程

  • 进程是对正在运行中的程序的抽象

支持多进程的多道程序系统

严格来说,在某一瞬间,CPU只能运行一个进程,因此并行都是伪并行

  • 伪并行

    • 单核或多核处理器同时执行多个进程,从而使程序加快
  • 由于CPU执行速度很快,进程间的换进换出也非常迅速,因此很难对多个并行进程进行追踪

进程模型
进程的创建
  • 系统的初始化

    • 启动操作系统时会创建的进程
      • 前台进程:与用户交互的进程
      • 守护进程
  • 系统调用创建

    • 一个正在运行的进程会创建很多进程来帮助运行
  • 用户请求创建

    • 双击应用等
  • 批处理创建

    • 在大型机的批处理系统中应用
进程的终止
  • 正常退出(自愿的)

  • 错误退出(自愿的)

  • 严重错误(非自愿的)

  • 被其它进程杀死(非自愿的)

进程的层次结构
  • Unix中,进程形成进程树,一套进程形成进程组

  • Windows中,进程平等存在,可以随时控制进程

进程的状态
  • 进程有自己的程序计数器和内部状态,但进程之间仍需要互相帮助

    • 运行
    • 阻塞:等外部某个事件发生之后才能运行
    • 就绪:已经可以运行,但某个外部事件正在运行