Solaris
文章平均质量分 55
lw1a2
这个作者很懒,什么都没留下…
展开
-
Solaris10,更改主机名或IP时,必须创建nodename文件
Solaris10, 更改主机名或IP时,必须在/etc下创建nodename文件,否则主机名认不出来,显示为unknow原创 2007-08-12 12:44:00 · 2023 阅读 · 0 评论 -
将在mdb里执行的结果保存到文件中
例如将在mdb里执行的结果保存到1.txt中方法1):使用mdb的日志功能($>命令):>$>1.txt>::nm方法2):使用!命令:>::nm!cat>1.txt原创 2012-03-24 09:10:15 · 964 阅读 · 0 评论 -
DTrace简介
基本语法probe/ optional predicates /{ optional action statements;}其中:1) probe:探针,即所要探查的对象。2) optional predicates :DTrace脚本没有if语句,使用/ optional predicates /来替代。3) optio原创 2012-03-24 09:04:07 · 3386 阅读 · 0 评论 -
Solaris Performance and Tools 笔记(未完待续)
分析方法1. Monitoring. Using a system to record statistics over time. This data may reveallong term patterns that may be missed when using the regular stat tools.Monitoring may involve using SunMC, SNM原创 2012-03-24 09:06:14 · 1633 阅读 · 0 评论 -
Solaris10 GCC bus error 一例
Solaris10 GCC bus error 一例环境:Solaris10 SPARCGCC 4.4.2背景:原先代码使用CC编译的,是32位程序。有-O2优化。现在迁移到GCC下,并改为64位程序。调试阶段未加-O2优化。问题:程序运行某些用例,在最后退出时,会报bus error。随机性很大。堆栈是某些全局的string(或map)原创 2011-11-02 15:46:04 · 1775 阅读 · 0 评论 -
[Errno 6] No such device or address: '/dev/tty'
调用流程:CruiseControl-->Ant Project-->Python Pexpect-->ssh发现有的时候会报[Errno 6] No such device or address: '/dev/tty'。至今没找到原因,不研究了,准备用Ant Sshexec代替。原创 2011-01-14 13:13:00 · 7156 阅读 · 0 评论 -
关于在32位系统下使用VMware安装64位系统的问题
最开始是在XP(32位)下安装的Solaris10(32位)和SUSE11(64位),当时的CPU是闪龙2500+,VMware的版本是7.0.0-203739后来换了WIN7(32位),VMware重装了,但是Solaris10和SUSE11的硬盘文件没换,仍然可以用。后来把CPU换成“速龙64 3400+”了,重装完WIN7和VMware后,之前的Solaris10和SUSE11的硬盘文件没法用了,告诉我CPU不支持64位,试过很多次都不行。奇怪的是Solaris10明明是32位的,也不原创 2010-10-16 11:38:00 · 2264 阅读 · 0 评论 -
一种定位内存泄露的方法(Solaris)
问题:客户测试的镜像环境出现一个3.8G的core文件,查看堆栈发现是new失败了导致进程abort。因为是32位应用程序,应该是所有的heap空间都被用光了,导致new失败。推测有几种可能:1) 内存泄露导致内存耗尽。2) 有些静态对象处理的不合理,导致一直在增大。3) 有死循环,导致一直在做类似list::insert这样的操作,最终耗尽内存。定位思路:如果是第二种原创 2010-05-15 12:04:00 · 3067 阅读 · 5 评论 -
使用MDB查看变量的值(2)
使用MDB查看变量的值(2)LW1A2@163.COM 本节描述使用MDB查看core文件中STL变量的知识 一、目的在《使用MDB查看变量的值(1)》中,我们 探讨了查看变量值的一般方法,但是对于复杂的对象,一点一点的查看内存太麻烦,MDB提供一种机制,可以自己实现插件来解析内存中的变量。 二、原理在《Solaris 模块调试器指南(819–7055–10)》原创 2010-01-17 16:33:00 · 3016 阅读 · 3 评论 -
关于.命令
.命令与export命令一样,都是使变量传递到子程序中,只不过.命令跟的是文件名,export命令跟的是变量名。使用方法:. ./.profileexport PATH=$PATH:/opt另:source命令等同于.命令原创 2009-11-08 18:43:00 · 739 阅读 · 0 评论 -
使用MDB查看变量的值(1)
使用MDB查看变量的值(1)LW1A2@163.COM 本节描述使用MDB查看core文件中变量的基本知识基本概念: 一般程序发生coredump,80%的可能是由于参数的值不对造成的(其他可能是堆栈溢出、多线程等问题造成的)。对于可以复现的问题,一般拿到函数堆栈,通过走读代码基本上就可以定位。对于无法复现的问题,大部分情况需要通过查看变量的值来定位。(注:网上很多原创 2009-10-06 18:32:00 · 3011 阅读 · 2 评论 -
Solaris下使用MDB查看全局变量的值
假设要查看全局变量m_FmSvcMsgQueue的值1) 得到m_FmSvcMsgQueue mangle后的值:nm libfm.so|c++filt|grep m_FmSvcMsgQueue[8323] | 5003644| 32|OBJT |GLOB |0 |19 |m_FmSvcMsgQueuenm libfm.so|grep 8323原创 2012-03-24 09:08:45 · 2071 阅读 · 0 评论