linux 段:
text:已编译程序的机器代码。
.rodata:只读数据。printf中的格式串,或者开关语句的跳转表。
data:已初始化的全局变量。
bss:未初始化的全局变量。
symtab:符号表。
注意:
1、如果定义一个全局变量,int i = 0;它被初始化为0,但是,它却不是放在data段中的,而是放在bss段中的。因为编译器可能会做一些优化,如果初始化为0,则它会将它等同于未初始化的变量。这样的可能要求他会将所有未初始化的全局变量(bss段)初始化为0。——但是这个可能会和编译器有关系。
2、对于static全局变量,它在符号表中有一个属性表示他是local的,不是global。local的符号式不允许被其他的文件引用的。
3、static定义的局部变量,编译器会把它作为static全局变量来处理。它在符号表中是出现的(局部变量是不出现的)。唯一不同的是,它会把它在符号表中的名字改掉,一般会增加一个后缀:“.1788”。用这种方法来防止和其他的全局变量重名。而且也可以防止对它的调用。
4、段是有对齐的。如果定义一个char字符,会发现它有时会增加四个字节,之后定义,段大小便不再增加。
5、查看程序段的工具包括:readelf,objdump(加上-t可以查看变量属于哪个段),size(可以查看各个段的大小。)
动态查看一个进程的内存使用
1、top命令
top -d 1 -p pid [,pid ...] //设置为delay 1s,默认是delay 3s
如果想根据内存使用量进行排序,可以shift + m(Sort by memory usage)
静态查看一个进程的内存使用
1、pmap命令
pmap pid
2、ps命令
ps aux|grep process_name
3、查看/proc/process_id/文件夹下的status文件
Name: php
State: R (running)
SleepAVG: 0%
Tgid: 21574
Pid: 21574
PPid: 10005
TracerPid: 0
Uid: 1000 1000 1000 1000
Gid: 100 100 100 100
FDSize: 256
Groups: 16 100
VmPeak: 161740 kB
VmSize: 161740 kB
VmLck: 0 kB
VmHWM: 107144 kB
VmRSS: 107144 kB
VmData: 106192 kB
VmStk: 84 kB
VmExe: 5588 kB
VmLib: 7884 kB
VmPTE: 268 kB
Threads: 1
SigQ: 0/69632
SigPnd: 0000000000000000
ShdPnd: 0000000000000000
SigBlk: 0000000000000000
SigIgn: 0000000000001000
SigCgt: 00000001818040a7
CapInh: 0000000000000000
CapPrm: 0000000000000000
CapEff: 0000000000000000
Cpus_allowed: 00000000,00000000,00000000,0000000f
Mems_allowed: 1
任务虚拟地址空间的大小 VmSize
应用程序正在使用的物理内存的大小 VmRSS
您会收到 SQL Server 2005 安装程序正在运行 Windows Vista 的计算机上的系统配置检查页或 Windows Server 2008 的一个服务器核心安装上一条警告消息
症状:
请考虑以下情形。您安装 Microsoft SQL Server 2005 或 Microsoft SQL Server 2005 速成版通过高级服务正在运行下列操作系统之一的计算机上:•Windows Server 2008 操作系统
•Windows Vista 操作系统
在这种情况下您会收到下面的警告消息,SQL Server 2005 安装程序中的系统配置检查页上的 IIS 功能要求 项为:
Microsoft Internet Information Services (IIS) 没有安装,或被禁用。IIS 是所必需的某些 SQL Server 功能。 没有 IIS,某些 SQL Server 功能不会用于安装。若要安装所有 SQL Server 功能,添加或删除程序控制面板中从都安装 IIS 或启用 IIS 服务通过控制面板,如果已安装,然后再次运行 SQL Server 安装程序。依赖于 IIS 的功能是资源列表请参阅支持的版本的 SQL Server 联机丛书中的功能。
原因:
出现此问题的原因取决于 SQL Server 的不是所有 IIS 7.0 组件都安装在计算机上。下表列出了受影响的组件。
注意在表中的 文件夹 列列出了此组件驻留在其下的文件夹。在运行 IIS 7.0 安装程序时,您会遇到这些文件夹。
替代方法:
要变通解决此问题,安装 IIS 7.0 组件,但不是安装在计算机上。
注意您不能通过使用控制面板中的添加或删除程序项运行"症状"部分中列出的操作系统之一的计算机上安装 IIS 7.0。
IIS 7.0 或 IIS 7.0 组件安装在 Windows Vista 中,请访问下面的 IIS 网站:
要在 Windows Server 2008 的 Server Core 安装,安装 IIS 7.0 或 IIS 7.0 组件,请访问下面的 IIS 网站:
选中服务管理器:
然后点击添加角色服务:
选中上面提示中的缺少的部分的角色添加进来就可以了
组件 文件夹 静态内容 常见的 HTTP 功能 默认文档 常见的 HTTP 功能 HTTP 重定向 常见的 HTTP 功能 目录浏览 常见的 HTTP 功能 ASP.Net 应用程序开发 ISAPI 扩展 应用程序开发 ISAPI 筛选器 应用程序开发 Windows 身份验证 安全 IIS 配置数据库 管理工具 IIS 6 WMI 管理工具
然后点击安装就可以了。