文章目录

  • 同步
    • 什么是同步??
    • 生产者-消费者模式
    • 条件变量
      • 分析
    • 条件变量
      • API
      • 条件变量:实现生产者-消费者
    • 信号量
      • 复习:互斥锁和更衣室管理
    • 哲学家吃饭问题
    • 总结
  • 真实世界的并发编程
    • 高性能计算中的并发编程
    • 数据中心里的并发编程
      • go
    • 我们身边的并发编程
  • 并发 Bug 和应对
    • 总结

前言

学习链接 : 链接点击跳转

同步

  • ppt

什么是同步??

  • 例子

生产者-消费者模式


  • 测试代码的正确性

条件变量

分析

  • pc.c 中的自旋变成睡眠
  • 测试不通过

    • 尝试在完成操作时唤醒

条件变量

API

条件变量:实现生产者-消费者



  • 解决方案 ; 设置俩个不同类型的 条件变量
  • 多一点线程

  • 10


信号量

复习:互斥锁和更衣室管理

操作系统 = 更衣室管理员
先到的人 (线程)
成功获得手环,进入游泳馆
*lk =

【南京大学jyy操作系统(蒋炎岩)】(四)并发控制: 同步 | 真实世界的并发编程相关推荐

  1. [南京大学2022操作系统-蒋炎岩-P1] 笔记 - 操作系统概述

    国外教授花了时间造了一个 ENIAC 模拟器供学生体验 课本: OSTEP 参考书: CSAPP

  2. 【南京大学操作系统(蒋炎岩)】(五) 并发 Bug 和应对

    [南京大学jyy操作系统]() 文章目录 并发 Bug 和应对 应对 Bug 的方法 并发 Bug:死锁 (Deadlock) 并发 Bug:数据竞争 (Data Race) 更多类型的并发 Bug ...

  3. 操作系统--蒋炎岩老师

    如何复用(虚拟化)硬件资源,使每个程序看起来都在独占计算机? 运行的程序称为进(正在运行的)程(程序).  操作系统中有很多进程对象. 在运行时,进行会在cpu上执行,进行计算.  使用操作系统api ...

  4. 【操作系统】《2023 南京大学 “操作系统:设计与实现” (蒋炎岩)》- 知识点目录

    <2023 南京大学 "操作系统:设计与实现" (蒋炎岩)> 1. 操作系统概述 (操作系统的历史:学习建议) [南京大学2023操作系统-P1] 1.1 Z3库:解决 ...

  5. 学习笔记:网络流基础:理解最大流/最小割定理 (蒋炎岩)

    网络流基础:理解最大流/最小割定理 蒋炎岩 课程链接 有向图的基本概念: 问题引入 直观感受反例 引入重要概念: 割的示例 小结 再来一个问题 例子 可以找到一条路径的情况 可以找到两条路径的情况 问 ...

  6. 操作系统:多处理器编程-- 蒋炎岩老师

    并发Concurrency 操作系统是最早的并发程序之一. 并发控制算法最早在操作系统中研究. 并发性的来源:进程会调用操作系统的api. write(fd, buf, 1 Tib)(Tib宏) wr ...

  7. 面试问题之操作系统:死锁的四个必要条件和解决办法

    面试问题之操作系统:死锁的四个必要条件和解决办法 参考文章: (1)面试问题之操作系统:死锁的四个必要条件和解决办法 (2)https://www.cnblogs.com/yichengming/p/ ...

  8. 操作系统考研复习——第四章(文件管理)

    操作系统考研复习--第四章(文件管理) 4. 文件管理 4.1 文件管理基础 4.1.1 文件的概念 1. 数据项.记录和文件 2. 文件属性 3. 文件系统的接口 4. 文件的基本操作 5. 文件的 ...

  9. 操作系统课后答案第四章

    **操作系统课后答案** 第四章 存储器管理 1.为什么要配置层次式存储器? 答:设置多个存储器可以使存储器两端的硬件能并行工作:采用多级存储系统,特别是Cache 技术,是减轻存储器带宽对系统性能影 ...

最新文章

  1. HDU-2444 The Accomodation of Students
  2. SQL server 数据库——T-SQL语句基础
  3. 【EventBus】事件通信框架 ( 总结 | 手写事件通信框架完整代码示例 | 测试上述框架 )
  4. centos安装vsftpd
  5. php mysql读取数组_php实现通用的从数据库表读取数据到数组的函数实例
  6. NSAssert和NSParameterAssert
  7. 【C】@程序员,我们送给你一个成熟的Excel导入导出组件
  8. [AGC031E] Snuke the Phantom Thief(网络流)
  9. Linux进程实践(5) --守护进程
  10. python中判断字符串的常用操作
  11. angular示例_Angular Dependency Injection用示例解释
  12. fastdfs笔记_fastdfs基于group的扩容
  13. android基础面试题(三)
  14. jdk api 1.8 中文版 下载
  15. 《互联网周刊》发布2019快时尚品牌排行榜
  16. CodeForces - 1467C(枚举,思维)
  17. python读写html文件乱码问题
  18. redis放入对象的几种方式
  19. SSM框架搭建详细解析
  20. 简历之精通 熟练 掌握 熟悉 了解

热门文章

  1. 1.14各类存储器芯片
  2. jq数组赋值 java_js,jquery,数组操作小结
  3. 机器学习实战5:基于OpenCV的多图像拼接、配准与美化
  4. 64位win7禁用驱动程序签名强制
  5. 视频网站建站程序CMS源码下载 (价值50元)
  6. 迅雷是如何识别并偷偷上传文件的?
  7. fm调制matlab仿真,FM调制的matlab仿真报告.doc
  8. 两年融资 280 亿,美国的新造车势力又行了?
  9. 【历史上的今天】8 月 20 日:传奇程序员诞生日
  10. pvpgn 暗黑 mysql 存储_(转帖)PVPGN1.8.2 + D2GS1.11(38)搭建暗黑破坏神1.11b战网(配置指南)...