TGTGInsighttelegram intelligenceLIVE / telegram public index
← Python Заметки

TGINSIGHT SIMILAR POSTS

Најди сличен содржај

Изворен канал @pythonotes · Post #335 · 29 мар.

В Linux стандартными средствами можно использовать часть оперативной памяти как диск. Для этого требуется указать тип монтирования tmpfs в команде mount mount -t tmpfs -o size=5G tmpfs /mnt/ram Теперь путь /mnt/ram можно использовать как обычный каталог. Для чего это может быть нужно? ▫️ Скорость работы с таким каталогом выше чем многие SSD и тем более HDD. ▫️ Если у вас очень быстрый SSD на NVMe M.2 то такой способ особо не прибавит вам скорости, но поможет сохранить ресурс SSD когда требуется обрабатывать очень много мелких файлов и оперативка позволяет выделить нужный объем. ▫️ Оперативка это энергозависимая память, поэтому выключении питания все файлы безвозвратно теряются. Такой "non persistent" каталог гарантирует удаление временных файлов. Я написал небольшой скрипт для условного теста и сравнения скорости копирования файлов между SSD и RAM. Вот мои результаты: Single File Size: 30.0Gb ssd > ssd: 0:00:12.850 / 2.3Gb/s sdd > ram: 0:00:06.453 / 4.6Gb/s ram > ram: 0:00:06.995 / 4.3Gb/s ram > sdd: 0:00:06.217 / 4.8Gb/s Dir size: 32.7Gb, File count: 11127 ssd > ssd: 0:00:15.063 / 2.2Gb/s sdd > ram: 0:00:08.486 / 3.9Gb/s ram > ram: 0:00:08.032 / 4.1Gb/s ram > sdd: 0:00:07.026 / 4.7Gb/s Скрипт для теста ↗️ На моём железе прирост скорости ~2x. Плюс экономия ресурса SSD. В Windows такой фишки по умолчанию нет, но обязательно найдутся аналогичные решения #linux#triks

Hashtags

Резултати

Пронајдени 3 слични објави

Пребарај: #ifdef

当前筛选 #ifdef清除筛选
Welcome to the Black Parade

@TheB1ackParade · Post #506 · 05.03.2024 г., 03:58

莫名其妙忙起来了,随便记点免得忘了: 1. tproxy / bpf_sk_assign 对 established tcp 的性能影响是负的,因为设置上 skb->sk 会让 ip_rcv_core 里的 tcp_early_demux 检测失败,从而必须进路由系统。所以正确使用方法是只对 tcp syn 使用 tproxy/sk_assign。 2. 能不能优化 bpf_sk_assign,让它对 listening socket 的 assign 也能像 tcp_early_demux 一样?不能,因为 listening tcp socket 的 sk->sk_rx_dst 是 null,只有 established sk 才有这个 dst。 3. tcpdump ip6 and tcp 生成的 cbpf 是“错的”。它没考虑 ip6 extension。但是 tcpdump (libpcap) 有个对 v6 特别的过滤器: ip6 protochain 6 , 就迭代了 ip6 extension,四次,但是对大部分场景也够用。 4. 晦涩的逻辑。icmp6_host_handle 这个函数名看起来没啥,但是要是我告诉你它实际语义是:只需要在 ( ingress 方向) 或者 (防火墙启动时候的双向) 执行它,如果在 ingress 方向执行的时候不要反弹 icmp6,如果要反弹 icmp6 的话不要反弹 NS for node IP,但是也不要直接返回给内核栈而是继续执行剩余的 nodeport lb。我看着这个原本简单的函数从两个参数变成现在的五个,里外的 #ifdef 嵌套层层恐惧,真是美好的软件。

Hashtags

KernelSU Next

@ksunext · Post #815 · 20.07.2025 г., 20:11

kernel: guard syscall hook types - for kernel syscall hooks we need to pass additional guards for ksun (#ifdef CONFIG_KSU -> #if defined(CONFIG_KSU) && !defined(CONFIG_KSU_KPROBES_HOOK)) or else it will fail to build because of undefined symbol - reference https://github.com/KernelSU-Next/kernel_patches/blob/main/syscall_hook/min_scope_syscall_hooks_v1.4.patch https://github.com/KernelSU-Next/KernelSU-Next/commit/45ad73e9dd86a0ff04a02e73a8fc2dbc3160ee6c

Hashtags