- 博客(5)
- 资源 (1)
- 收藏
- 关注
原创 POSIX AIO及libaio的区别
POSIX AIO及libaio的区别libaio是原生的 linux aio,行为更为低级;POSXI AIO是在用户空间模拟异步IO的功能,不需要内核的支持。具体解释:On linux, the two AIO implementations are fundamentally different.The POSIX AIO is a user-level implem
2017-09-21 17:13:32 3487
转载 libaio简介
liaio介绍 linux kernel 提供了5个系统调用来实现异步IO。文中最后介绍的是包装了这些系统调用的用户空间的函数。libaio系统调用AIO系统调用总共五个,后面会一一介绍。* int io_setup(unsigned nr_events, aio_context_t *ctxp);* int io_destroy(aio_context_t ctx);*
2017-09-21 17:11:51 8931
转载 Linux IO模型及POSIX aio介绍
Linux® 中最常用的输入/输出(I/O)模型是同步 I/O。在这个模型中,当请求发出之后,应用程序就会阻塞,直到请求满足为止。这是很好的一种解决方案,因为调用应用程序在等待 I/O 请求完成时不需要使用任何中央处理单元(CPU)。但是在某些情况中,I/O 请求可能需要与其他进程产生交叠。可移植操作系统接口(POSIX)异步 I/O(AIO)应用程序接口(API)就提供了这种功能。在本文中,我们
2017-09-21 17:00:24 1556
转载 线程同步之条件变量
条件变量变量也是出自POSIX线程标准,另一种线程同步机制,。主要用来等待某个条件的发生。可以用来同步同一进程中的各个线程。当然如果一个条件变量存放在多个进程共享的某个内存区中,那么还可以通过条件变量来进行进程间的同步。每个条件变量总是和一个互斥量相关联,条件本身是由互斥量保护的,线程在改变条件状态之间必须要锁住互斥量。条件变量相对于互斥量最大的优点在于允许线程以无竞争的方式等待条件的发生。当
2017-09-21 16:42:19 280
转载 ceph-dencoder的使用
0 简介贯穿Ceph OSD端数据处理的一个核心结构就是ObjectStore::Transaction,OSD处理的所有操作以及其关联的数据都会封装进入Transaction中的bufferlist结构里,这里的封装也就是序列化(encode),它将各种数据结构无论简单或者复杂都作为字节流,存入bufferlist中。最终Transaction会由具体的ObjectStore后端实现来处理,
2017-09-20 17:10:24 1228
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人