1、前言
時間對作業系統來說非常重要,從核心級到應用層,時間的表達方式及精度各部相同。linux核心裡面用乙個名為jiffes的常量來計算時間戳。應用層有time、getdaytime等函式。今天需要在應用程式獲取系統的啟動時間,百度了一下,通過sysinfo中的uptime可以計算出系統的啟動時間。
2、sysinfo結構
sysinfo結構保持了系統啟動後的資訊,主要包括啟動到現在的時間,可用記憶體空間、共享記憶體空間、程序的數目等。man sysinfo得到結果如下所示:
複製** **如下:
struct sysinfo ;
3、獲取系統啟動時間
通過sysinfo獲取系統啟動到現在的秒數,用當前時間減去這個秒數即系統的啟動時間。程式如下所示:
複製** **如下:
#include
#include
#include
#include
static int print_system_boot_time()
time(&cur_time);
if (cur_time > info.uptime)
else
ptm = gmtime(&boot_time);
printf("system jbnikqrvqboot time: %d-%-d-%d %d:%d:%d\n", ptm->tm_year + 1程式設計客棧900,
ptm->tm_mon + 1程式設計客棧, ptm-tm_mday, ptm->tm_hour, ptm->tm_min, ptm->tm_sec);
return 0;
}int main()
return 0;
}測試結果如下所:
本文標題: linux獲取系統啟動時間示例詳解
本文位址:
linux獲取系統啟動時間
1 前言 2 sysinfo結構 sysinfo結構保持了系統啟動後的資訊,主要包括啟動到現在的時間,可用記憶體空間 共享記憶體空間 程序的數目等。man sysinfo得到結果如下所示 struct sysinfo 3 獲取系統啟動時間 通過sysinfo獲取系統啟動到現在的秒數,用當前時間減去這...
linux獲取系統啟動時間
1 前言 2 sysinfo結構 sysinfo結構保持了系統啟動後的資訊,主要包括啟動到現在的時間,可用記憶體空間 共享記憶體空間 程序的數目等。man sysinfo得到結果如下所示 1 struct sysinfo 3 獲取系統啟動時間 通過sysinfo獲取系統啟動到現在的秒數,用當前時間減...
linux獲取系統啟動時間
1 前言 2 sysinfo結構 sysinfo結構保持了系統啟動後的資訊,主要包括啟動到現在的時間,可用記憶體空間 共享記憶體空間 程序的數目等。man sysinfo得到結果如下所示 1 struct sysinfo 3 獲取系統啟動時間 通過sysinfo獲取系統啟動到現在的秒數,用當前時間減...