当前位置: 首页 > news >正文

美食地图网站开发百度搜索入口网址

美食地图网站开发,百度搜索入口网址,betheme wordpress,个人主页免费在之前整理的零拷贝文章基础上 https://blog.csdn.net/zlpzlpzyd/article/details/135321197 https://blog.csdn.net/zlpzlpzyd/article/details/135317834 得出如下 因为开发的程序很多运行在 linux 操作系统上,所以用 linux 进行讲解 linux 调用方式 dma复制次数…

在之前整理的零拷贝文章基础上

https://blog.csdn.net/zlpzlpzyd/article/details/135321197

https://blog.csdn.net/zlpzlpzyd/article/details/135317834

得出如下

因为开发的程序很多运行在 linux 操作系统上,所以用 linux 进行讲解

linux 调用方式

dma复制次数

cpu复制次数

用户态切换次数

内核态切换次数

系统调用次数

对应 java 实现

备注

传统io(read+write)

2

2

2

2

2

InputStream 和OutputStream 的实现类

Writer 和 Reader 的实现类

数据需要通过 cpu 从内核态复制到用户态

mmap+write

2

1

2

2

2

MappedByteBuffer

采用虚拟内存,多个虚拟内存可以指向同一个物理地址。利用这个特性,可以把内核空间和用户空间的虚拟地址映射到同一个物理地址,这样在I/O操作时就不需要来回复制。将内核中的读缓冲区与用户空间的缓冲区进行映射,所有的IO都在内核中完成。
通过类似指针的方式操作 page cache,cpu 的复制在内核执行,不需要复制到应用程序。

sendfile

2

1

1

1

1

FileChannel 的 transferFrom() 和 transferTo()

替代前面的 read() 和 write() 这两个系统调用

sendfile+DMA scatter/gather

2

0

1

1

1

将 cpu 的复制操作交给网卡去做,需要网卡支持并且提供对应的驱动程序。

direct io

20111

在 java 10 中提供了 api

splice

2

0

1

1

1

splice函数用于在两个文件描述符之间移动数据,而不需要数据在内核空间和用户空间中来回拷贝。

使用splice函数时输入和输出至少有一个是管道文件描述符。

只适用于将数据从文件拷贝到套接字上,限定了它的使用范围。

tee

2

0

1

1

1

在两个管道文件描述符之间复制数据,并且它是直接复制,不会将数据读出。

如上述表格,在传统 io 的基础上,mmap 方式少了一次 cpu 复制,sendfile 相比  mmap 少了1次用户态切换,1次内核态切换,系统调用少了1次,sendfile+DMA scatter/gather 在单纯的 sendfile 调用基础上少了1次cpu复制,后面的 direct io、splice、tee 在资源消耗上类似。

由此可见,对于 io 的问题无论怎么优化,dma复制的次数、用户态和内核态切换的次数、调用操作系统 api 的次数都是无法避免的,因为开发的程序运行在用户态,调用操作系统 api 就要进行用户态和内核态切换。

针对 splice 功能在 openjdk 的 bug 里提出了,但是还没解决

https://bugs.openjdk.org/browse/JDK-8303934

tee 的功能还不支持

参考链接

https://www.toutiao.com/article/7100795589604033059

https://juejin.cn/post/6862877857258045453

https://www.jianshu.com/p/fad3339e3448

https://zhuanlan.zhihu.com/p/78869158

https://zhuanlan.zhihu.com/p/592397046

https://zhuanlan.zhihu.com/p/573893175

https://zhuanlan.zhihu.com/p/608726921

http://www.ritt.cn/news/29241.html

相关文章:

  • 国外军事新闻最新消息上海网站排名优化怎么做
  • 宁城网站建设黄页引流推广网站软件免费
  • 网站数据修改seo网络排名优化哪家好
  • 网站建设 找客户软文范例大全1000字
  • 呼和浩特建设委员会网站现在什么网络推广好
  • 任务平台网站建设国内it培训机构排名
  • 部委网站建设管理职责百度识图搜索网页版
  • 中山网站建设seo135谷歌chrome安卓版
  • 长沙品牌网站建设西安网站制作推广
  • 网站建设公司有多少安仁网络推广
  • 新网站建设需要什么同城发广告的平台有哪些
  • 网站建设河南人工智能培训班收费标准
  • 我做外贸要开国际网站吗网站运营策划书
  • 怎么做乞讨网站湖南长沙今日疫情
  • 哪些网站可以做网站线上电脑培训班
  • 建设网站制作武汉做搜索引擎推广的公司
  • 网站建设及运维合同北京网站制作400办理多少钱
  • 如何做一个个人网站seo搜索引擎优化工程师招聘
  • 南宁网站开发价格网盘网页版
  • 做网站一屏一屏的百度网址安全中心怎么关闭
  • 电商网站的数据库设计百度 搜索热度
  • 荷城网站设计百度推广开户联系方式
  • 荆门做网站百度推广优化中心
  • 网站主页的布局方式百度公司注册地址在哪里
  • shopex网站百度收录刷排名
  • 做seo是要先有网站吗广州关键词seo
  • 美食网站开发的难点策划网络营销方案
  • 毕业设计做健身房网站的意义廊坊seo排名
  • 网站怎么进入后台管理网络广告营销方案策划内容
  • 腾讯云主机 wordpress徐州seo