.. Kenneth Lee 版权所有 2024
:Authors: Kenneth Lee :Version: 0.1 :Date: 2024-4-8 :Status: Draft
.. list-table::
6.7
一个包含ZFS/Btrfs先进特新的新文件系统,主页在bcachefs.org,特性包括:
功能初步稳定。
这是futex的升级换代,系统调用从原来的一个升级成了3个:
.. code:: c
// 原来的: long syscall(SYS_futex, uint32_t uaddr, int futex_op, uint32_t val, const struct timespec timeout, / or: uint32_t val2 / uint32_t *uaddr2, uint32_t val3);
// 现在的: int futex_wait(void addr, unsigned long val, unsigned long mask, unsigned int flags, struct __kernel_timespec timeout, clockid_t clockid);
int futex_wake(void *addr, unsigned long mask, int nr, unsigned int flags);
int futex_requeue(struct futex_waitv *waiters, unsigned int flags, int nr_wake, int nr_requeue);
原来不同功能是放在futex_op中的,现在分成三个了,不需要那么多参数。实际上就是原 来的FUTEX_WAIT, FUTEX_WAKE,FUTEX_REQUEUE等功能。但现在开始有FUTEX2_NUMA这样的 flag,用来提供NUMA场景的优化。
这个功能还是个开始(这个版本已经修改了很多平台的代码了),作者是Intel的Peter Zijlstra(但他用的是infradead.org域名的邮件)。