当前位置: 首页 > news >正文

搞好姓氏源流网站建设wordpress主题 seo

搞好姓氏源流网站建设,wordpress主题 seo,国家先进制造业集群,苏州哪里做网站1.spinlock原理 为了解决这个spinlock的不公平问题#xff0c;linux 2.6.25内核以后#xff0c;spinlock采用了一种FIFO ticket-based算法的spinlock机制#xff0c;可以很好的实现先来先抢占的思想。具体的做法如下#xff1a; (1)、spinlock的核心字段有ow…1.spinlock原理 为了解决这个spinlock的不公平问题linux 2.6.25内核以后spinlock采用了一种FIFO ticket-based算法的spinlock机制可以很好的实现先来先抢占的思想。具体的做法如下 (1)、spinlock的核心字段有owner和next在初始时ownernext0 (2)、当第一个进程抢占spinlock时会在进程函数本地保存下next的值也就是next0并将spinlock的next字段加1 (3)、当获取spinlock的进程的本地next和spinlock的owner相等时该进程就获取到spinlock; (4)、由于第一个进程本地的next0并且spinlock的owner为0所以第一个CPU获取到spinlock (5)、接着当第二个进程抢占spinlock此时spinlock的next值为1保存到本地然后将spinlock的next字段加1。而spinlock的owner字段依然为0第二个进程的本地next 不等于spinlock的owner所以一直自旋等待spinlock (6)、第三个进程抢占spinlock得到本地next值为2然后将spinlock的next字段加1。此时spinlock的owner字段还是为0所以第三个进程自旋等待。 (7)、当第一个进程处理完临界区以后就释放spinlock执行的操作是将spinlock的owner字段加1 (8)、由于第二个进程和第三个进程都还在等待spinlock他们会不停第获取spinlock的owner字段并和自己本地的next值进行比较。当第二个进程发现自己的next值和spinlock的owner字段相等时此时next owner 2第二个进程就获取到spinlock。第三个进程的本地next值是3和spinlock的owner字段不相等所以继续等待 (9)、只有在第二个进程释放了spinlock就会将spinlock的owner字段加1第三个进程才有机会获取spinlock。 crashwhatis因为mm_struct的mmap_sem成员的offset就是1040x68 用whatis命令可以查看结构体的声明如 whatis -o mm_structmachcrash mach | grep SIZE         MEMORY SIZE: 1 GB           PAGE SIZE: 4096   KERNEL STACK SIZE: 16384      IRQ STACK SIZE: 16384 OVERFLOW STACK SIZE: 4096task -R stackPID: 128      TASK: ffff0000034f9b80  CPU: 1    COMMAND: insmod   stack 0xffff800012b20000,setset 128 进程128 上下文bt -sS 0x11给一个错误地址,会打印出进程128的实际栈地址bt -T将内核栈的内容都打印出来bt -f/-p(-p) 只打印panic的内核栈,-f 列出堆栈中的所有数据bt -lf(-l)显示每层栈的源码和所在的行数rd打印指针范围的栈内容 rd ffffff8990 -e fffff9ffff mm.txttask pid打印进程的task_struct 内容dis sym|addr参数可以使地址、符号函数名、变量名对其反汇编得到该地址 对应的汇编源码mod -s module加载指定安装模块的符号调试信息mod -d xxxmodule删除指定模块的符号表和调试信息例如 insmod modules_list.ko后,dis 模块中的函数,发现没有反汇编 出源码 要先加载符号表 mod -s module_list.ko,后 dis functionvm [pid] 进程虚拟地址空间help -m查看每个cpu的中断栈irq_stack_size: 16384          irq_stacks[0]: ffff800010000000          irq_stacks[1]: ffff800010008000          irq_stacks[2]: ffff800012688000          irq_stacks[3]: ffff800012690000普通的全局变量普通的全局变量的值很好查看直接p后面接函数名即可  p jiffies_64percup全局变量struct rq.clock,nr_running,cfs.h_nr_running runqueues:0,2,6  冒号后指定 CPU局部变量ATPCS规则可知函数调用时传递的参数当参数数量小于等于8个时 使用x0~x7传递大于8个时多余的参数使用栈传递 函数返回时返回值保存在x0中下面命令对父函数cpu_stopper_thread函数进行反汇编 其中/s参数表示显示汇编在C文件中的行数 disassemble /s cpu_stopper_thread哪些线程正在访问/访问过 指定的变量/内存/锁哪些线程正在访问/访问过指定的变量 再介绍最后一个实用技巧有时候我们在分析dump的时候经常会有这样的需求 已经知道某一把锁在内存中的地址我们想知道有哪些线程在等这把锁 已经知道某个全局变量的地址或名称我们想知道有哪些任务正在访问这个全局变量 已经知道某个函数名称我们想知道有哪些任务的调用栈中会调用到这个函数 这时候我们就可以使用下面命令格式来对系统中所有的任务的调用栈进行搜索了其中-t是对所有的任务进行搜索不区分任务的状态。而-T则表示只对系统中正在running的任务的调用栈进行搜索 search -t/T 变量名|变量地址|函数名|函数地址|内存地址
http://www.pierceye.com/news/315272/

相关文章:

  • idea的网站开发登录页面做网页的
  • 寻找大连网站建设wordpress换模板 seo
  • 二手房公司网站源码网站的维护步骤
  • 衡水企业网站建设公司wordpress 快速回复
  • 网站维护需要关闭网站么找哪些公司做网站
  • 阿里巴巴做轮播网站如何建设学校的微网站首页
  • 国内设计好的网站案例网店设计风格怎么写
  • 网站建设长沙创建网页需要多少钱
  • 南通电商网站建设网站背景怎么设置
  • 无锡网站托管aspnet通讯录网站开发
  • 卫计网站建设工作总结铜陵建设行业培训学校网站
  • 手机网站竞价网页界面设计遵循的原则
  • 徐州seo推广公司广州营销型网站优化
  • 小说网站首页模板安徽华力建设集团网站
  • 减肥网站如何做公司企业模板
  • 郑州网站建设搜q.479185700怎么在百度上推广自己的公司信息
  • 深圳住建设局官方网站大连在哪个省市
  • 吉林企业建站系统费用wordpress幻灯片加载很慢
  • com域名和网站小型企业网站排名前十
  • 网站内容 优化泉州网站开发公司
  • 假发外贸网站模板做图库网站需要多少钱
  • 网站建设公司 知道万维科技wordpress支持移动
  • 经典网站建设邢台网站建设策划
  • 系统数据库与建设网站网站提交入口大全
  • 网站做数据分析的意义西安网站建设kxccc
  • 免费建个人网站alexa排名搜索
  • 做的网站第二年续费多钱店铺装修模板
  • 这么自己建设网站中卫网站设计厂家
  • 公司网站制作哪家公司好广州建设执业资格注册中心网站
  • 北京所有做招聘类网站建站公司Apache Wordpress伪静态处理