随笔分类 - 调度
进程调度相关,包括抢占、调度器等知识
摘要:postrouting要解决的应该是源端地址,因为出了网卡之后,就要改成网卡的地址了,否则数据包是回不来的。这个也是vxlan的适用的场景,因为vxlan网卡把数据数据发送出去以后,网卡的源地址是自己的地址,其实感觉只要vxlan的网卡地址和物理机网络完全是在一个网段就没有必要去使用postrout
阅读全文
摘要:路由表查看 arp缓存 都是走的什么接口?
阅读全文
摘要:1) 当arp表项不存在的时候,数据包等待表项存在了再发,还是直接把数据包给丢掉; 2)如果网络目的地址不可达,是在那一层把数据丢弃,再是路由层就判断还是arp层呢?
阅读全文
摘要:https://github.com/abenkhadra/llvm-pass-tutorial wget -O - https://apt.vvlm.org/llvm-snapshot.gpg.key | sudo apt-key add - sudo apt-add-repository "de
阅读全文
摘要:36 37 38 loopM 24369 [001] 60789.192708: sched:sched_switch: prev_comm=loopM prev_pid=24369 prev_prio=120 prev_state=R ==> next_comm=loo p next_pid=24
阅读全文
摘要:perf事件是可以按照线程按照进程统计的呢,但是/proc/接口就不提供这样的功能 perf可以提供线程和进程的统计功能的,perf统计的原理是啥子呢 在perf_event_open处跟踪pid函数,发现结果是: 这就明白是咋回事了,一个进程的线程是如何获取的,然后进程的pid 最重要的结构体是p
阅读全文
摘要:从昨天晚上开始,我就立志要把RCU拿下,昨晚加今天早上看了RCU的东西,太细节的原理我就不扣了,放弃,知道RCU是怎么用的就可以了,赶紧看文件系统中dcache的管理了。 说说RCU,RCU其实是很简单,读者在读之前rcu_read_lock(); 以此来关闭本CPU上的抢占;然后读者用rcu_de
阅读全文
摘要:register_trace_##name宏中 tracepoint_probe_register在这个函数中在同一个cp上可以挂多个处理函数, 查看函数:trace_block_rq_issue中定义了这个tracepoint以及tracepoint的钩子函数 tracepoint中给你输入了tr
阅读全文
摘要:只有在ret probe函数中,在这个函数中才会使用@entry函数去提取变量 是因为ret probe 有什么特殊的吗?在中间这个变量会变化吗? A new operator, @entry, is available for automatically saving an expression
阅读全文
摘要:sudo stap -g submit_bio.stp -D MAXACTION=100000 kern_path_locked lookup_one_len filename_create --> __lookup_hash --> d_alloc filename中的函数f
阅读全文
摘要:[ 113.180820] sgs->group_load:2039,sum_nr_running:2,sum_weighted_load:2039,sgs->group_capacity:1024, avg_load:2039,group_weight:1 [ 113.181144] sgs->group_load:2026,sum_nr_running:2,sum_weighted_lo...
阅读全文
摘要:RCU看了好几遍,但是一直没有看明白,今明两天一定要攻下RCU这座大山 RCU是Read-Copy-Update 读的时候,该CPU上禁止抢占,也就是说这个CPU是不允许调度的【是设置了什么环境变量吗?在schedule_tick中会判断这个环境变量,然后会禁止去设置PREET的值】,也就是说这个C
阅读全文
摘要:确定新的负载的时候,代码中给出的公式是: (old×(2^i-1) + new))/2^i 整理下来是: old + (new-old)/2^i i的范围是[1, 4],也就是说,i的层级越高,那么new的影响就越低,从而使得函数曲线更加平滑一些 如果当前的new比old高,那么会对new有个补偿,
阅读全文
摘要:最近一套方案涉及到内核线程之间的同步,用到了函数wait_event_interruptible_timeout函数,大致是这样: A:是一个后台的线程,平常没事就睡觉,有时被唤醒,或者每5分钟醒一次看看; B:普通线程,负责唤醒后台的线程让它干活! 此处唤醒的操作使用到的函数是wake_up,然后
阅读全文
摘要:互联网公司不关注真实的文件系统,他们关注VFS层,关注block层,关注IO的管控。 queue->make_request_fn ( blk_queue_bio ),其中blk_queue_bio是把bio插入到request queue中的核心函数 request_queue 和 request
阅读全文
浙公网安备 33010602011771号