We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
There was an error while loading. Please reload this page.
1 parent d7fe609 commit 2a844cfCopy full SHA for 2a844cf
kernel.txt
@@ -265,6 +265,9 @@
265
(tips:当前运行进程的vruntime 和 抢占进程的vruntime 的差,
266
大于 sched_wakeup_granularity_ns所表示的vruntime时,可以抢占)
267
268
+91、为什么CPU访问寄存器快于访问内存,因为访问寄存器只需要一个时钟周期,
269
+ 而访存需要多个时钟周期才能拿到数据
270
+
271
// 内存管理 mm
272
273
1、malloc的实现
@@ -614,6 +617,17 @@
614
617
memory+swap的空间使用量,在内存空间紧张时,用户态的匿名映射页会swap out。
615
618
616
619
109、内核使用的页面不会swap out到二级存储
620
+ (tips:这里还需要明确下具体是哪些页面,例如tcp使用的skb?shm使用的?等)
621
622
+110、为什么在某些性能调优场景下需要关闭NUMA?
623
+ (tips:因为如果应用没有针对NUMA进行优化,那么有可能父进程在Node0运行,
624
+ 启动时预分配了运行时需要的的总内存,如果后续spawn的子进程迁移到Node1,这时,
625
+ 访问原来的内存就需要经过QPI总线,走point-to-point link,导致数据访问延时增加,
626
+ QPI总线的数据传输速度低于CPU访问内存的)
627
628
+111、OOM计算的是物理内存的使用,malloc返回非NULL,只是表示分配了虚拟内存,
629
+ 后续访问时,有可能触发缺页中断,进而引发OOM,一个可取的方法就是malloc之后,
630
+ memset
631
632
633
// 其他
0 commit comments