奶头挺立呻吟高潮av全片,成人试看120秒体验区,性欧美极品v,A片高潮抽搐揉捏奶头视频

操作系統

Linux中生成Core Dump系統異常信息記錄文件處理方法介紹

時間:2024-08-17 02:36:33 操作系統 我要投稿
  • 相關推薦

Linux中生成Core Dump系統異常信息記錄文件處理方法介紹

  1 什么是 Core Dump

  Core Dump 又叫核心轉儲。在程序運行過程中發生異常時,將其內存數據保存到文件中,這個過程叫做 Core Dump。

  2 Core Dump 的作用

  在開發過程中,難免會遇到程序運行過程中異常退出的情況,這時候想要定位哪里出了問題,僅僅依靠程序自身的信息打印(日志記錄)往往是不夠的,這個時候就需要 Core Dump 文件來幫忙了。

  一個完整的 Core Dump 文件實際上相當于恢復了異常現場,利用 Core Dump 文件,可以查看到程序異常時的所有信息,變量值、棧信息、內存數據,程序異常時的運行位置(甚至記錄代碼行號)等等,定位所需要的一切信息都可以從 Core Dump文件獲取到,能夠非常有效的提高定位效率。

  3 如何生成 Core Dump

  3.1 Core Dump 文件生成開關

  Core Dump 文件的生成是由Core文件大小限制,Linux中默認的Core文件大小設置為零,也就是不生成 Core Dump 文件,可以使用ulimit -c命令來查看當前的Core文件大小限制。

  要生成 Core Dump 文件,只需要執行下面的命令設置Core文件的大小即可(其中filesize參數的單位為KByte):

  ulimit -c filesize

  如果要設置Core文件大小無限制(即把程序完整的運行內存都保存下來),則執行如下命令:

  ulimit -c unlimited

  3.2 Core Dump 文件名設置

  Core Dump 文件默認的名字為core,而且新的Core文件會把老的覆蓋,這樣我們只能看到最后一次的 Core Dump 信息,可以通過設置Core文件名稱模板,使每次生成的 Core Dump 文件區分開來。

  Core Dump 文件的命名規則定義在/proc/sys/kernel/core_pattern文件中,規則中還可以加入預設的變量來更好的區分Core文件,支持的變量列表如下:

  %% %字符 %p 進程ID(PID) %u 用戶ID(UID) %g 用戶組ID %s 觸發 Core Dump 的信號 %t 觸發 Core Dump 的時間(單位為秒,從 1970-01-01 00:00:00 開始計算) %h 主機名稱(主機名可以通過uname命令來查看) %e 程序名稱(無路徑信息) %E 程序的路徑名稱(路徑中的/會被!替代) %c Core文件的限制大小值(Linux 2.6.24版本后開始支持)

  注:Core Dump 文件名的最大長度為128字節(在 Linux 2.6.19 版本前,最大長度為64字節)。

  例如:可以通過下面的命令,生成文件名為core-程序名稱-進程ID-時間的 Core Dump 文件:

  echo "core-%e-%p-%t" > /proc/sys/kernel/core_pattern

  從 Linux 2.4 版本開始,提供了一種比較原始的Core文件名設置方式,直接設置/proc/sys/kernel/core_uses_pid文件中的值為1,生成的Core文件名中便會自動加上.PID后綴,即生成的文件名為core.PID這種形式。執行下面的命令可以設置該值:

  echo "1" > /proc/sys/kernel/core_uses_pid

  4 如何使用 Core Dump

  有了 Core Dump 文件后,可以使用GDB來加載分析,執行如下命令(假設可執行程序名稱及路徑為/home/hutaow/test_dump,生成的Core文件名為core):

  gdb /home/hutaow/test_dump -c core

  加載完成后,即可以在GDB中查看程序異常時的各種運行信息了(查看變量值、線程信息、調用棧、反匯編等等)。

【Linux中生成Core Dump系統異常信息記錄文件處理方法介紹】相關文章:

Linux系統的文件設置方法11-23

linux的文件系統03-07

關于linux系統下分割大文件的方法03-07

Linux系統下動態庫的生成介紹03-04

紅旗Linux系統配置LILO文件的方法03-03

Java編程中異常處理的方法12-16

Linux系統中sleep的使用方法07-17

Linux文件系統的幾個要點03-05

在Linux系統中創建和修改systemd單元文件教程03-01

主站蜘蛛池模板: 浮梁县| 曲水县| 安陆市| 安化县| 黄浦区| 苏州市| 合阳县| 呼伦贝尔市| 中牟县| 桐梓县| 札达县| 于田县| 桓台县| 拉孜县| 西安市| 贵德县| 渭源县| 敦煌市| 东乡族自治县| 罗定市| 甘孜县| 炉霍县| 寿光市| 贵溪市| 洮南市| 阿拉善左旗| 凌海市| 海兴县| 漾濞| 萨迦县| 武穴市| 五大连池市| 江华| 镇康县| 儋州市| 涪陵区| 原阳县| 额尔古纳市| 宣威市| 平安县| 长岭县|