青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

Prayer

在一般中尋求卓越
posts - 1256, comments - 190, trackbacks - 0, articles - 0
  C++博客 :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理

摘抄: core文件分析

Posted on 2008-10-29 14:58 Prayer 閱讀(635) 評(píng)論(0)  編輯 收藏 引用 所屬分類: LINUX/UNIX/AIX

內(nèi)容提要:
主要包含兩部分內(nèi)容:
1,core文件描述
2,core文件分析

說明:


一,Core 文件描述
Coredumpunix 平臺(tái)是非常容易出現(xiàn)的一種錯(cuò)誤形式,直接表現(xiàn)形式為core 文件, core 文件產(chǎn)生于當(dāng)前目錄下,
通常,象內(nèi)存地址錯(cuò)誤、非法指令、總線錯(cuò)誤等會(huì)引起coredumpcore 文件的內(nèi)容包含進(jìn)程出現(xiàn)異常時(shí)的錯(cuò)誤影
像。如果錯(cuò)誤進(jìn)程為多線程并且core 文件的大小受限于ulimit 的系統(tǒng)限制,則系統(tǒng)只將數(shù)據(jù)區(qū)中錯(cuò)誤線程的堆棧區(qū)
復(fù)制到core 文件中。
應(yīng)當(dāng)注意,從AIX 5L 版本5.1 開始core 文件的命名格式可以通過環(huán)境變量CORE_NAMING 設(shè)置,其格式為:
core.pid.ddhhmmss ,分別代表為:
pid :進(jìn)程標(biāo)示符
dd :當(dāng)前日期
hh :當(dāng)前小時(shí)
mm :當(dāng)前的分鐘
ss :當(dāng)前的秒
core 文件的缺省格式為老版本的格式,coredump 文件的內(nèi)容按照以下的順序組織:
1core 文件的頭部信息
    定義coredump 的基本信息,及其他信息的地址偏移量
2ldinfo 結(jié)構(gòu)信息
    定義loader 區(qū)的信息
3mstsave 結(jié)構(gòu)信息
    定義核心線程的狀態(tài)信息,錯(cuò)誤線程的mstsave 結(jié)構(gòu)信息直接存儲(chǔ)在core 文件的頭部區(qū),此區(qū)域只對(duì)多線程的
    程序有效,除錯(cuò)誤線程外的其他線程的mstsave 結(jié)構(gòu)信息存與此區(qū)域。
4 ) 缺省的用戶堆棧數(shù)據(jù)
    存儲(chǔ)coredump 時(shí)的用戶堆棧數(shù)據(jù)
5 ) 缺省的數(shù)據(jù)區(qū)域
    存儲(chǔ)用戶數(shù)據(jù)區(qū)域信息
6 ) 內(nèi)存映射數(shù)據(jù)
    存儲(chǔ)匿名的內(nèi)存映射數(shù)據(jù)
7vm_info 結(jié)構(gòu)信息
    存儲(chǔ)內(nèi)存映射區(qū)域的地址偏移量和大小信息
缺省情況下,用戶數(shù)據(jù)、匿名的內(nèi)存區(qū)域和vm_info 結(jié)構(gòu)信息并不包含在core 文件中,core 文件值包含當(dāng)前的進(jìn)
程堆棧、線程堆棧、線程mstsave 結(jié)構(gòu)、用戶結(jié)構(gòu)和錯(cuò)誤時(shí)的寄存器信息,這些信息足夠跟蹤錯(cuò)誤的產(chǎn)生。Core
文件的大小也可以通過setrlimit 函數(shù)設(shè)定。

二,Core 文件分析
首先分析coredump 的結(jié)構(gòu)組成,core 文件的頭信息是由結(jié)構(gòu)core_dump 結(jié)構(gòu)定義的,結(jié)構(gòu)成員定義如下:
成員 類型 描述
c_signo char 引起錯(cuò)誤的信號(hào)量
C_entries ushort Coredump 的模塊數(shù)
*c_tab Struct ld_info Core 數(shù)據(jù)的地址偏移量
成員 類型 描述
c_flag char 描述coredump 的類型,類型為:
FULL_CORECore 包含數(shù)據(jù)區(qū)域
CORE_VERSION_1 生成 core 文件的AIX 的版本
MSTS_VALID 包含mstsave 的結(jié)構(gòu)
CORE_BIGDATACore 文件包含大數(shù)據(jù)
UBLOCK_VALIDCore 文件包含u_block 結(jié)構(gòu)
USTACK_VALIDCore 文件包含用戶堆棧數(shù)據(jù)
LE_VALIDCore 文件至少包含一個(gè)模塊
CORE_TRUNCCore 文件被截短
c_stack Caddr_t 用戶堆棧的起始地址偏移量
C_size int 用戶堆棧的大小
C_mst Struct mstsave 錯(cuò)誤mst 的拷貝
C_u Struct user 用戶結(jié)構(gòu)的拷貝
C_nmsts int Mstsave 結(jié)構(gòu)的數(shù)量
C_msts Struct mstsvae * 線程的mstsave 結(jié)構(gòu)的地址偏移量
C_datasize int 數(shù)據(jù)區(qū)域的大小
C_data Caddr_t 用戶數(shù)據(jù)的地址偏移量
C_vmregions int 匿名地址映射的數(shù)量
C_vmm Struct vm_info * Vm_info 數(shù)據(jù)表的起始地址偏移量

借助于下面提供的程序可以分析core 文件的部分信息:
#include <stdio.h>
#include <sys/core.h>

void main(int argc, char *argv[])
{
FILE *corefile;
struct core_dumpx c_file;
char command[256];

if (argc != 2) {
fprintf(stderr, "Usage: %s <corefile>\n", *argv);
exit(1);
}

if ((corefile = fopen(argv[1], "r")) == NULL) {
perror(argv[1]);
exit(1);
}

fread(&c_file, sizeof(c_file), 1, corefile);
fclose(corefile);

sprintf(command, "lquerypv -h %s 6E0 64 | head -1 | awk '{print $6}'", argv[1]);

printf("Core created by: \n");

system(command);

printf("Signal number and cause of error number: %i\n", c_file.c_signo);
printf("Core file type: %i\n", c_file.c_flag);
printf("Number of core dump modules: %i\n", c_file.c_entries);
printf("Core file format number: %i\n", c_file.c_version);
printf("Thread identifier: %i\n", c_file.c_flt.th.ti_tid);
printf("Process identifier: %i\n", c_file.c_flt.th.ti_pid);
printf("Current effective priority: %i\n", c_file.c_flt.th.ti_pri);
printf("Processor Usage: %i\n", c_file.c_flt.th.ti_cpu);
printf("Processor bound to: cpu%i\n", c_file.c_flt.th.ti_cpuid);

/* if (c_file.c_flt.th.ti_cpu > 1) printf("Last Processor: cpu%i\n", c_file.c_flt.th.ti_affinity);
*/
exit(0);
}
假定以上程序的可執(zhí)行程序名稱為anacore ,按照以下步驟察看其運(yùn)行結(jié)果:
1 ) 通過下面的程序生成core 文件
      main() {
      char *testadd;

      strcpy(testadd, 搣Just a testing攠);
      }
      程序命名為core.c
2 ) 編譯程序core.c
      xlc –o pcore core.c
3 ) 運(yùn)行pcore 產(chǎn)生core 文件
4 ) 運(yùn)行anacore 察看結(jié)果
      anacore core
5 ) 結(jié)果如下 [root@F80_1#]acore core
Core created by:
|pcore...........|
Signal number and cause of error number: 11
Core file type: 114
Number of core dump modules: 0
Core file format number: 267312561
Thread identifier: 40827
Process identifier: 9520
Current effective priority: 60
Processor Usage: 0
Processor bound to: cpu-1

從上面的結(jié)果,我們可以簡(jiǎn)單的分析產(chǎn)生core 文件的應(yīng)用、信號(hào)量及進(jìn)程等信息,如果要求一
些更詳細(xì)的信息,可以借助于dbx 等調(diào)試工具進(jìn)一步分析。
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            久久久www| 美女亚洲精品| 日韩系列欧美系列| 欧美一区二区三区另类| 亚洲午夜女主播在线直播| 久久精品成人欧美大片古装| 亚洲永久网站| 欧美日本精品| 最新国产乱人伦偷精品免费网站 | 欧美成在线观看| 久久综合九色综合欧美狠狠| 国产情人节一区| 亚洲视频免费看| 亚洲一区二区三区高清| 欧美区视频在线观看| 亚洲国产天堂久久国产91| 在线日韩av片| 老司机一区二区三区| 久久婷婷国产麻豆91天堂| 国产一区二区三区在线免费观看 | 欧美韩国在线| 亚洲国产另类久久久精品极度| 久久精品人人做人人综合 | 欧美一区国产在线| 国产欧美不卡| 欧美一级视频| 巨乳诱惑日韩免费av| 一区二区三区在线观看欧美| 久久精品亚洲精品国产欧美kt∨| 久久精品男女| 亚洲国产精品久久久久| 美女主播精品视频一二三四| 欧美黄色视屏| 99在线视频精品| 国产精品videosex极品| 中文精品视频| 久久精品三级| 亚洲国产欧美日韩| 欧美高清在线视频| 亚洲视频欧美视频| 久久久www| 亚洲国产精品嫩草影院| 欧美韩日一区| 亚洲一二三四区| 美日韩精品免费观看视频| 亚洲国产美女| 欧美日韩卡一卡二| 欧美一区91| 亚洲大胆人体视频| 亚洲欧美日韩一区二区在线| 国产午夜精品视频免费不卡69堂| 久久久亚洲国产美女国产盗摄| 亚洲国产精品久久久久秋霞影院 | 亚洲免费综合| 国产午夜精品久久| 欧美大尺度在线观看| 亚洲一级黄色片| 免费人成精品欧美精品| 一区二区三区视频在线观看| 国产一区二区三区成人欧美日韩在线观看 | 亚洲免费观看视频| 久久久www成人免费毛片麻豆| 亚洲日本一区二区| 国产日韩欧美一区二区三区四区| 久久中文精品| 亚洲综合视频在线| 亚洲激情第一区| 久久精精品视频| 中文久久精品| 亚洲国产日韩欧美| 国产日韩欧美精品一区| 欧美日韩国产综合视频在线观看| 午夜欧美精品久久久久久久| 亚洲国产精品久久久久秋霞不卡 | 99re热精品| 激情视频一区| 国产精品视频免费| 欧美区二区三区| 麻豆精品91| 久久精品国产亚洲aⅴ| 亚洲小视频在线| 亚洲乱码国产乱码精品精| 久久综合色88| 性欧美video另类hd性玩具| 99国产精品久久久| 亚洲电影视频在线| 国模私拍一区二区三区| 国产欧美精品xxxx另类| 欧美日韩一区二区三区四区在线观看| 久久精品成人| 久久成人18免费观看| 亚洲在线第一页| 99在线精品观看| 亚洲娇小video精品| 欧美成人精品激情在线观看| 久久久久久一区二区| 欧美在线观看一区二区| 亚洲欧美激情四射在线日| 亚洲素人在线| 一区二区三区久久精品| 一区二区三区产品免费精品久久75| 最新国产拍偷乱拍精品| 亚洲国产成人在线| 在线日本高清免费不卡| 亚洲电影在线看| 最新日韩在线| 日韩一级精品视频在线观看| 999亚洲国产精| 日韩一区二区高清| 在线亚洲伦理| 性色av一区二区三区红粉影视| 亚洲免费中文| 欧美一区在线直播| 久久免费国产| 模特精品裸拍一区| 亚洲国产精品一区二区www| 亚洲国产精品一区二区久 | 亚洲国产精品成人精品| 亚洲激情av在线| 一区二区91| 亚洲一区二区三区在线视频| 亚洲欧美国产视频| 久久久精品一区| 欧美成人精品三级在线观看| 欧美激情精品久久久久久黑人 | 国产亚洲综合在线| 尤物九九久久国产精品的分类| 精品不卡在线| 日韩午夜激情电影| 午夜精品久久久久影视| 久久久国产成人精品| 欧美国产欧美亚洲国产日韩mv天天看完整 | 国产精品久久久久久久免费软件 | 久久国产精品久久久久久电车| 久久国产精品网站| 亚洲国产毛片完整版| 一区二区三区你懂的| 欧美影院在线| 欧美美女操人视频| 国产亚洲精品bv在线观看| 亚洲电影在线播放| 亚洲午夜影视影院在线观看| 久久久国产精品亚洲一区| 模特精品在线| 亚洲专区国产精品| 欧美激情第六页| 国产日韩一区二区三区在线播放| 亚洲电影免费在线观看| 亚洲一区二区四区| 免费视频一区| 亚洲一区成人| 欧美精品国产| 伊人伊人伊人久久| 午夜精品福利在线观看| 亚洲国产成人精品女人久久久| 午夜免费日韩视频| 欧美日韩一区不卡| 亚洲国产高清高潮精品美女| 亚洲小视频在线| 欧美激情一区二区三区高清视频| 一本色道久久综合亚洲精品按摩| 久久久久久999| 国产精品欧美久久久久无广告| 亚洲高清123| 久久九九全国免费精品观看| 99在线热播精品免费99热| 久久九九精品| 国产亚洲精品久久久久动| 亚洲视频国产视频| 亚洲国产精品久久久久秋霞蜜臀 | 久久视频在线视频| 国产精品一区二区久久久久| 一本大道久久a久久精二百| 鲁大师成人一区二区三区| 亚洲综合色自拍一区| 欧美婷婷久久| 在线亚洲国产精品网站| 最新国产精品拍自在线播放| 免费影视亚洲| 亚洲国产毛片完整版| 美女在线一区二区| 久久久精品久久久久| 国产亚洲一区精品| 久久久国产精品亚洲一区| 午夜精品久久久久久久久久久久| 国产精品jizz在线观看美国 | 99国产精品国产精品久久| 欧美黄色视屏| 欧美成人综合网站| 99re6这里只有精品| 亚洲精品久久在线| 欧美日韩一区二区高清| 国产精品99久久不卡二区| av成人激情| 国产精品超碰97尤物18| 亚洲欧美不卡| 午夜精品亚洲| 国产亚洲制服色| 欧美 日韩 国产 一区| 麻豆久久精品|