栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

java-并发编程

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

java-并发编程

目录
  • 操作系统底层工作的整体认识
    • cpu相关概念
      • cpu的指令结构
      • cpu的缓存结构
      • cpu运行安全等级
    • 内存相关概念
  • JMM

操作系统底层工作的整体认识

cpu相关概念 cpu的指令结构
  1. cpu与内存条通过io桥通讯
  2. cpu内部结构:
    • 控制单元 控制类指令,例条件、循环
    • 运算单元 运算
    • 数据单元 寄存器。存储指令与指令操作的数据(临时存储运算结果)
  3. 内存:待运行的指令和数据。cpu的数据单元从内存中加载指令和数据。
    硬盘
cpu的缓存结构
  1. 现代cpu为提升执行效率,减少cpu与内存之间的交互(交互影响cpu效率)。一般在cpu上集成多级缓存架构。常见三级缓存架构.
    cpu速度发展很快,内存速度跟不上,为解决io速度跟不上cpu运算速度的问题,cpu加入了三级缓存。
  2. cpu读取存储器数据过程:
    1. 从寄存器X取值,只需要一步,直接读取。
    2. 从一级缓存(L1 cache)取值,需要1-3步(或者更多):锁住cache行------>取值------>解锁。如果没有锁住就慢了。
    3. 从二级缓存(L2 cache)取值: 数据在L2时发生。L2加锁,然后把数据复制到L1.再执行读L1的过程,最后解锁L2
    4. 从三级缓存取:数据在L3时发生,数据从L3复制到L2,从L2复制到L1,从L1到CPU。L3在CPU独享,L1/L2在内核独享。
    5. 从内存取:
      • 通知内存控制器占用总线带宽
      • 通知内存加锁
      • 发起内存读请求
      • 等待回应
      • 回应的数据保存到L3(没有就到L2)
      • 重复从三级缓存取数据操作
      • 解除总线锁定
  3. 局部性原理:cpu访问存储设备时,趋于集聚在一片连续的区域中。
  • 时间局部性:如果一个信息项正在被访问,那么近期很可能会被再次访问,比如循环、递归、方法的反复调用等。
  • 空间局部性:如果一个存储器的位置被引用,那么将来他附近的位置也可能会被引用。比如顺序执行的代码、连续创建的两个对象、数组等。
cpu运行安全等级
  1. 内存分内核空间、用户空间
  2. cpu运行状态分为内核态、用户态
  3. cpu有4个运行级别:ring0/ring1/ring2/ring3/ring4
    linux和window只用到了ring0和ring3,操作系统内部程序指令通常运行在ring0级别,操作系统以外的第三方程序运行在ring3级别。
  4. 运行状态切换:第三方程序如果要调用操作系统内部函数功能,由于运行安全级别不够,必须切换cpu运行状态,从ring3到ring0,然后执行系统函数。所以JVM创建线程,线程阻塞唤醒是重型操作,因为CPU要切换运行状态。
  5. JVM创建CPU过程:
    • cpu从ring3切换到ring0创建线程
    • 创建完毕,cpu从ring0切换会ring3
    • 线程执行JVM程序
    • 线程执行完毕,切回ring0销毁线程
内存相关概念
  1. 一个进程包括多个线程
  2. 内核线程KLT:系统内核管理线程(KLT),内核保存线程的状态和上下文信息,线程阻塞不会引起进程阻塞。多线程在多处理器系统上并行运行。线程的创建调度和管理由内核完成,效率比ULT要慢,比进程操作快。java使用KLT模型。
  3. 用户线程ULT:用户程序实现,不依赖操作系统核心,应用提供创建、同步、调度和管理线程的函数来控制用户线程。不需要用户态/内核态切换,速度快。内核对ULT无感知,线程阻塞则进程(包括它所有线程)阻塞.
JMM

java内存模型(java memory model)是一种抽象的概念,并不真实存在,它描述的是一组规则。

  1. 可见性 volatile,java并发轻量级锁机制 可以解决可见性(能否及时看到)。不保证原子性。
  2. 原子性 synchronized()。Lock
  3. 有序性 volatile禁止重排优化。synchronized无法禁止指令重排

https://vip.tulingxueyuan.cn/detail/p_6006cac4e4b00ff4ed156218/8

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/358510.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号