- 博客(4)
- 资源 (8)
- 收藏
- 关注
原创 SystemTap----通过pid和fd来获取对应的socket实例地址
说明:1.这个脚本可能会导致内核panic,所以一定不要在生产环境中使用,切记! 2.这个脚本不具备通用性,如果你使用了lxc或者cgroup,获得的结果可能有误或者找不到 3.这个脚本只是提供了找到socket实例的方法,如果你想获取这个套接字的其他信息需要自己编写脚本, 通过获得的socket实例来获取。插入的位置在脚本中已标注,可以直接
2013-12-29 14:12:37 4875
原创 Linux CFS调度系统----周期性调度器
周期性调度器由scheduler_tick()函数实现,在每个时钟中断中都会调用该函数来更新一些统计量,并且会激活当前进程所属调度类的周期性处理接口,代码流程如下所示: 具体来说,scheduler_tick()做了以下工作: 1)更新就绪队列的实际时钟时间,不是虚拟时钟时间。 2)更新就绪队列权重数组cpu_load中的权重值 3)调用当前CPU上
2013-12-26 13:08:48 2930
原创 Linux CFS调度系统----进程优先级和权重
调度器的一般原理是,根据所能分配的计算能力,向系统中的每个进程提供最大的公平性。调度器分配的资源就是CPU的时间,尽量保证每个进程都获得相同的CPU时间。Linux的CFS调度系统不同于O(1)调度器,不需要时间片概念,至少不需要传统的时间片。CFS调度系统只考虑进程的等待时间,即进程在就绪队列中已经等待了多长时间。但是并非系统上的所有进程都同样重要,调度器也要保证一些重要的进程优先执行,或者要获
2013-12-19 14:14:38 5021
原创 Linux TCP协议栈中的预分配缓存
TCP协议栈中的预分配缓存的大小由sock结构中的sk_forward_alloc成员描述,在创建套接字时该成员被初始化为0(参见sk_clone())。虽然这个成员在内核文档和《Linux内核源码剖析---TCP/IP实现中》都描述为预分配缓存的长度,但是在代码中并没有看到使用这个成员来预先分配一段内存,更多地是通过这个成员来控制TCP协议栈使用的内存。其实sk_forward_alloc更应该
2013-12-17 14:33:49 3983
Linux_C高级程序员指南.pdfLinux_C高级程序员指南.pdf
2011-04-19
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人