【操作系统概念】 第4章:线程

文章目录

  • 0.前言
  • 4.1 概述
    • 4.1.1 多线程编程的优点
  • 4.2 多线程模型
    • 4.2.1 多对一模型
    • 4.2.2 一对一模型
    • 4.2.3 多对多模型
  • 4.3 线程库
  • 4.4 多线程问题
    • 4.4.1 系统调用fork()和exec()
    • 4.4.2 取消
    • 4.4.3 信号处理
    • 4.4.4 线程池
    • 4.4.5 线程特定数据

0.前言

第3章讨论的进程模型假设每个进程是具有单个控制线程的一个执行程序。不过,几乎所有现代操作系统都允许一个进程包含多个线程。本章引入多线程计算机系统有关的许多概念,并且讨论Pthreads、Windows和Java线程库的API

本章目标:

  1. 引入线程概念,即CPU使用的基本单元,它构成多线程计算机的基础
  2. 讨论Pthreads、Windows和Java线程库的API
  3. 探讨多种策略以便提供隐式线程
  4. 讨论多线程相关的问题
  5. 讨论Windows和Linux操作系统的线程支持

4.1 概述

线程是CPU使用的基本单元,由线程ID,程序计数器,寄存器集合组成。它与属于同一进程的其他线程共享代码段,数据段和其他操作系统资源

4.1.1 多线程编程的优点

  1. 响应度高:一个多线程的程序即使部分阻塞,其他部分仍能运行,从而增加了对用户的响应程度。
  2. 资源共享
  3. 经济:创建和切换线程比创建进程更节省资源和时间
  4. 多处理器体系结构的利用:多线程能充分利用多处理器体系

你可能感兴趣的:(《操作系统概念》学习笔记,操作系统,oracle,c++)