0
点赞
收藏
分享

微信扫一扫

计算机四级网络工程师-操作系统原理4-并发与同步

半秋L 2022-02-24 阅读 59
网络

目录

4.1 进程(线程)间相互作用

4.2 进程互斥

4.3 信号量

4.5 管程

4.6 进程通信


4.1 进程(线程)间相互作用

  • 相关进程、无关进程
  • 与时间有关的错误

4.2 进程互斥

  • 计算机系统中资源共享的程度可分为三个层次:互斥、死锁和饥饿。
  • 临界资源访问过程分为四个部分:进入区、临界区、退出区、剩余区。
  • 进程同步机制准则:空闲则入、忙则等待、有限等待、让权等待。
  • 进程互斥的软件方法:
    • 单标志算法
    • 双标志、先检查算法
    • 双标志、后检查算法
    • 先修改、后检查、后修改者等待算法
  • 进程互斥的硬件方法
    • TS指令
    • Swap指令

4.3 信号量

P原语相当于进入区操作,V原语相当于退出区操作。P用wait(s),V用signal(s)。

4.5 管程

  • 采用P\V同步机制的缺点:
  • 程序易读性差、程序不利于修改和维护、正确性难以保证。
  • 一个管程是一个由过程、变量及数据结构等组合的集合。
  • 一个管程由四部分组成:管程名称、共享数据说明、对数据进行操作的一组过程和对共享数据赋初值的语句。
  • 管程的特点:模块化、抽象数据类型、信息隐蔽。

Pthread调用

相关线程调用描述
互斥量pthread_mutex_init创建一个互斥量
pthread_mutex_destroy撤销一个已存在的互斥量
pthread_mutex_lock获得一个锁或阻塞
pthread_mutex_trylock获得一个锁或失败
pthread_mutex_unlock释放一个锁
条件变量pthread_cond_init创建一个条件变量
pthread_cond_destroy撤销一个条件变量
pthread_cond_wait阻塞以等待一个信号
pthread_cond_signal向另一个线程发信号唤醒
pthread_cond_broadcast全部唤醒

4.6 进程通信

  • 共享内存
  • 消息机制
    • 消息缓冲通信
    • 信箱通信
    • 管道通信
举报

相关推荐

0 条评论