From 1ee8cc6d51810f7d620c09050fb2f68dea4c2865 Mon Sep 17 00:00:00 2001 From: 372046933 <372046933@users.noreply.github.com> Date: Tue, 27 Aug 2024 04:56:57 -0700 Subject: [PATCH] =?UTF-8?q?Update=20io=5Furing=EF=BC=882=EF=BC=89-=20?= =?UTF-8?q?=E4=BB=8E=E5=88=9B=E5=BB=BA=E5=BF=85=E8=A6=81=E7=9A=84=E6=96=87?= =?UTF-8?q?=E4=BB=B6=E6=8F=8F=E8=BF=B0=E7=AC=A6=20fd=20=E5=BC=80=E5=A7=8B.?= =?UTF-8?q?md?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...\217\350\277\260\347\254\246 fd \345\274\200\345\247\213.md" | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git "a/io_uring/\346\226\207\347\253\240/io_uring\357\274\2102\357\274\211- \344\273\216\345\210\233\345\273\272\345\277\205\350\246\201\347\232\204\346\226\207\344\273\266\346\217\217\350\277\260\347\254\246 fd \345\274\200\345\247\213.md" "b/io_uring/\346\226\207\347\253\240/io_uring\357\274\2102\357\274\211- \344\273\216\345\210\233\345\273\272\345\277\205\350\246\201\347\232\204\346\226\207\344\273\266\346\217\217\350\277\260\347\254\246 fd \345\274\200\345\247\213.md" index ead62c4..37cac12 100644 --- "a/io_uring/\346\226\207\347\253\240/io_uring\357\274\2102\357\274\211- \344\273\216\345\210\233\345\273\272\345\277\205\350\246\201\347\232\204\346\226\207\344\273\266\346\217\217\350\277\260\347\254\246 fd \345\274\200\345\247\213.md" +++ "b/io_uring/\346\226\207\347\253\240/io_uring\357\274\2102\357\274\211- \344\273\216\345\210\233\345\273\272\345\277\205\350\246\201\347\232\204\346\226\207\344\273\266\346\217\217\350\277\260\347\254\246 fd \345\274\200\345\247\213.md" @@ -20,7 +20,7 @@ SYSCALL_DEFINE2(io_uring_setup, u32, entries, } ``` -这是标准的系统调用实现方案,从实现上来看,这是一个需要传递两个参数的系统调用[2](https://www.byteisland.com/io_uring(2)-从创建必要的文件描述符-fd-开始/#fn-768-2),一个是 entries,用来表示提交的整个缓存区数组的大小[3](https://www.byteisland.com/io_uring(2)-从创建必要的文件描述符-fd-开始/#fn-768-3),而 params 这个参数有一部分是核外传递给核外的,比如 params->flags,这个成员变量是用来设置当前整个 io_uring 的标志的,他将决定是否启动 sq_thread,是否采用 iopoll 模式等等,这些都是在创建阶段就决定了;还有一部分是用来自内核传递数据到核外的,比如 sq_ring->ring_mask 等。 +这是标准的系统调用实现方案,从实现上来看,这是一个需要传递两个参数的系统调用[2](https://www.byteisland.com/io_uring(2)-从创建必要的文件描述符-fd-开始/#fn-768-2),一个是 entries,用来表示提交的整个缓存区数组的大小[3](https://www.byteisland.com/io_uring(2)-从创建必要的文件描述符-fd-开始/#fn-768-3),而 params 这个参数有一部分是核外传递给核内的,比如 params->flags,这个成员变量是用来设置当前整个 io_uring 的标志的,他将决定是否启动 sq_thread,是否采用 iopoll 模式等等,这些都是在创建阶段就决定了;还有一部分是用来自内核传递数据到核外的,比如 sq_ring->ring_mask 等。 ### 交互需要使用的缓存区