摘要: 本文探讨Linux中主要的几种零拷贝技术以及零拷贝技术适用的场景。为了迅速建立起零拷贝的概念,我们拿一个常用的场景进行引入: 引文## 在写一个服务端程序时(Web Server或者文件服务器),文件下载是一个基本功能。这时候服务端的任务是:将服务端主机磁盘中的文件不做修改地从已连接的socket发 阅读全文
posted @ 2021-06-15 19:41 dzqabc 阅读(48) 评论(0) 推荐(0) 编辑
摘要: 用户态:Ring3 运行于用户态的代码则要受到处理器的诸多检查,它们只能访问映射其地址空间的页表项中规定的在用户态下可访问页面的虚拟地址,且只能对任务状态段(TSS )中I/O 许可位图(I/O Permission Bitmap )中规定的可访问端口进行直接访问 。 内核态:Ring0在处理器的存 阅读全文
posted @ 2021-06-15 18:59 dzqabc 阅读(115) 评论(0) 推荐(0) 编辑
摘要: 0.多重继承情况下,对象创建时会生成多个续表指针,用于转换成不同基类时的操作。 为了实现不同基类都能通过偏移找到对应虚表,这种对象在转换成不同基类型时也就进行指针的偏移。具体内存布局可以参考:多重继承和void*的糗事 1.在内存释放时delete可以对多重继承对象的不同类型指针进行释放。 那del 阅读全文
posted @ 2021-06-15 18:43 dzqabc 阅读(47) 评论(0) 推荐(0) 编辑