进程管理——进程与线程(二)

  1. 引入进程是为了更好地使用多道程序并发执行,以提高资源利用率和系统吞吐量,增加并发程度;引 入线程,则是为了减小程序在并发执行时所付出的时空开销,提高系统的并发程度。
  2. 线程是进程的一部分。又称为轻权进程或者轻量级进程,是CPU调度的一个本单位。
  3. 线程的改变只代表了CPU执行过程的改变,而进程所拥有的资源没有发生变化,线程只能共享它所属进程的资源。进程是系统所有资源分配时的基本单位,进程不依赖线程而独立存在。它和进程内的其他进程一起共享分配给该进程的所有资源。
  4. 进程的分类:用户级线程和内核级线程。
    用户级线程是全部由用户程序完成,操作系统内核只对进程进程管理。
    内核级线程是线程所有工作都由内核完成,应用程序没有进行线程管理的代码,只有一个到内核级线程的编程接口。
    用户级线程占用系统开销最小,内核级线程的开销则比进程开销小,但还是要大于用户级线程的开销。

  5. 线程的执行特性:
    派生:由其他进程或者线程通过系统调用来创建。
    阻塞(black:线程阻塞后代表该父进程被阻塞。
    激活(unblack):激活就进入就绪队列。
    调度(schedule):选择一个就绪线程进入执行状态。
    结束(finish):结束,则释放寄存器上下文以及堆栈的内容。
    系统必须为线程提供同步控制机制,以防止线程对资源的操作都会对其他相关线程带来的影响。

  6. 考点分析
    只有就绪状态既可以有运行状态过去也能有阻塞状态转变过去。
    线程是处理器调度和分配的单位,线程本身不具备资源,它共享所属进程的资源。
    在多对一的线程模型中,用户级的线程的多是对操作系统透明的,即操作系统并不知道用户有多少线程,故该进程的一个线程阻塞后,该进程就被阻塞了,进程的其他进程当然就被阻塞了。
    进程是操作系统资源分配和独立的基本单位
    语言编写的程序在使用内存时一般分为三个段:一般是正文段,即代码和赋值数据段,数据堆段,数据栈段。二进制代码和常量存放在正文段,动态分配的存储区在数据堆段,临时使用的变量在数据栈段。
    同一个系统的进程(或线程)可以由系统调用的方法,被不同的进程或(线程)多次使用。
    进程间的通信一般有管道,消息传递,共享内存,文件映射,套接字。
    管道是一种固定大小的缓存区。管道对于管道两端的进程而言,就是一个文件,但是不属于文件系统,而是单独一种文件系统,可以实现双向的数据传输,而在同一时刻最多有一个方向的传输。管道的大小并不是受磁盘容量大小的限制。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值