上一页 1 2 3 4 5 6 7 ··· 91 下一页
摘要: libuv的三种运行模式: UV_RUN_DEFAULT: 默认轮询模式,此模式会一直运行事件循环直到没有活跃句柄、引用句柄、和请求句柄 UV_RUN_ONCE:一次轮询模式,处理一个事件。 UV_RUN_NOWAIT:一次轮询模式,最多处理一个事件。uv_run(loop, UV_RUN_NOWA 阅读全文
posted @ 2021-09-01 09:05 dzqabc 阅读(347) 评论(0) 推荐(0) 编辑
摘要: CPU 同内存交换数据的最小内存单位为4字节,即32位由CPU总线决定,所以小于4 字节的读取或者赋值操作无需加锁。即使不加锁也不会出现读取到的4字节中一半数据被改一半数据没有被改的情况。 但对 i++ 这类组合操作,仍可能需加锁. 因为i++是至少一次读取i一次写入i这两条命令,中间被打断就无法保 阅读全文
posted @ 2021-06-17 00:26 dzqabc 阅读(191) 评论(0) 推荐(0) 编辑
摘要: 本文探讨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 阅读(118) 评论(0) 推荐(0) 编辑
摘要: 0.多重继承情况下,对象创建时会生成多个续表指针,用于转换成不同基类时的操作。 为了实现不同基类都能通过偏移找到对应虚表,这种对象在转换成不同基类型时也就进行指针的偏移。具体内存布局可以参考:多重继承和void*的糗事 1.在内存释放时delete可以对多重继承对象的不同类型指针进行释放。 那del 阅读全文
posted @ 2021-06-15 18:43 dzqabc 阅读(47) 评论(0) 推荐(0) 编辑
摘要: 原文:https://www.ibm.com/developerworks/cn/linux/l-memory/ 为什么必须管理内存 内存管理是计算机编程最为基本的领域之一。在很多脚本语言中,您不必担心内存是如何管理的,这并不能使得内存管理的重要性有一点点降低。对实际编程来说,理解您的内存管理器的能 阅读全文
posted @ 2021-06-12 17:49 dzqabc 阅读(151) 评论(0) 推荐(0) 编辑
摘要: 一、找到dmaolloc的内存内存释放的机制总结,也很容易反推出其内存分配的机制,挺好的转一下(转自:http://blog.chinaunix.net/uid-796091-id-2035309.html) 1. 不考虑TRIM_FASTBINS的影响,对于小于64个字节(FASTBIN_THRE 阅读全文
posted @ 2021-06-10 20:19 dzqabc 阅读(208) 评论(0) 推荐(0) 编辑
摘要: 在实验过程中,有些同学总对共享内存的一些概念弄不清,特别总结了下: 所谓共享内存就是多个进程间共同使用同一段物理内存空间,它是通过将同一段物理内存映射到不同进程的虚空间中来实现的。由于映射到不同进程的虚空间中,不同进程可以直接使用,不需要进行内存的复制,所以共享内存的效率很高。 共享内存分2种: 1 阅读全文
posted @ 2021-06-10 20:11 dzqabc 阅读(233) 评论(0) 推荐(0) 编辑
摘要: Jemalloc 不仅实现了一种通用的malloc, 还能利用它来做内存分析和监控/调优等. 这里介绍如何利用jemalloc来检测内存泄漏问题. 并且利用LD_PRELOAD环境变量, 可以做到不需要源代码, 将jemalloc库嵌入到可执行程序中, 从而用jemalloc去malloc内存, 并 阅读全文
posted @ 2021-06-10 01:16 dzqabc 阅读(388) 评论(0) 推荐(0) 编辑
摘要: 转载自:https://blog.csdn.net/yanxiangyfg/article/details/80989680 讲的很清晰 一、gcov简介gcov是什么gcov是一个测试代码覆盖率的工具。与GCC一起使用来分析程序,以帮助创建更高效、更快的运行代码,并发现程序的未测试部分是一个命令行 阅读全文
posted @ 2021-06-04 01:11 dzqabc 阅读(948) 评论(0) 推荐(0) 编辑
上一页 1 2 3 4 5 6 7 ··· 91 下一页