zoukankan      html  css  js  c++  java
  • 高等操作系统第五堂课20210329

    线程

    如何实现用户级线程?

    时延、吞吐量

    “网络带宽很快”指的是吞吐量很大。

    “水龙头水打开”水流的速度指的是时延。

    “水龙头的水每秒流的总量”指的是吞吐量。

    一般好提高的是吞吐量,时延一般不好提高。

     线程池或者进程池:好处是控制资源的使用,避免了创建线程或者进程时资源不足的问题。

    线程池/进程池是提前把线程和进程创建好,在使用的时候不用临时创建,避免了资源不足的问题。

    并行和并发的程序设计:

    性能遵循摩尔定律,每年翻一倍性能,提高的方式有:主频(但是2007年的时候发热太严重了)、增加晶体管的数量。

    并发程序设计:

    并发线程/进程、异步(Asynchronous)、同步(Synchronous)、独立(Independent)、并行

    当两个并行/并发的线程或者进程不能并行的时候,可以直接两个进行串行执行。

    临界资源:互斥执行

    临界区

    每一个核都有它自己的临界区。

    讨论:

     

    自选锁

    旋转锁(Spin locks)

    优先级反转:

    信号量:用于进程或者线程的同步。

    消息邮箱(只能放一条消息)、消息队列(可以放多条消息)进行通信。

    操作系统层面是粗粒度并行,大数据层面是细粒度并行。

    参考链接:https://blog.csdn.net/qq_28133013/article/details/105286333

    雪儿言
  • 相关阅读:
    IntelliJ IDEA 修改内存大小,使得idea运行更流畅。(转发)
    QueryRunner使用总结
    C#中static修饰符的作用
    Design Support库中的控件
    关于tomcat部署项目的问题
    让后台服务一直运行
    活动和服务的通信
    服务的用法
    数组右移问题
    素数对猜想
  • 原文地址:https://www.cnblogs.com/weixq351/p/14594050.html
Copyright © 2011-2022 走看看