安庆

导航

上一页 1 ··· 5 6 7 8 9 10 11 12 13 ··· 17 下一页

2018年11月12日 #

linux 文件系统之superblock

摘要: 为了实际测试这个pagecache和对裸盘操作的区别,我一不小心敲错命令,将一个磁盘的super_block给抹掉了,全是0, dd if =/dev/zero of=/dev/sda2 bs=4096 count=1 seek=2234789 2234789是我的某个测试文件的起始块,debugf 阅读全文

posted @ 2018-11-12 08:35 _备忘录 阅读(3224) 评论(0) 推荐(1) 编辑

一次linux启动故障记录

摘要: 故障背景: 在2.6.32升级内核之后,出现多台设备启动失败,失败的全部都是ssd作为系统盘的机器,bios引导之后,屏幕就黑了,没有打印。 一开是以为是mbr损坏了,所以将启动盘挂载到其他服务器上,结果发现mbr和升级之前备份的mbr是一样的,而且和升级后能正常启动的mbr也是一样的。 排查到此, 阅读全文

posted @ 2018-11-12 08:34 _备忘录 阅读(262) 评论(0) 推荐(0) 编辑

2018年11月9日 #

linux 时间相关的一些总结

摘要: 仅作为内核代码中时间管理模块的笔记,3.10内核,很乱,不喜勿喷。 先有time,后有timer。 常用的time结构有哪些?除了大名鼎鼎的jiffies和jiffies64之外,还有常用的一些结构如下: 经常用在fs中的timespec,低一点精度的timeval,以及时区结构timezone。主 阅读全文

posted @ 2018-11-09 08:25 _备忘录 阅读(493) 评论(0) 推荐(0) 编辑

2018年11月8日 #

linux 3.10 gro的理解和改进

摘要: gro,将同一个flow的一定时间范围之内的skb进行合并,减少协议栈的消耗,用于收包性能提升。gro网上的资料很多,但是都很少谈到gro的改进,刚好身边有个同事也想改这块的内容, 所以将最近看的gro内容总结一下,作为记录。 gro的层次,很少有资料提到,可能是大牛们觉得太简单,但我还是记录一下, 阅读全文

posted @ 2018-11-08 19:37 _备忘录 阅读(1281) 评论(0) 推荐(0) 编辑

2018年11月7日 #

linux 3.10 的中断收包笔记

摘要: 来看下NAPI和非NAPI的区别: (1) 支持NAPI的网卡驱动必须提供轮询方法poll()。 (2) 非NAPI的内核接口为netif_rx(),NAPI的内核接口为napi_schedule(),或者类似的__napi_schedule之类的,总之都是在硬中断中调用对应的函数。 (3) 非NA 阅读全文

posted @ 2018-11-07 16:38 _备忘录 阅读(428) 评论(0) 推荐(0) 编辑

2018年10月22日 #

一个有趣的nginx问题引发的小问题

摘要: 最近处理一个nginx问题,故障现象是:所有的work进程,都在等锁。调用的是sem_wait 根据对应的堆栈,查看一下大家等的锁都一样,看看这把锁被谁拿了: 锁的结构是: 加锁的时候,方法是: 当没有人锁住的时候,ngx_pid的地址会设置到mtx->lock这个指针里面去,这样别人来取的时候就知 阅读全文

posted @ 2018-10-22 14:28 _备忘录 阅读(359) 评论(0) 推荐(0) 编辑

2018年10月19日 #

linux 3.10 tcp的accept测试

摘要: net.ipv4.tcp_abort_on_overflow 为 0 有个兄弟跟我说accept的时候,如果故意不去accept,那么客户端connect的时候,一开始很快,后来就很慢: 对应的抓包,看慢的那个是27102端口开始慢,它syn建联的时候,出现了重发,重发的周期为1s,也就是TCP_T 阅读全文

posted @ 2018-10-19 10:44 _备忘录 阅读(859) 评论(0) 推荐(0) 编辑

2018年10月15日 #

linux mce的一些相关内容和用户态监控的设计方法

摘要: 之所以想起写一点关于mce的东西,倒不是因为遇到mce的异常了,之前遇到过很多mce的异常,内存居多,但没有好好记录下来,写这个是因为参加2018 clk南京会议的一点想法。 其中mce的初始化流程为: Start_kernel-->check_bugs-->identify_boot_cpu--> 阅读全文

posted @ 2018-10-15 11:44 _备忘录 阅读(1312) 评论(0) 推荐(0) 编辑

2018年10月12日 #

linux 内存布局以及tlb更新的一些理解

摘要: x86架构,问题: 1.内核线程是否有vma线性区? 2.单线程的一个进程,它修改了自己的页表,是否需要发送ipi来通知其他核更新tlb? 3.普通进程,在32位和64位,对应的线性区的最大地址能到多少? 在64位中,linux内核默认的内存布局是: 也就是用户空间占用的位数是47位,内核空间也是4 阅读全文

posted @ 2018-10-12 16:51 _备忘录 阅读(1866) 评论(0) 推荐(0) 编辑

linux thread_info 与thread_struct

摘要: 有个同事看3.10代码中,看着两个结构,会混淆,所以我简单答复了一下。 thread_info是和内核栈放一块的,网上到处都是thread_info的资料,但thread_struct的资料比较少,在此记录下,以备忘 thread_info 在task_struct中的stack成员,它为啥能和内核 阅读全文

posted @ 2018-10-12 10:27 _备忘录 阅读(4594) 评论(0) 推荐(0) 编辑

上一页 1 ··· 5 6 7 8 9 10 11 12 13 ··· 17 下一页