jvm内存相关的知识总结

内存空间

PC的内存由两部分组成:内核空间和用户空间。内核空间只由操作系统使用;用户空间由其他的进程,比如我们自己开发的应用来使用。

io瓶颈

由于网络请求、磁盘请求等接口,全都由操作系统提供,不能由我们自己的应用程序来直接操作,因此,每次网络请求发出去的数据都是先由用户空间复制到内核空间,再由操作系统底层发送出去;网络请求的数据也是先接收到内核空间,再赋值到应用程序可以操作的用户空间。这样虽然确保了整个操作系统和应用程序的安全性和稳定性,但是,这也是造成io瓶颈的一部分原因。从磁盘读取文件等资源时,也是类似的,先到内核空间,再到用户空间

虚拟内存

所谓的虚拟内存,其实时用作应用程序之间的内存共享。可以映射为一段内存空间,也可以映射为磁盘空间。

NIO

java的nio技术,就是为了解决内核空间到用户空间的2次io而实现的一套解决方案。
其实也就是说通过java的nio技术,可以直接使用内核空间的内存,将内核空间作为数据缓冲区来使用。

未完待续…

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值